docker部署gitlab-ce以及gitlab的备份与恢复

简介: 1、使用docker-compose的方式 docker-compose.yml version: '3.1' services: gitlab-ce: image: registry.

1、使用docker-compose的方式

docker-compose.yml


version: '3.1'

services:
  gitlab-ce:
    image: registry.cn-hangzhou.aliyuncs.com/qfz9527/gitlab-ce-zh:11.1
    container_name: gitlab-ce
    ports:
      - 80:80
      - 443:443
      - 222:22
    volumes:
      - /root/gitlab-ce/home/data:/var/opt/gitlab
      - /root/gitlab-ce/home/logs:/var/log/gitlab
      - /root/gitlab-ce/home/config:/etc/gitlab
    restart: always
    cap_add:
      - ALL
    environment:
      GITLAB_OMNIBUS_CONFIG: |
#配置此参数,可以解决在创建项目时,gitlab以容器ID为域名的问题
        external_url 'http://192.168.31.109'
        gitlab_rails['gitlab_shell_ssh_port'] = 222

2、启动容器

docker-compose up -d -f ./docker-compose.yml

3、访问gitlab

http://192.168.31.109
会提示输入密码,和注册用户,按照要求注册即可

4、创建组、项目

image
image

5、备份docker

docker-ce:容器名称

docker exec -t gitlab-ce gitlab-rake gitlab:backup:create CRON=1

6、测试恢复

使用docker-compose stop -f ./docker-compose.yml停止gitlab-ce
将备份文件拷贝到其他地方删除如下文件夹data、logs、config目录下的所有文件

  - /root/gitlab-ce/home/data:/var/opt/gitlab
  - /root/gitlab-ce/home/logs:/var/log/gitlab
  - /root/gitlab-ce/home/config:/etc/gitlab

使用docker-compose -f ./docker-compose.yml up -d 启动docker

恢复操作

cp 1564063737_2019_07_25_11.1.4_gitlab_backup.tar /root/gitlab-ce/home/data/backups/
chmod 777 /root/gitlab-ce/home/data/backups/1564063737_2019_07_25_11.1.4_gitlab_backup.tar 
#恢复gitlab
docker exec -it gitlab-ce  gitlab-rake gitlab:backup:restore

gitlab_rails['manage_backup_path'] = true

备份路径

gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"

备份文件权限

gitlab_rails['backup_archive_permissions'] = 0644

备份保留时间 604800 = 7天

gitlab_rails['backup_keep_time'] = 604800

添加备份后的docker-compose.yml


version: '3.1'

services:
  gitlab-ce:
    image: registry.cn-hangzhou.aliyuncs.com/qfz9527/gitlab-ce-zh:11.1
    container_name: gitlab-ce
    ports:
      - 80:80
      - 443:443
      - 222:22
    volumes:
      - /root/gitlab-ce/home/data:/var/opt/gitlab
      - /root/gitlab-ce/home/logs:/var/log/gitlab
      - /root/gitlab-ce/home/config:/etc/gitlab
    restart: always
    cap_add:
      - ALL
    environment:
      GITLAB_OMNIBUS_CONFIG: |
#配置此参数,可以解决在创建项目时,gitlab以容器ID为域名的问题
        external_url 'http://192.168.31.109'
        gitlab_rails['gitlab_shell_ssh_port'] = 222

        gitlab_rails['manage_backup_path'] = true
# 备份路径
        gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
# 备份文件权限
        gitlab_rails['backup_archive_permissions'] = 0644
# 备份保留时间 604800 = 7天
        gitlab_rails['backup_keep_time'] = 604800

7、配置文件

见附件

相关文章
|
23天前
|
存储 测试技术 Linux
【Docker项目实战】使用Docker部署bender个人仪表板
【4月更文挑战第2天】使用Docker部署bender个人仪表板
33 1
|
1月前
|
存储 机器学习/深度学习 中间件
快速上手 Elasticsearch:Docker Compose 部署详解
本文介绍了如何使用Docker Compose快速搭建Elasticsearch学习环境。Elasticsearch是一款用于实时搜索和分析的分布式中间件,适用于多种场景,如搜索、日志分析、机器学习等。首先,创建docker网络,拉取最新版8.12.2镜像。接着,编写docker-compose.yml文件,配置单节点集群,设置端口映射、内存限制及数据卷挂载。然后,创建并配置数据卷目录,允许远程访问和跨域。最后,启动服务并验证,通过浏览器访问确认服务运行正常。本文为初学者提供了一个简便的Elasticsearch部署方法。
171 4
快速上手 Elasticsearch:Docker Compose 部署详解
|
24天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
99 0
|
1天前
|
运维 Linux 虚拟化
Docker详解(三)——Docker安装与部署
Docker详解(三)——Docker安装与部署
26 4
|
2天前
|
测试技术 Linux Docker
【好玩的经典游戏】Docker部署FC-web游戏模拟器
【好玩的经典游戏】Docker部署FC-web游戏模拟器
24 1
|
3天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
35 1
|
6天前
|
存储 测试技术 文件存储
【Docker项目实战】使用Docker部署Sun-Panel导航面板
【4月更文挑战第19天】使用Docker部署Sun-Panel导航面板
57 7
|
9天前
|
测试技术 Linux 网络安全
【好玩的开源项目】使用Docker部署SyncTV视频同步和共享平台
【4月更文挑战第16天】使用Docker部署SyncTV视频同步和共享平台
49 1
|
13天前
|
测试技术 Linux 数据安全/隐私保护
【Docker项目实战】使用Docker部署Seatsurfing预订座位系统
【4月更文挑战第12天】使用Docker部署Seatsurfing预订座位系统
38 3
|
13天前
无缝构建与部署:GitLab CI/CD首秀的实战攻略
无缝构建与部署:GitLab CI/CD首秀的实战攻略
25 0
无缝构建与部署:GitLab CI/CD首秀的实战攻略