设为首页收藏本站
天天打卡

 找回密码
 立即注册
搜索
查看: 66|回复: 11

docker 部署 gitlab-ce 16.9.1的详细过程

[复制链接]

2

主题

41

回帖

127

积分

注册会员

积分
127
发表于 2024-4-20 08:18:34 | 显示全部楼层 |阅读模式
目录

  1. gitlab/gitlab-ce(需要科学上网)
复制代码
拉取 gitlab-ce 镜像
  1. docker pull gitlab/gitlab-ce:16.9.1-ce.0
复制代码
  1. 查看镜像是不是有 [code]Volumes
复制代码
的配置[/code]
  1. docker inspect gitlab/gitlab-ce:16.9.1-ce.0 --format='{{.Config.Volumes}}'
复制代码
  1. 获取到类似如下的内容,说明有 [code]Volumes
复制代码
的配置[/code]
  1. map[/etc/gitlab:{} /var/log/gitlab:{} /var/opt/gitlab:{}]
复制代码
创建 gitlab-ce 持久化目录
  1. mkdir -p /data/gitlab-ce-root
  2. cat << EOF > /data/gitlab-ce-root/gitlab-ce.env
  3. GITLAB_BASE_DIR='/data/gitlab-ce-root'
  4. GITLAB_CONFIG_DIR="\${GITLAB_BASE_DIR}/conf"
  5. GITLAB_DATA_DIR="\${GITLAB_BASE_DIR}/data"
  6. GITLAB_LOG_DIR="\${GITLAB_BASE_DIR}/logs"
  7. EOF
复制代码
  1. 创建目录
复制代码
  1. source /data/gitlab-ce-root/gitlab-ce.env
  2. mkdir -p ${GITLAB_CONFIG_DIR} ${GITLAB_DATA_DIR} ${GITLAB_LOG_DIR}
复制代码
启停脚本配置


  • 通过
    1. start
    复制代码
    启动容器
  • 通过
    1. stop
    复制代码
    停止容器
  • 通过
    1. restart
    复制代码
    重启容器
  • 通过
    1. exec
    复制代码
    进入容器
  1. #!/usr/bin/env bash
  2. source /data/gitlab-ce-root/gitlab-ce.env
  3. GITLAB_PORT='8888'
  4. GITLAB_MEM=4G
  5. GITLAB_NAME='gitlab-ce'
  6. GITLAB_IMAGE='gitlab/gitlab-ce:16.9.1-ce.0'
  7. function useAge () {
  8.   echo "usage: [ bash ${0} start ] to start gitlab-ce"
  9.   echo "usage: [ bash ${0} stop ] to stop gitlab-ce"
  10.   echo "usage: [ bash ${0} restart ] to restart gitlab-ce"
  11.   echo "usage: [ bash ${0} exec ] to exec gitlab-ce"
  12.   exit 1
  13. }
  14. function optStart () {
  15. DOCKER_PS=$(docker ps -a | awk "/${GITLAB_NAME}/ {print \$NF}")
  16. if [[ "${DOCKER_PS}"x == "${GITLAB_NAME}"x ]];then
  17.   DOCKER_STATUS=$(docker ps -a --format="{{.Names}} {{.Status}}" | awk "/${GITLAB_NAME}/ {print \$2}")
  18.   if [[ "${DOCKER_STATUS}"x == "Up"x ]];then
  19.     echo "${GITLAB_NAME} is up"
  20.   else
  21.     docker start ${GITLAB_NAME} > /dev/null
  22.     if [ $? -eq 0 ];then
  23.       echo "${GITLAB_NAME} start success"
  24.     fi
  25.   fi
  26. else
  27.   docker run -d \
  28.     -p ${GITLAB_PORT}:80 \
  29.     -v ${GITLAB_CONFIG_DIR}:/etc/gitlab  \
  30.     -v ${GITLAB_LOG_DIR}:/var/log/gitlab \
  31.     -v ${GITLAB_DATA_DIR}:/var/opt/gitlab \
  32.     --restart always \
  33.     --privileged=true \
  34.     --name ${GITLAB_NAME} \
  35.     --memory=${GITLAB_MEM} \
  36.     ${GITLAB_IMAGE}
  37. fi
  38. }
  39. function optStop () {
  40.   docker stop ${GITLAB_NAME} > /dev/null
  41.   if [ $? -eq 0 ];then
  42.     echo "${GITLAB_NAME} stop success"
  43.   fi
  44. }
  45. function optExec () {
  46.   docker exec -it ${GITLAB_NAME} bash
  47. }
  48. if [ $# -eq 0 ];then
  49.   useAge
  50. fi
  51. case $1 in
  52.     'start' )
  53.         optStart
  54.         ;;
  55.     'stop' )
  56.         optStop
  57.         ;;
  58.     'restart' )
  59.         optStop
  60.         optStart
  61.         ;;
  62.     'exec' )
  63.         optExec
  64.         ;;
  65.     '*' )
  66.         useAge
  67.         ;;
  68. esac
