前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >gitlab远古版本8.5.8备份&还原&升级

gitlab远古版本8.5.8备份&还原&升级

原创
作者头像
对你无可奈何
修改2023-03-09 12:21:32
1.2K0
修改2023-03-09 12:21:32
举报
文章被收录于专栏:运维专栏

背景:

gitlab 8.5.8版本.参照:https://github.com/sameersbn/docker-gitlab.git.太多年了也没有升级,现在准备备份还原到一个新的服务器然后升级一下。gitlab服务器开始是docker-compose搭建的后面迁移到了kubernetes上(记得当时还是1.14),后面kubernetes 版本持续升级到了1.21。基础环境如下:

代码语言:txt
复制
kubectl get nodes
kubectl get pods -n gitlab

外链图片转存中...(img-3i4prQtR-1678333347024)

外链图片转存中...(img-8oHZOTIX-1678333347025)

image 镜像的版本如下:

代码语言:txt
复制
kubectl get deployment -n gitlab -o yaml|grep image:

外链图片转存中...(img-rba3rIG7-1678333347025)

升级的过程参考了:升级公司的 GitLab,基本版本是8.5.8 -8.12.13-9.5.10-10.8.7-11.1.4(8的小版本先升级到稳定的8.12,然后到8的最高版本,然后每个大版本进行升级)

注:我这里的gitlab的基础镜像并不是sameersbn/gitlab 当时有汉化twang2218/gitlab-ce-zh镜像直接使用了汉化的镜像,直接使用了twang2218/gitlab-ce-zh的镜像为例!存储直接挂载了nfs存储未使用pv,pvc方式,如下:

image.png
image.png

Kubernetes下备份gitlab

进入gitlab容器执行备份命令:

登陆一台CVM节点,当然了前提是可以exec进入gitlab容器控制台。也可以其他可视化dashboard进入,我这里直接在k8s-master-01节点操作了VM-4-34-rockylinux为操作还原升级节点,这里也备注强调一下:

代码语言:txt
复制
kubectl exec -it gitlab-77d7878db-j8kqh bash -n gitlab
gitlab-rake gitlab:backup:create
xgLOzzPxvF.png
xgLOzzPxvF.png
CobWGEpysj.png
CobWGEpysj.png

确认一下数据的备份目录:

代码语言:txt
复制
cat /etc/gitlab/gitlab.rb |grep back

默认的备份目录为:/var/opt/gitlab/backups目录

image.png
image.png

进入/var/opt/gitlab/backups得到生成的备份文件如下

image.png
image.png

很漫长得到一个20多G的压缩包!

COPY备份文件到新的存储路径

20g的文件copy 或者mv很慢很慢,尤其是在copy腾讯云cfs文件存储上面的文件。当时还找存储的小伙伴问过,当时他们推荐了使用rclone传输,体验了是很快!

安装rclone

安装rclone,参照:https://cloud.tencent.com/document/product/582/83114(还是在kubernetes 控制节点操作的,当然了其实可以在任何一个局域网内节点安装,然后挂载10.0.0.24 的nfs)

代码语言:txt
复制
wget https://downloads.rclone.org/v1.53.4/rclone-v1.53.4-linux-amd64.zip --no-check-certificate
unzip rclone-v1.53.4-linux-amd64.zip
chmod 0755 ./rclone-*/rclone
cp ./rclone-*/rclone /usr/bin/
rm -rf ./rclone-*

挂载nfs:

源nfs 10.0.0.24 目的nfs 10.0.4.134 在k8s控制节点挂载。文件夹路径可以自定义。

代码语言:txt
复制
sudo mount -t nfs -o vers=4.0,noresvport 10.0.0.24:/ /nfs5
sudo mount -t nfs -o vers=4.0,noresvport 10.0.4.134:/ /nfs10

外链图片转存中...(img-2SyA4mTA-1678333347028)

rclone同步文件到新文件系统

rclone sync同步文件到目的nfs(也可以是其他文件系统)

代码语言:txt
复制
rclone sync  /nfs5/data/github/gitlab/backups/1678096354_gitlab_backup.tar /nfs10/data/github/gitlab/backups/ -Pvv --transfers 32 --checkers 64 --copy-links --local-no-check-updated

外链图片转存中...(img-cI75IBYI-1678333347028)

4分钟左右同步完成还是很快的,毕竟有20多G文件!

