1)拉取最新gitlab镜像
docker pull registry.cn-shenzhen.aliyuncs.com/xielincai/devops:gitlab
2)创建gitlab 容器
docker run -id -p 81:80 -p 9922:22 -v /root/gitlab/etc:/etc/gitlab -v /root/gitlab/log:/var/log/gitlab -v /root/gitlab/opt:/var/opt/gitlab --restart=always --privileged=true --name gitlab registry.cn-shenzhen.aliyuncs.com/xielincai/devops:gitlab
参数说明:
-p 81:80:80为gitlab的访问端口,映射成宿主机的81
-p 9922:22:22为gitlab的ssh端口,如果用ssh拉取代码就需要这个
-v :将容器里的配置挂载到宿主机上
–restart=always:开机启动
–privileged=true:特权模式,赋予容器几乎与主机相同的权限
–name gitlab:自定义容器名
registry.cn-shenzhen.aliyuncs.com/xielincai/devops:gitlab:启动镜像
3)修改gitlab 配置文件
# 进入容器
docker exec -it gitlab /bin/bash
# 修改gitlab.rb
vi/etc/gitlab/gitlab.rb
# 找到变量改成对应的配置
external_url 'http://ip'
gitlab_rails['gitlab_ssh_host']='ip'
gitlab_rails['gitlab_shell_ssh_port']=9922
# 刷新配置
gitlab-ctlreconfigure
# 修改gitlab.yml
vi/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
gitlab:
host: ip
port: 81 # 这里改为81
https: false
# 重启
gitlab-ctlrestart
# 获取gitlab初始密码
/etc/gitlab/initial_root_password