Linux迁移gitlab容器

Linux迁移gitlab容器并配置

迁移gitlab容器本文分两部分,第一步在新服务器上安装相同版本的gitlab容器,可以在确定gitlab版本之后直接在docker上拉取,我这里直接从原服务器上将镜像打包加载到新服务器上。第二步从原服务器上操作备份文件,将备份文件在新服务器上备份恢复。具体配置如下:

1、安装gitlab容器

1.1 从原服务器上将gitlab镜像打包

docker save 1eb39cd825fa > gitlab-ee.tar

1.2 新服务器将tar包加载为镜像

docker load -i ./gitlab-ee.tar

1.3 查看加载的镜像

docker images

1.4 启动docker容器

我这里按原来的容器的配置启动,可根据自己需要配置,若原容器的gitlab.rb文件里有配置,则同样在启动新容器后做配置

docker compose -f docker-compose.yml up -d
#docker-compose.yml
version: '3.6'  name: gitlab
services:  web:  image: 'my_ubuntu_container'restart: always  hostname: ''environment:  GITLAB_OMNIBUS_CONFIG: |external_url 'https://xxxxxx'  gitlab_rails['gitlab_shell_ssh_port'] = xxxx  ports:  - '48081:8081'  - '2222:22'  volumes:  - '/opt/gitlab/config:/etc/gitlab'  - '/opt/gitlab/logs:/var/log/gitlab'  - '/opt/gitlab/data:/var/opt/gitlab'shm_size: '256m'
2、配置容器备份恢复

2.1 在原服务器上备份文件

# 014cc12bf4ae为运行的容器id
docker exec -it 014cc12bf4ae gitlab-backup create

2.2 将备份文件发送到新服务器

scp ./1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar root@xx.xx.xx.xx:/tmp

2.3 将备份文件放在备份目录 /var/opt/gitlab/backups下

cd /var/opt/gitlab/backups
mv /tmp/1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar ./
#给备份文件授权
chmod 777 1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar

2.4 恢复前需要先停一些服务

#进入到容器里
docker exec -it 382 bash
#查看容器内运行的模块
gitlab-ctl status
#unicorn、sidekiq为数据连接相关服务,若存在则停止
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
#停止应用服务器puma
gitlab-ctl stop puma

2.5 在容器内部执行备份命令

#老版本直接恢复,新版本需要把文件的后缀删除到版本标识前
gitlab-rake gitlab:backup:restore BACKUP=1732785650_2024_11_28_15.5.4-ee

2.5 重启刚才停止的服务

gitlab-ctl start xxx
#或者重启所有模块
gitlab-ctl restart

至此迁移服务完成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888393.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3.建立本地仓库及常用命令

1.建立本地仓库 要使用Git对我们的代码进行版本控制,首先需要获得本地仓库 1)在电脑的任意位置创建一个空目录,作为我们的本地Git仓库 2)进入这个目录,右键点击Git Bash 窗口 3)执行命令git init 4) 如果创…

Narya.ai正在寻找iOS工程师!#Mixlab内推

如果你对AI技术和iOS开发充满热情,这里有一个绝佳的机会加入一家专注于AI应用创新的初创公司。Narya.ai正在招聘iOS工程师,帮助他们开发下一代效率工具,旨在提升用户的日常生活效率与幸福感。 关于Narya.ai: 专注于AI应用层创新&a…

AI开发:生成式对抗网络入门 模型训练和图像生成 -Python 机器学习