注:以上操作在Kubernetes控制节点上操作

还原gitlab到新环境

一台新的rocky服务器,主机名:VM-4-34-rockylinux

安装docker docker-compose

安装docker docker-compose:

代码语言:txt
复制
yum update -y ###先update一下
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum -y install docker-ce
sudo service docker start
sudo docker -v
image.png
image.png

注:当然了可以配置一下镜像加速:

image.png
image.png

配置镜像加速后记得systemctl reload-daemon systemctl restart docker.

docker-compose的安装:

代码语言:txt
复制
docker_compose_version=v2.16.0 && curl -L "https://github.com/docker/compose/releases/download/${docker_compose_version}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose && ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
image.png
image.png

安装nfs客户端,将10.0.4.134挂载到本地

安装一下nfs客户端(文件准备同步过来,挂载nfs的!)

代码语言:txt
复制
yum install nfs*
sudo mount -t nfs -o vers=4.0,noresvport 10.0.4.134:/ /data

/data目录下创建github目录(与原来nfs实例保证目录结构一致),github目录下创建gitlab postgresql redis目录(gitlab目录已经存在了其实,上面reclone同步的时候会自动创建目录):

代码语言:txt
复制
[root@VM-4-34-rockylinux github]# pwd
/data/data/github
[root@VM-4-34-rockylinux github]# mkdir gitlab postgresql redis

注意自己挂载的目录路径以及文件夹目录名.

docker-compose启动gitlab相关应用

VM-4-34-rockylinux 主机操作

首先确认文件以及rclone到指定路径

image.png
image.png

登陆github仓库查找对应版本docker-compose.yml文件放在/data/data/github目录下:

image.png
image.png

注意:我这里拿得https://github.com/sameersbn/docker-gitlab/blob/v8.9.4/docker-compose.yml的yml文件

修改docker-compose.yml如下:

代码语言:txt
复制
version: '2'

