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、配置文件

见附件

相关文章
|
7天前
|
Kubernetes Java Docker
使用Kubernetes和Docker部署Java微服务
使用Kubernetes和Docker部署Java微服务
|
1天前
|
消息中间件 数据可视化 RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
13 4
|
4天前
|
Nacos 数据中心 Docker
Docker 部署 Nacos 集群
Docker 部署 Nacos 集群
|
6天前
|
持续交付 开发工具 git
阿里云云效产品使用问题之在云效代码域中gitlab使用docker安装的,迁移时遇到“获取企业信息失败”,是什么原因
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
12天前
|
测试技术 Linux 网络安全
【Docker项目实战】使用Docker部署RSS阅读器yarr
【6月更文挑战第22天】使用Docker部署RSS阅读器yarr
23 3
|
13天前
|
Docker 容器
如何使用Docker部署WPS Office服务并实现无公网IP远程处理文档表格(二)
使用Docker部署的WPS Office服务可以通过内网穿透工具Cpolar实现远程访问。首先,创建一个名为“wps office”的隧道,选择HTTP协议和3000端口,分配免费的随机域名,并指定中国地区。然后,通过Cpolar的管理界面获取HTTP公网地址,用以远程访问WPS Office。由于随机域名会变化,可以升级Cpolar套餐并保留一个二级子域名,确保长期稳定的远程访问。配置子域名后,更新隧道设置,完成固定公网地址的绑定,从而实现随时随地通过固定地址访问WPS Office。
|
6天前
|
消息中间件 监控 RocketMQ
Docker Compose 一键快速部署 RocketMQ
Docker Compose 一键快速部署 RocketMQ
16 0
|
7天前
|
运维 Serverless 文件存储
函数计算产品使用问题之在利用Docker镜像部署应用时,容器内的应用如何能访问函数计算配置的NAS挂载
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
7天前
|
存储 Serverless 对象存储
函数计算产品使用问题之项目打包为docker镜像,该如何部署上去
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
7天前
|
关系型数据库 MySQL Nacos
使用 Docker 部署 Nacos 并配置 MySQL 数据源
使用 Docker 部署 Nacos 并配置 MySQL 数据源
21 0