阶段1:GAN是个啥? 生成式对抗网络(Generative Adversarial Networks, GAN),名字听着就有点“对抗”的意思,没错!它其实是两个神经网络互相斗智斗勇的游戏: 生成器(Gene…

网络安全攻击和防范措施

常见的有四种网络安全攻击方式. 第一种是XSS跨站脚本攻击,往网页中插入恶意脚本代码以攻击用户. 防范措施有三种. 第一种是输入过滤,对用户的所有输入数据进行检测,过滤掉可能导致脚本的字符. 第二种是输出编码,使用工具对用户输入进行编码,使其中可能含有的HTML脚本变成普通…

Redis服务配置文件 redis.conf 更新修改配置参数说明

场景: 在安装redis服务中,默认的配置项通常不能实际使用,需要修改一些配置参数 修改配置参数 1、拿到 redis.cnf 文件,此文件通常在 redis 项目源码的第一级目录下 2、修改配置内容,主要修改项如下 protect…

成功解决logs is not a directory [Op:CreateSummaryFileWriter] name

成功解决logs is not a directory [Op:CreateSummaryFileWriter] name 目录 解决问题 解决思路 解决方法 1、确保日志目录存在 2、权限问题 3、日志路径配置问题 解决问题 tensorflow.python.framework.errors_impl.FailedPreconditionError: {{function_node __wrapped…

数据集增强:提升深度学习模型泛化能力的关键技术

在深度学习中,数据是模型性能的基石。大规模、高质量的数据集通常能显著提高模型的泛化能力,帮助模型在真实场景中做出更准确的预测。然而,在很多实际应用中,数据收集困难、昂贵或者受限,尤其是当数据集相对较小或标注…

039集——渐变色之:CAD中画彩虹()(CAD—C#二次开发入门)

(来左边儿 跟我一起画个龙,在你右边儿 画一道彩虹 ~~~~~~~~~~~ ) 效果如下: 以下展示部分颜色源码: namespace AcTools {public class Class1{public Wform.Timer timer;//定时器需建在类下面public s…

第1章:CSS简介 --[CSS零基础入门]

1. 什么是CSS CSS(层叠样式表,Cascading Style Sheets)是一种用于描述HTML或XML(包括各种XML方言如SVG、XHTML等)文档表现的样式语言。CSS的主要目的是将网页的内容与它的表现形式分离,从而使得开发者能够…

Android 中绘制带箭头的线

在 Android 中绘制带箭头的线,可以使用 Canvas 和 Paint 类。以下是一个示例,展示了如何在自定义 View 中绘制一条带有箭头的线。 自定义 View 实现 你可以创建一个自定义的 View,并覆盖其 onDraw() 方法来实现这个功能。 java public clas…

面试题整理(二)

芯冰乐知识星球入口:芯冰乐

JS +CSS @keyframes fadeInUp 来定义载入动画

JSCSS 更完美展现 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>跳动加载指示器</title>&l…

【SpringBoot】整合篇

1、log4j2 第一步&#xff0c;导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions><!-- 去掉springboot默认配置 --> <exclusion> <…

C++知识整理day3类与对象(下)——赋值运算符重载、取地址重载、列表初始化、友元、匿名对象、static

文章目录 1.赋值运算符重载1.1 运算符重载1.2 赋值运算符重载 2.取地址重载2.1 const成员函数2.2 取地址运算符重载 3.类与对象的补充3.1 再探构造函数---初始化列表3.2 类型转换3.3 static成员3.4 友元3.5 内部类3.6 匿名对象3.7 对象拷贝时的编译器优化 1.赋值运算符重载 赋…

web vue 滑动选择 n宫格选中 九宫格选中

页面动态布局经常性要交给客户来操作&#xff0c;他们按时他们的习惯在同一个屏幕内显示若干个子视图&#xff0c;尤其是在医学影像领域对于影像的同屏显示目视对比显的更为重要。 来看看如下的用户体验&#xff1a; 设计为最多支持5行6列页面展示后&#xff0c;右侧的布局则动…

解决idea使用maven打包时无法将本地lib库文件和resource目录中的资源文件打包进jar文件的问题!!!

一、问题复现 1&#xff09;项目结构如下 我们看到项目中手动添加了本地lib资源&#xff0c;同时bootspring的配置文件和mapper文件也放在了resouces目录中。 2&#xff09;上述结构的项目在使用maven打包时&#xff0c;最终生成的jar文件中将不包含lib库文件&#xff0c;甚…

React进阶面试题(四)

React 的 reconciliation&#xff08;协调&#xff09;算法 Reconciliation是React的diff算法&#xff0c;用于比较更新前后的虚拟DOM树差异&#xff0c;从而使用最小的代价将原始DOM按照新的状态、属性进行更新。其目的是找出两棵树的差异&#xff0c;原生方式直接比较复杂度…

【短视频矩阵系统==saas技术开发】

在数字媒体领域&#xff0c;短视频的崛起已不可忽视。对于商业实体而言&#xff0c;掌握如何通过短视频平台有效吸引潜在客户并提高转化率&#xff0c;已成为一项关键课题。本文旨在深入剖析短视频矩阵系统的构成与作用机制&#xff0c;以期为企业提供一套系统化的策略&#xf…

JAVA设计模式,动态代理模式

动态代理&#xff08;Dynamic Proxy&#xff09;是Java中一种非常有用的设计模式。它允许在运行时创建一个实现了一组给定接口的新类。这种模式主要用于当需要为某个对象提供一个代理以控制对该对象的访问时。通过这种方式&#xff0c;可以添加额外的功能&#xff0c;如事务管理…

C_字符串的一些函数

1.字符串输入函数 scanf("%s",数组名)&#xff1b; gets(数组名)&#xff1b; 区别&#xff1a; scanf(“%s”,数组名); 把空格识别为输入结束 #include <stdio.h>int main() {char a[10];printf("输入&#xff1a;");scanf("%s",a)…