services:
  redis:
    restart: always
    image: sameersbn/redis:latest
    command:
    - --loglevel warning
    volumes:
    - /data/data/github/redis:/var/lib/redis:Z

  postgresql:
    restart: always
    image: sameersbn/postgresql:9.4-24
    volumes:
    - /data/data/github/postgresql:/var/lib/postgresql:Z
    environment:
    - DB_USER=gitlab
    - DB_PASS=passw0rd
    - DB_NAME=gitlabhq_production
    - DB_EXTENSION=pg_trgm

  gitlab:
    restart: always
    image: twang2218/gitlab-ce-zh:8.5.8
    depends_on:
    - redis
    - postgresql
    ports:
    - "80:80"
    - "10022:22"
    volumes:
    - /data/data/github/gitlab:/home/git/data:Z
    environment:
    - DEBUG=false

    - DB_ADAPTER=postgresql
    - DB_HOST=postgresql
    - DB_PORT=5432
    - DB_USER=gitlab
    - DB_PASS=password
    - DB_NAME=gitlabhq_production

    - REDIS_HOST=redis
    - REDIS_PORT=6379

    - TZ=Asia/Shanghai
    - GITLAB_TIMEZONE=Beijing

    - GITLAB_HTTPS=false
    - SSL_SELF_SIGNED=false

    - GITLAB_HOST=gitlab.zhangpeng.com
    - GITLAB_PORT=80
    - GITLAB_SSH_PORT=10022
    - GITLAB_RELATIVE_URL_ROOT=
    - GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alphanumeric-string

    - GITLAB_ROOT_PASSWORD=
    - GITLAB_ROOT_EMAIL=

    - GITLAB_NOTIFY_ON_BROKEN_BUILDS=true
    - GITLAB_NOTIFY_PUSHER=false

    - GITLAB_EMAIL=notifications@example.com
    - GITLAB_EMAIL_REPLY_TO=noreply@example.com
    - GITLAB_INCOMING_EMAIL_ADDRESS=reply@example.com

    - GITLAB_BACKUP_SCHEDULE=daily
    - GITLAB_BACKUP_TIME=01:00

    - SMTP_ENABLED=false
    - SMTP_DOMAIN=www.example.com
    - SMTP_HOST=smtp.gmail.com
    - SMTP_PORT=587
    - SMTP_USER=mailer@example.com
    - SMTP_PASS=password
    - SMTP_STARTTLS=true
    - SMTP_AUTHENTICATION=login

    - IMAP_ENABLED=false
    - IMAP_HOST=imap.gmail.com
    - IMAP_PORT=993
    - IMAP_USER=mailer@example.com
    - IMAP_PASS=password
    - IMAP_SSL=true
    - IMAP_STARTTLS=false

    - OAUTH_ENABLED=false
    - OAUTH_AUTO_SIGN_IN_WITH_PROVIDER=
    - OAUTH_ALLOW_SSO=
    - OAUTH_BLOCK_AUTO_CREATED_USERS=true
    - OAUTH_AUTO_LINK_LDAP_USER=false
    - OAUTH_AUTO_LINK_SAML_USER=false
    - OAUTH_EXTERNAL_PROVIDERS=

    - OAUTH_CAS3_LABEL=cas3
    - OAUTH_CAS3_SERVER=
    - OAUTH_CAS3_DISABLE_SSL_VERIFICATION=false
    - OAUTH_CAS3_LOGIN_URL=/cas/login
    - OAUTH_CAS3_VALIDATE_URL=/cas/p3/serviceValidate
    - OAUTH_CAS3_LOGOUT_URL=/cas/logout

    - OAUTH_GOOGLE_API_KEY=
    - OAUTH_GOOGLE_APP_SECRET=
    - OAUTH_GOOGLE_RESTRICT_DOMAIN=

    - OAUTH_FACEBOOK_API_KEY=
    - OAUTH_FACEBOOK_APP_SECRET=

    - OAUTH_TWITTER_API_KEY=
    - OAUTH_TWITTER_APP_SECRET=

    - OAUTH_GITHUB_API_KEY=
    - OAUTH_GITHUB_APP_SECRET=
    - OAUTH_GITHUB_URL=
    - OAUTH_GITHUB_VERIFY_SSL=

    - OAUTH_GITLAB_API_KEY=
    - OAUTH_GITLAB_APP_SECRET=

    - OAUTH_BITBUCKET_API_KEY=
    - OAUTH_BITBUCKET_APP_SECRET=

    - OAUTH_SAML_ASSERTION_CONSUMER_SERVICE_URL=
    - OAUTH_SAML_IDP_CERT_FINGERPRINT=
    - OAUTH_SAML_IDP_SSO_TARGET_URL=
    - OAUTH_SAML_ISSUER=
    - OAUTH_SAML_LABEL="Our SAML Provider"
    - OAUTH_SAML_NAME_IDENTIFIER_FORMAT=urn:oasis:names:tc:SAML:2.0:nameid-format:transient
    - OAUTH_SAML_GROUPS_ATTRIBUTE=
    - OAUTH_SAML_EXTERNAL_GROUPS=
    - OAUTH_SAML_ATTRIBUTE_STATEMENTS_EMAIL=
    - OAUTH_SAML_ATTRIBUTE_STATEMENTS_NAME=
    - OAUTH_SAML_ATTRIBUTE_STATEMENTS_FIRST_NAME=
    - OAUTH_SAML_ATTRIBUTE_STATEMENTS_LAST_NAME=

    - OAUTH_CROWD_SERVER_URL=
    - OAUTH_CROWD_APP_NAME=
    - OAUTH_CROWD_APP_PASSWORD=

    - OAUTH_AUTH0_CLIENT_ID=
    - OAUTH_AUTH0_CLIENT_SECRET=
    - OAUTH_AUTH0_DOMAIN=

    - OAUTH_AZURE_API_KEY=
    - OAUTH_AZURE_API_SECRET=
    - OAUTH_AZURE_TENANT_ID=

只修改了几个镜像的tag与kubernetes搭建的版本一致(redis版本其实没有太大要求),还有ssh的对外映射端口(否则会与主机的22端口冲突,数据库密码也直接拿来kubernetes集群中的变量了.......):

外链图片转存中...(img-FZMftzTd-1678333347030)

为什么不用8.5.8的docker-compose.yaml文件呢?

https://github.com/sameersbn/docker-gitlab/blob/8.5.8/docker-compose.yml

image.png
image.png

docker-compose的版本 貌似是V1的起不来服务.....这里就默认用v2的yaml了

代码语言:txt
复制
cd /data/data/github
docker-compose up -d 
image.png
image.png

等待容器running......

restore 还原gitlab仓库

进入gitlab容器,进入backups目录,执行restore命令还原仓库:

代码语言:txt
复制
docker exec -it github-gitlab-1 bash
cd /var/opt/gitlab/backups/
gitlab-rake gitlab:backup:restore BACKUP:1678096354

外链图片转存中...(img-Kr7gCCEi-1678333347031)

外链图片转存中...(img-zVCADnM9-1678333347031)

注:BACKUP后跟备份文件_前面的时间辍格式.除了1678096354_gitlab_backup.tar压缩包外其他文件是执行过程中解压产生的文件。这是在CVM主机挂载目录看到的!

中间会有

代码语言:txt
复制
This will rebuild an authorized_keys file.
You will lose any data stored in authorized_keys file

yes 同意?等待还原完成

image.png
image.png

访问gitlab仓库验证

ip or host 绑定域名。或是直接绑定域名访问gitlab:

image.png
image.png

外链图片转存中...(img-xvsxZjJ6-1678333347032)

注:https的操作可以创建负载均衡绑定端口的方式or参照gitlab 15.8 on rocky 8中证书配置设置一下?不知道古老能不能适用,升级高版本了再去尝试!验证了一下仓库 and 用户权限都没有什么问题还原到一段落了,下面尝试一下升级!

其他问题:

项目搜索这里,翻页貌似会404......我尝试了线上的github应用也这样就忽略了.......

image.png
image.png

另外ssh-key 的clone没有成功,尝试了http的clone没有问题,先忽略!

gitlab升级之路

正常的更新流程看网上都是说

  1. 升级至当前大版本(major version)的最新小版本(latest minor version)
  2. 升级至目标大版本(target major version)的首个小版本(first minor version)
  3. 继续升级至更新的版本

根据 gitlab upgrading guide 的说法,版本低于 8.11.Z 时,先更新到 8.12.0 是比较稳妥的方案。第一部先升级到8.12吧!

注:我这里的twang2218/gitlab-ce-zh镜像很多都与官方的不太一样,还是继续使用twang2218/gitlab-ce-zh的镜像进行升级了!

外链图片转存中...(img-YyueKN9u-1678333347032)

额外强调一下gitlab与postgresql版本的对应关系:

升级gitlab的同时,postgresql的版本也应该同时进行升级的,详细的版本对应关系可参考以下链接:

https://repository.prace-ri.eu/git/help/administration/package_information/postgresql_versions.md

image.png
image.png

准备在升级gitlab9的时候升级一下postgresql 。8版本就使用默认的9.4.24了!

8.5.8 -8.12.13

dockerhub仓库看了一眼:https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags?page=1&name=8.12,8.12的版本tag就顺手选择了8.12.13:

image.png
image.png

修改镜像tag

尝试修改docker-compose.yml中gitlab image tag 为twang2218/gitlab-ce-zh:8.12.13

外链图片转存中...(img-wQHkVHIg-1678333347033)

外链图片转存中...(img-hp83WBI3-1678333347034)

代码语言:txt
复制
docker-compose down
docker-compose up -d
image.png
image.png

secret文件问题

代码语言:txt
复制
[root@VM-4-34-rockylinux github]# docker ps
CONTAINER ID   IMAGE                            COMMAND                  CREATED              STATUS              PORTS                                                                                 NAMES
dbb3e922065e   twang2218/gitlab-ce-zh:8.12.13   "/assets/wrapper"        About a minute ago   Up 1 second         0.0.0.0:80->80/tcp, :::80->80/tcp, 443/tcp, 0.0.0.0:10022->22/tcp, :::10022->22/tcp   github-gitlab-1
bbce8d9fcc7f   sameersbn/redis:latest           "/sbin/entrypoint.sh…"   About a minute ago   Up About a minute   6379/tcp                                                                              github-redis-1
da59ea5a2780   sameersbn/postgresql:9.4-24      "/sbin/entrypoint.sh"    About a minute ago   Up About a minute   5432/tcp                                                                              github-postgresql-1
代码语言:txt
复制
docker logs -f github-gitlab-1

查看日志出现如下报错:

image.png
image.png

尝试删除secret文件:

代码语言:txt
复制
cd /data/data/github/gitlab/gitlab-rails/etc
rm -rf secret
image.png
image.png

gitlab 参数env缺失

综上,删除secret后,继续重启gitlab服务:

代码语言:txt
复制
docker-compose down
docker-compose up -d
docker logs -f github-gitlab-1
image.png
image.png