复制代码
配置 gitlab-ce
  1. 进入 gitlab-ce 容器
复制代码
  1. docker exec -it gitlab-ce bash
复制代码
编辑 gitlab-ce 配置文件
  1. egrep -q '^external_url' /etc/gitlab/gitlab.rb || echo "external_url 'http://172.72.0.170'" >> /etc/gitlab/gitlab.rb
复制代码
重启 gitlab-ce
  1. 退出容器,然后重启容器
复制代码
  1. docker restart gitlab-ce
复制代码
  1. gitlab-ce 的重启时间非常的久,这个和硬件有关系,等到日志出现 [code]gitlab Reconfigured
复制代码
就说明重启完成了,就可以用浏览器访问 ip 地址去打开 gitlab 页面了[/code]
配置 root 密码
  1. 进入容器
复制代码
  1. docker exec -it gitlab-ce bash
复制代码
  1. 进入控制台
复制代码
  1. gitlab-rails console -e production
复制代码
  1. 耐心等待,等他出现下面的内容
复制代码
  1. --------------------------------------------------------------------------------
  2. Ruby:         ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x86_64-linux]
  3. GitLab:       16.9.1 (0ef8ba69a8f) FOSS
  4. GitLab Shell: 14.33.0
  5. PostgreSQL:   14.10
  6. ------------------------------------------------------------[ booted in 44.67s ]
  7. Loading production environment (Rails 7.0.8)
  8. irb(main):001:0>
复制代码
  1. 查询管理员的名字
复制代码
  1. user = User.where(id:1).first
复制代码
  1. 返回如下的内容
复制代码
  1. => #<User id:1 @root>
复制代码
  1. 设置密码
复制代码
  1. user.password='Password@123'
复制代码
保存密码,返回
  1. true
复制代码
表示修改成功
  1. user.save!
复制代码
设置中文

  1. 找到 [code]Localization
复制代码
,把
  1. Language
复制代码
换成简体中文,然后
  1. save change
复制代码
[/code]
  1. 刷新一下页面,就显示中文了
复制代码

到此这篇关于docker 部署 gitlab-ce 16.9.1的文章就介绍到这了,更多相关docker 部署 gitlab-ce内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

1

主题

42

回帖

106

积分

注册会员

积分
106
发表于 2024-5-9 00:29:57 | 显示全部楼层
我不太确定,可能需要再确认一下。

2

主题

45

回帖

135

积分

注册会员

积分
135
发表于 2024-7-6 15:58:34 | 显示全部楼层
谢谢你的提醒,我会注意的。

1

主题

68

回帖

157

积分

注册会员

积分
157
发表于 2024-7-9 17:28:04 | 显示全部楼层
我想了解更多

0

主题

53

回帖

103

积分

注册会员

积分
103
发表于 2024-7-20 21:24:42 | 显示全部楼层
非常感谢你的观点,让我受益良多!

0

主题

50

回帖

100

积分

注册会员

积分
100
发表于 2024-8-23 19:24:10 | 显示全部楼层
我完全同意你的观点

1

主题

76

回帖

166

积分

注册会员

积分
166
发表于 2024-8-24 16:30:05 | 显示全部楼层
谢谢你的提醒,我会注意的。

2

主题

49

回帖

142

积分

注册会员

积分
142
发表于 2024-9-2 14:53:38 | 显示全部楼层
嘎嘎嘎嘎嘎嘎嘎

0

主题

50

回帖

99

积分

注册会员

积分
99
发表于 2024-10-8 23:38:29 | 显示全部楼层
嘎嘎嘎嘎嘎嘎嘎

1

主题

41

回帖

105

积分

注册会员

积分
105
发表于 2024-10-10 07:28:12 | 显示全部楼层
我想了解更多
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|爱云论坛 - d.taiji888.cn - 技术学习 免费资源分享 ( 蜀ICP备2022010826号 )|天天打卡

GMT+8, 2024-11-15 11:39 , Processed in 0.090365 second(s), 27 queries .

Powered by i云网络 Licensed

© 2023-2028 正版授权

快速回复 返回顶部 返回列表