docker volume使用、gitlab 数据备份

volume 使用

  1. 创建 volume
docker volume create gitlab-logs
docker volume create gitlab-data
  1. 使用 volume
# volume 挂载目录
docker run -itd -p 9980:80 -p 9922:22 --restart always --privileged=true --name gitlab -v E:\gitlab\etc:/etc/gitlab -v gitlab-logs:/var/log/gitlab -v gitlab-data:/var/opt/gitlab gitlab-ce-backup
# -v E:\gitlab\etc:/etc/gitlab 通过 bind 方式挂载宿主机指定数据目录
# 以交互模式运行容器,并使用-v 匿名挂载容器数据卷
docker run -it -v 容器内目录/文件的绝对路径[:rw/ro] -p 主机端口:容器端口 --name=容器名称 镜像ID/镜像名称[:版本号]
# 以后台方式运行容器,并使用-v 匿名挂载容器数据卷 (推荐)
docker run -d -v 容器内目录/文件的绝对路径[:rw/ro] -p 主机端口:容器端口 --name=容器名称 镜像ID/镜像名称[:版本号]
# 注意:如果出现Docker挂载宿主机目录显示cannot open directory .:Permission denied 解决办法:在挂载目录后面 多加一个--privileged=true参数即可

gitlab 配置与数据备份

# 修改配置文件
vi /etc/gitlab/gitlab.rb
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
# 重新加载配置
gitlab-ctl reconfigure
# 开启
gitlab-ctl restart
  1. 备份
# 备份数据
gitlab-rake gitlab:backup:create
# 容器备份数据移动到宿主机
docker cp 862512f78fe8:/var/opt/gitlab/backups/1658916034_2022_07_27_15.2.0_gitlab_backup.tar /root
docker cp 862512f78fe8:/etc/gitlab/gitlab.rb /root
docker cp 862512f78fe8:/etc/gitlab/gitlab-secrets.json /root
  1. 执行恢复
# 宿主机备份文件移动到容器
docker cp E:\gitlab\backup\1658916034_2022_07_27_15.2.0_gitlab_backup.tar e294c2ef4dd1:/home/backups
docker cp E:\gitlab\backup\gitlab-secrets.json e294c2ef4dd1:/home/backups
docker cp E:\gitlab\backup\gitlab.rb e294c2ef4dd1:/home/backups
# 新容器执行数据恢复
gitlab-rake gitlab:backup:restore BACKUP=1658916034_2022_07_27_15.2.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值