1.安装docker
-
更新软件信息
sudo apt-get update
-
安装docker
curl -sSL https://get.daocloud.io/docker | sudo sh
-
进入容器
sudo docker exec -it 775c7c9ee1e1 /bin/bash
2.安装与配置postgresql
-
下载image
sudo docker pull postgres:latest
-
创建postgres对应的docker volume
sudo docker volume create my_pg_vol
-
安装postgresql
sudo docker run -d --name pg_server -e POSTGRES_PASSWORD=password -p 54321:5432 -v my_pg_vol:/var/lib/postgresql/data postgres:latest
-
登陆postgresql
psql -U postgres -h 192.168.100.172 -p 54321
-
创建gogs 对应的数据库
create database gogs;
3.安装gogs
-
下载image
sudo docker pull gogs/gogs:latest
-
创建gogs对应的docker volume
sudo docker volume create my_gogs_vol
-
安装gogs
sudo docker run -d --name=gogs_server -p 10022:22 -p 10080:3000 -v my_gogs_vol:/data gogs/gogs
4.备份
-
备份postgresql 数据库
sudo docker run --rm --volumes-from=pg_server -v $(pwd):/backup alpine:latest /bin/sh -c 'cd /var/lib/postgresql && tar cvf /backup/postgres1.tar ./data'
-
备份gogs
sudo docker run --rm --volumes-from=pg_server -v $(pwd):/backup alpine:latest /bin/sh -c 'cd /var/lib/postgresql && tar cvf /backup/postgres1.tar ./data'
5.恢复
-
恢复postgres数据库
docker run --name=dbdata-new --volumes-from dbdata -v $(pwd):/backup ubuntu:14.04 /bin/sh -c 'cd /var/lib/postgresql/data && tar xvf /backup/backup.tar'
恢复gogs