恩 docker-compose.yml少了两个参数,参照gitlab on kubernetes的配置:

image.png
image.png
代码语言:txt
复制
    - GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string
    - GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-strin

其实kubernetes gitllab中是有的,8.9.4的docker-compose.yml中没有这两个参数,添加一下:

image.png
image.png

repositories目录权限

注:截图很多目录会是/data/data/github1/gitlab/ 是第二次操作后截图,为了熟练练手,图中路径忽略!

尝试继续重启gitlab服务:

代码语言:txt
复制
cd /data/data/github/
docker-compose down
docker-compose up -d
image.png
image.png

查看gitlab服务日志:

代码语言:txt
复制
docker logs -f github1-gitlab-1

出现如下错误,按照日志内容,基本确定是文件夹权限问题!

外链图片转存中...(img-Kw1i9zQP-1678333347036)

修改文件夹目录权限:

代码语言:txt
复制
chmod 2770 -R gitlab/git-data/repositories
image.png
image.png

请注意文件目录路径,操作命令文件相对路径在/data/data/github/目录

重启gitlab服务:

代码语言:txt
复制
docker-compose down
docker-compose up -d

外链图片转存中...(img-kqO7rIIh-1678333347037)

查看日志,等待服务正常启动!

代码语言:txt
复制
docker logs -f github-gitlab-1
image.png
image.png

登陆web并验证gitlab服务

用原有gitlab账户登陆此gitlab服务器

外链图片转存中...(img-JkaZ6qaf-1678333347037)

image.png
image.png

点击管理区域查看gitlab版本,确认版本已经升级到8.12.13版本。

image.png
image.png

第一步升级算是基本成功!

注:docker-compose 命令都是在/data/data/github目录下执行(放置docker-compose.yml文件目录下)。注意文件目录的切换!

8.12.13-8.17.7

确认并修改docker-compose.yml文件镜像tag

dockerhub查看8版本最后镜像tag为8.17,https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags?page=1&name=8.17。这里就选择升级到8.17.7版本

image.png
image.png

修改docker-compose.yml文件中镜像tag:

image.png
image.png
image.png
image.png

重启gitlab服务

代码语言:txt
复制
docker-compose down
docker-compose up -d
docker logs -f github-gitlab-1
image.png
image.png

外链图片转存中...(img-820woXWy-1678333347038)

web访问并验证版本升级成功

用原有gitlab账户登陆此gitlab服务器,控制台查看gitlab 服务器版本已经升级到指定8.17.7版本

外链图片转存中...(img-bVQcK6dP-1678333347039)

外链图片转存中...(img-rEB76Ib4-1678333347039)

8.17.7-9.5.10

修改gitlab postgresql镜像版本

参照postgresql 与gitlab对应关系.....gitlab升级到9版本,postgresql也的升级到9.6版本以上:

image.png
image.png

参考:https://github.com/sameersbn/docker-gitlab/tree/9.5.5

image.png
image.png

还是使用sameersbn 的postgresql镜像,修改tag

https://hub.docker.com/r/sameersbn/postgresql/tags?page=1&name=9.6

外链图片转存中...(img-HmFF8HWX-1678333347039)

准备修改postgresql镜像tag为9.6-3 gitlab镜像tag9.5.10参照

https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags?page=1&name=9.5

image.png
image.png
image.png
image.png

服务的启动与postgresql版本问题:

代码语言:txt
复制
docker-compose down
docker-compose up -d
docker ps
image.png
image.png
代码语言:txt
复制
docker logs -f github1-postgresql-1
image.png
image.png

恩 postgresql版本升级会有问题!sameersbn/postgresql中 基础镜像中9.4的版本仓库应该没有了(毕竟太老了)怎么破?流氓一下,找到最新的postgresql的版本:

image.png
image.png

修改docker-compose.yml postgresql镜像为sameersbn/postgresql:12-20200524

image.png
image.png
代码语言:txt
复制
docker-compose down
docker-compose up -d 
docker logs -f github-postgresql-1

外链图片转存中...(img-bbTzSK6N-1678333347041)

等待postgresql升级完成:

image.png
image.png
代码语言:txt
复制
docker ps
image.png
image.png

查看gitlab容器日志:

代码语言:txt
复制
docker logs -f github-gitlab-1

外链图片转存中...(img-PjVzqlwh-1678333347041)

