docker内网部署gitlab步骤及gitblit迁移gitlab踩坑gitlab备份nas

1.部署情况

工具链名称gitlab
版本GitLab Community Edition 10.6.4
部署方式容器部署/虚拟机部署
最佳CPU4c
最佳内存8g
最佳磁盘100g
虚拟机系统CentOS 7.4
涉及插件
备注

2.部署步骤

1、将gitlab docker镜像gitlab.tar拷贝到服务器中并加载

在这里插入图片描述

docker load -i gitlab.tar
(此处使用的docker镜像和gitlab都为本地资源包,大概45M和1.4G)

2、运行镜像

docker run --name gitlab -p443:443 -p80:80 -p 2222:22 --restart always -v /opt/gitlab/config:/etc/gitlab -v /opt/gitlab/logs:/var/log/gitlab -v /opt/gitlab/data:/var/opt/gitlab -d cb7f154f4459
备注:主机挂载gitlab容器工作目录自行替换配置

备注:默认初始化设置root密码

3、配置gitlab

按上面的方式启动容器成功,但在gitlab上创建项目生成的URL访问地址,作为gitlab服务器,我们需要一个固定的URL访问地址,所以需要配置gitlab.rb(按照启动-v配置是在宿主机/opt/gitlab/config/gitlab.rb)

gitlab.rb修改一:[注意和-p 设置80映射端口一致]
在这里插入图片描述

gitlab.rb修改二:
在这里插入图片描述

Gitlab.rb修改三:[注意和-p 设置22映射端口一致]
在这里插入图片描述

重启gitlab容器

gitlab-ctl reconfigure
gitlab-ctl restart
docker restart 容器ID或容器名

gitlab-rake gitlab:ldap:check
http协议
ssh协议

踩坑:

1.部署时候要求git用VPN链接且只能连接到10443端口,
需将第一步docker run --name gitlab -p443:443 -p80:80 中的80端口修改为docker run --name gitlab -p443:443 -p10443:10443,同时修改gitlab配置文件才生效的。
2.内网liniux服务器端口防火墙默认开启的,需关闭掉,不然还是访问不了,有的时候关闭了也访问不了,需开启防火墙端口允许访问权限。

附gitlab、docker、防火墙使用到的命令

gitlab用到的命令

重载配置文件: gitlab-ctl reconfigure
重启gitlab:gitlab-ctl restart
关闭:gitlab-ctl stop
开启:gitlab-ctl start
查看状态:gitlab-ctl status
编辑gitlab配置文件: vim /etc/gitlab/gitlab.rb
备注:需使用docker进去容器后才能使用该命令,使用完毕后:exit 退出后才能使用docker命令

docker:

docker restart w容器ID或容器名
docker stop
进入容器:docker exec -it gitlab1 /bin/bash
退出容器:exit
docker启动命令,docker重启命令,docker关闭命令

编辑gitlab配置文件: vim /etc/gitlab/gitlab.rb

防火墙

firewall-cmd --list-all
5、查询、开放、关闭端口
#查询端口是否开放
firewall-cmd --query-port=8080/tcp
#开放80端口
firewall-cmd --permanent --add-port=80/tcp
#移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
查看firewall的状态
firewall-cmd --state

开启、重启、关闭、firewalld.service服务

#开启 #重启 #关闭
service firewalld start
service firewalld restart
service firewalld stop

gitblit 迁移gitlab 命令

先用一台电脑将所有仓库clone下来:
然后进入项目.git目录下执行下面命令:

pwd
project_path=$(dirname "$PWD")
project_name="${project_path##*/}"
echo $project_name
git push --mirror http://10.1.42.160:10443/AplicationDevelop/$project_name.git

会自动将项目push 到gitlab中

gitlab备份NAS

挂载Nas
mount -t nfs -o nolock (nas路径) /opt/gitlab/data/backups
mount -t nfs -o tcp (nas路径) /opt/gitlab/data/backups
取消挂载
umount /opt/gitlab/data/backups

查看磁盘情况是否挂载上
df -h

基于docker上gitlab命令执行
docker exec gitlab gitlab-backup create

  1. gitlab备份
    gitlab-rake gitlab:backup:create
    liniux定时任务
    crontab -e

  2. 自动定时备份gitlab数据,使用命令crontab -e,添加定时任务
    crontab -e

  3. 根据自己部门的配置时间进行对应修改
    //本部门白天都在提交数据,改成凌晨进行备份处理
    0 0 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

  4. 重启crontab
    systemctl restart crond

  5. 本地配置自动清理备份数据,通过修改gitlab自己的配置实现
    vim /etc/gitlab/gitlab.rb

  6. 将配置文件中backup_keep_time的注释取消掉
    //备份保留7天(7360024=604800)
    gitlab_rails[‘backup_keep_time’] = 604800

  7. 重新加载配置文件
    gitlab-ctl reconfigure

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值