docker方式部署的gitlab跨版本迁移升级
之前代码服务器用的 beginor/gitlab-ce:11.3.0-ce.0 的版本,而当前时间已经到12.4.1了。
gitlab 官方已经开始支持多语言, 而且也提供了 docker 镜像, beginor/gitlab-ce 的镜像作者已经不再维护,也建议大家切换到官方镜像。
所以打算整理下迁移升级的步骤。
1.首先连接上docker beginor/gitlab-ce:11.3.0-ce.0的容器
docker exec -i -t gitlab /bin/bash
在gitlab正常运行的情况下,输入命令 gitlab-rake gitlab:backup:create 备份gitlab,完成后生成在 /var/opt/gitlab/backups/文件夹下 1572606813_2019_11_01_11.3.0_gitlab_backup.tar。
完成备份后,需要将文件复制出来留作备份。
① gitlab-ctl stop 停止gitlab全部服务
② exit 退出容器执行
③ docker stop gitlab 停止容器
2.我用的是新服务器,我把以前外挂目录全都删除掉了。只保留下了.tar的备份文件
docker pull gitlab/gitlab-ce:11.3.0-ce.0 拉取官方的相同版本进行数据恢复操作
docker run \
--privileged=true \
--hostname 192.168.0.2 \
--detach \
--publish 80:80 \
--publish 443:443 \
--publish 22:22 \
--name gitlab \
--restart unless-stopped \
--volume /home/inxworld/gitlab/config:/etc/gitlab \
--volume /home/inxworld/gitlab/log:/var/log/gitlab \
--volume /home/inxworld/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:11.3.0-ce.0
docker exec -i -t gitlab /bin/bash 进入dokcer 容器 gitlab
gitlab-rake gitlab:backup:restore BACKUP=1572606813_2019_11_01_11.3.0 恢复备份
完成后访问WEB检查了下没有什么问题。
3. 跨大版本升级
官方的升级路线指南 https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations (反正我只是偶尔成功打开过一次,其他时间都是无法访问)
我的升级路径为:
gitlab/gitlab-ce:11.3.0-ce.0 (当前的版本)-> gitlab/gitlab-ce:11.3.4-ce.0 -> gitlab/gitlab-ce:11.11.8-ce.0 -> gitlab/gitlab-ce:12.0.12-ce.0 -> gitlab/gitlab-ce:12.4.1-ce.0
先把需要的拉取回来
docker pull gitlab/gitlab-ce:11.3.4-ce.0
docker pull gitlab/gitlab-ce:11.11.8-ce.0
docker pull gitlab/gitlab-ce:12.0.12-ce.0
docker pull gitlab/gitlab-ce:12.4.1-ce.0
基本过程都是
1. docker exec -i -t gitlab /bin/bash 进入dokcer 容器 gitlab
2. gitlab-ctl stop:停止全部服务
3. exit退出容器
4. docker stop gitlab 停止dokcer 容器 gitlab ,再删除docker rm gitlab
5.
docker run \
--privileged=true \
--hostname 192.168.0.2 \
--detach \
--publish 80:80 \
--publish 443:443 \
--publish 22:22 \
--name gitlab \
--restart unless-stopped \
--volume /home/inxworld/gitlab/config:/etc/gitlab \
--volume /home/inxworld/gitlab/log:/var/log/gitlab \
--volume /home/inxworld/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:11.3.0-ce.0 ------------------------------------------------------------------注意修改这个位置
6.漫长等待升级完成以后,登陆网站看看基本功能是否正常。
7.循环1-6步骤,直到最新版本
我按这个升级的路线,走完以后,大概看了下看了下完成后的gitlab,翻译的不是很全!别的倒没遇到什么问题!
docker方式部署的gitlab跨版本迁移升级的更多相关文章
- Docker 方式部署的应用的版本更新
前言 公司使用 Docker-Compose 的方式部署 Jenkins/Gitlab/Sonar/Confluence/Apollo/Harbor/ELK/MySQL 等一系列开发工具/数据库. 而 ...
- Docker 方式部署 Solo 博客系统总结
此篇为Docker部署方式,另有Tomcat部署方式,请参考文章<Tomcat 方式部署 Solo 博客系统总结> 最近搭建了一个博客系统,作为自己的主页,方便记录一些平时所见所闻 ...
- docker方式部署禅道
一.概述 使用docker方式部署禅道简单,快速,不容易出错.比起编译安装要方便很多. 二.部署 环境说明 操作系统:centos 7.6 ip地址:10.212.82.65 docker版本:19. ...
- docker方式部署elk日志搜索平台
Docker部署ELKF操作文档 前提介绍 1.之前搭建elk+f+k使用原生系统软件安装方式,由于docker镜像日趋成熟,docker官网和elastic官网都有相关镜像和各自安装文档可供参考,各 ...
- 使用TTS实现Oracle跨版本迁移
TTS实现数据库迁移,具有速度快.支持跨平台和跨版本等优点.本文记录了用TTS从10g single迁移到11g RAC的过程. Source数据库版本和字符集设置: SQL> select * ...
- 使用Docker方式部署Gitlab,Gitlab-Runner并使用Gitlab提供的CI/CD功能自动化构建SpringBoot项目
1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runner,地址: ...
- spring-boot dubbo项目使用docker方式部署
项目结构 本项目采用maven构建,有三个模块,分别是pms-interfaces, pms-services, pms-portal. 模块 描述 pms-interfaces 接口层,只能存放实体 ...
- linux下使用docker方式部署ftp服务器
linux环境下部署vsftpd比较繁琐,可以直接使用docker官方仓库中的pure-ftpd镜像来部署ftp服务器. 下载镜像 docker pull stilliard/pure-ftpd:ha ...
- 基于阿里云 ecs 使用 docker 方式部署 showDoc
官网文档:https://www.showdoc.cc/help?page_id=65610 (建议先看下这个) 首先说明一下,我 ecs 镜像是 CentOS 7.6 64位 1. 首先在 服务器上 ...
- ubuntu docker方式部署docker registry v2
生成自己签名的证书 生成签名的过程需要根据提示输入一些参数,需要注意的时Common Name的时候需要输入一个自己需要的域名,如果时内部域名记得访问的时候需要修改hosts. mkdir /data ...
随机推荐
- C++杂乱
基本内置类型 类型 关键字 布尔型 bool 字符型 char 整型 int 浮点型 float 双浮点型 double 无类型 void 宽字符型 wchar_t endl是换行符 cout < ...
- drf从入门到飞升仙界 02
restful规范 # restful是一种定义web API接口的设计风格,适用于前后端分离的应用模式中 # 关于restful的10个规范 -1.数据的安全保障,通常使用https协议(http+ ...
- laravel qq第三方登录
QQ互联官网 首先申请成为开发者获取到后面需要的 client_id redirect_uri client_secret 文档资料/SDK及资源下载/SDK下载/PHP SDK 下载下来修改文件修改 ...
- Ubuntu tmux使用教程
sudo apt-get install tmux 安装tmux tmux new -s session_name 新开一个会话 tmux a -t session_name 查看指定会话 tmux ...
- 查看linux机器上的cpu个数
1. 查看 cpu 的物理核数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 查看每个物理CPU中core的个数( ...
- NIO基本介绍
同步和异步,同步指的是应用程序会直接参与IO读写操作,用阻塞或者长轮询的方式来获取数据.异步指的是IO交给操作系统,完成IO读写后通知程序,程序直接拿走数据. BIO:同步阻塞式IO,服务器实现模式为 ...
- jquery.min.js:2 Uncaught SyntaxError: Unexpected identifier
错误描述:样式没加载出错,还没发起action请求,action有断点,后端无报错. 错误原因:找了好久,知道是url请求路径错误,搞了几次不对.重新对比url发现是路径拼接错误.注意单引号和双引号. ...
- python基础篇 13-模块的导入 安装第三方模块
一.模块 一个python文件就是一个模块 标准模块(内置模块) 第三方模块 需要自己安装的 自己写的 需要导入的 import 一个模块的实质: 实际上就是把一个py文件从头到尾执行了一遍,main ...
- IDEA-mybatis逆向工程使用
首先我们需要安装mybatis逆向工程插件mybatis Generator: 然后在pom.xml文件中添加逆向工程插件: <!--mybatis逆向工程插件--> <plugin ...
- Leetcode209
209. Minimum Size Subarray Sum i , s , l = 0, 0, 0 for j in range(len(nums)): ...