貌似会有点问题无法登陆。集体重启一遍docker-compose服务:

代码语言:txt
复制
docker-compose down
docker-compose up -d 
docker logs -f github-gitlab-1
image.png
image.png

等待gitlab 容器正常运行:

image.png
image.png

外链图片转存中...(img-FwXa9v8L-1678333347042)

继续登陆验证web登陆仓库

用原有gitlab账户登陆此gitlab服务器,控制台查看gitlab 服务器版本已经升级到指定9.5.10版本:

image.png
image.png
image.png
image.png
image.png
image.png

另外关于postgresql的升级后文件目录的变化:

外链图片转存中...(img-DaNKsQIJ-1678333347043)

9.5.10-10.8.7

继续修改gitlab镜像tag

继续升级gitlab到10大版本.到dockerhub参考一下镜像仓库版本:

https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags?page=1&name=10.8

image.png
image.png

修改gitlab镜像tag为10.8.7

外链图片转存中...(img-pcZJW4Sv-1678333347043)

image.png
image.png

重启gitlab相关服务

代码语言:txt
复制
docker-compose down
docker-compose up -d
docker ps -a
image.png
image.png
代码语言:txt
复制
docker logs -f github-gitlab-1

外链图片转存中...(img-XF8gadcL-1678333347044)

等待的有些漫长

image.png
image.png

web登陆gitlab仓库

image.png
image.png

点击管理区域验证版本10.8.7:

外链图片转存中...(img-Izdc7tvY-1678333347044)

image.png
image.png

10.8.7-11.1.4

修改gitlab镜像tag

继续找到11大版本的最高版本11.1.4

https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags?page=1&name=11.1

image.png
image.png

外链图片转存中...(img-8CeJ7Qsx-1678333347045)

image.png
image.png

重启升级gitlab服务

代码语言:txt
复制
docker-compose down
docker-compose up -d
docker ps -a
image.png
image.png

查看日志,等待服务升级:

代码语言:txt
复制
docker logs -f github1-gitlab-1

外链图片转存中...(img-CQZraTrX-1678333347046)

web登陆gitlab控制台验证

image.png
image.png

点击管理区域:

image.png
image.png

确认版本升级到11.1.4:

外链图片转存中...(img-M4kxmPSB-1678333347046)

就先升级到这里后续用官方镜像or sameersbn镜像继续完成升级到更高版本!

过程中其他出现过的问题:

postgresql配置的时候第一次出现过如下报错:

image.png
image.png

参照csdn的一篇文章:https://blog.csdn.net/weixin_42758299/article/details/117958407,修改了pg_hba.conf

image.png
image.png

外链图片转存中...(img-mJcE5mMD-1678333347047)

然后重启了postgresql正常启动了:

image.png
image.png
image.png
image.png

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景:
  • Kubernetes下备份gitlab
    • 进入gitlab容器执行备份命令:
      • COPY备份文件到新的存储路径
        • 安装rclone
        • 挂载nfs:
        • rclone同步文件到新文件系统
    • 还原gitlab到新环境
      • 安装docker docker-compose
        • 安装nfs客户端,将10.0.4.134挂载到本地
          • docker-compose启动gitlab相关应用
            • restore 还原gitlab仓库
              • 访问gitlab仓库验证
                • 其他问题:
                • gitlab升级之路
                  • 额外强调一下gitlab与postgresql版本的对应关系:
                    • 8.5.8 -8.12.13
                      • 修改镜像tag
                      • secret文件问题
                      • gitlab 参数env缺失
                      • repositories目录权限
                      • 登陆web并验证gitlab服务
                    • 8.12.13-8.17.7
                      • 确认并修改docker-compose.yml文件镜像tag
                      • 重启gitlab服务
                      • web访问并验证版本升级成功
                    • 8.17.7-9.5.10
                      • 修改gitlab postgresql镜像版本
                      • 服务的启动与postgresql版本问题:
                      • 继续登陆验证web登陆仓库
                    • 9.5.10-10.8.7
                      • 继续修改gitlab镜像tag
                      • 重启gitlab相关服务
                      • web登陆gitlab仓库
                    • 10.8.7-11.1.4
                      • 修改gitlab镜像tag
                      • 重启升级gitlab服务
                      • web登陆gitlab控制台验证
                  • 过程中其他出现过的问题:
                  相关产品与服务
                  容器镜像服务
                  容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档