当前位置:   article > 正文

docker方式安装gitlab_docker安装gitlab

docker安装gitlab

一:docker 方式安装gitlab

用docker来安装比较方便简单,包括版本升级也会变得更简单。

1、拉取gitlab镜像
gitlab-ce表示的是社区免费版本

docker pull gitlab/gitlab-ce:latest
  • 1

2、创建映射文件

mkdir -p /data/docker/gitlab/etc
mkdir -p /data/docker/gitlab/log
mkdir -p /data/docker/gitlab/data

  • 1
  • 2
  • 3
  • 4

etc映射保存配置文件,log 存储日志,data存储数据文件

3、运行gitlab容器

docker run \
    --detach \
    --privileged=true \
    --hostname 125.74.48.123 \
    --publish 443:443 --publish 8080:8080 --publish 5000:22 \
    --name mygitlab \
    --restart unless-stopped \
    --volume /data/docker/gitlab/etc:/etc/gitlab \
    --volume /data/docker/gitlab/log:/var/log/gitlab \
    --volume /data/docker/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ce:latest
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • hostname : 安装服务的ip
  • publish 443:443 https的端口,左边是宿主机对外端口,右边是容器内端口
  • publish 8080:8080 http访问的端口。左边是宿主机对外端口,右边是容器内端口
  • publish 5000:22 ssh方式下载对应的端口,左边是宿主机对外端口,右边是容器内端口
    注意,要用http方式连接,publish 8080:8080 前后两个端口需要一样。

容器启动后,还需要做配置调整

二、gitlab相关配置

1、配置容器中/etc/gitlab/gitlab.rb的配置文件

因为我们已经把容器的/etc目录映射到了本机的/data/docker/gitlab/etc 这个目录,我们打开
/data/docker/gitlab/etc//gitlab/gitlab.rb 这个文件就可以修改
修改的内容如下:

external_url 'http://125.74.48.123'
#ssh连接的端口
gitlab_rails['gitlab_shell_ssh_port'] = 5000
#http 访问的端口
nginx['listen_port'] = 8080
#备份文件保留的时长,单位是秒
gitlab_rails['backup_keep_time'] = 604800
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

修改配置后重启容器

访问http://125.74.48.123:8080/users/sign_in 就可以打开页面了
初始账户: root 密码:5iveL!fe,进入就会让你修改密码
在这里插入图片描述

2、/var/opt/gitlab/gitlab-rails/etc/gitlab.yml 文件配置

当时我已经创建了项目,在项目详情页复制了项目地址,一直下载不下来,发现详情页显示的没有带端口号,实际克隆的时候需要端口号的,如:http://125.74.48.123:8080/root/test_project.git .
这个是要我们要/var/opt/gitlab/gitlab-rails/etc/gitlab.yml的端口
首先进入容器:

docker exec -it gitlab的容器id /bin/bash
  • 1
vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
  • 1

将文件中的port改成8080

host: localhost
port: 8080
https: false

  • 1
  • 2
  • 3
  • 4

在容器中执行:

gitlab-ctl restart

  • 1
  • 2

注意这里的命令是restart不是 reconfigure(根据配置文件/etc/gitlab/gitlab.rb 重新生成配置) ,否则还会恢复原来的配置。只要执行了gitlab-ctl reconfigure,gitlab.yml中的端口配置就会被还原。
所以如果你重启了容器之后,那这里的端口就又需要改一遍。
重启后退出容器
●先按,ctrl+p
●再按,ctrl+q

三、做定时备份

docker方式安装的执行备份的命令:

docker exec mygitlab gitlab-backup create     #mygitlab是容器名称
  • 1

添加定时任务:
crontab -e 在文本中添加下面内容:

0 23 1 * *  docker exec mygitlab gitlab-backup create
  • 1

比如我这个是每个月1号的23点开始备份,这个多久备份一次根据自己的需求来设置。

四、还原备份

1、进入到备份目录:/data/docker/gitlab/data/backups
备份发文如下:
在这里插入图片描述
执行备份命令:

gitlab-rake gitlab:backup:restore BACKUP=1685631631_2023_06_01_14.10.4
  • 1

注意这里不要带_gitlab_backup.tar后缀,还原的时候版本需要是一致的

五、版本升级

版本升级是有路线的,要按照对应的版本升级,查看网站 https://docs.gitlab.com/ee/update/#upgrade-paths
在这里插入图片描述
下载到对应的版本镜像,比如我现在的是14.0.12 我要升级到14.3.6
1、下载14.3.6的镜像

docker pull gitlab/gitlab-ce:14.3.6-ce.0
  • 1

2、将现在的运行的容器停止

docker stop  gitlab的容器id
  • 1

3、删除现在的容器

docker rm gitlab的容器id
  • 1

4、重新运行14.3.6镜像的容器

docker run \
    --detach \
    --privileged=true \
    --hostname 125.74.48.123 \
    --publish 443:443 --publish 8080:8080 --publish 5000:22 \
    --name mygitlab \
    --restart unless-stopped \
    --volume /data/docker/gitlab/etc:/etc/gitlab \
    --volume /data/docker/gitlab/log:/var/log/gitlab \
    --volume /data/docker/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ce:14.3.6-ce.0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

5、容器启动后验证登录是否正常。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/419449
推荐阅读
相关标签
  

闽ICP备14008679号