基于 docker 部署 gitlab 比较方便,但服务器至少需要 4GB 内存,否则可能出现 502 错误。
1. 拉取镜像
# 查询
docker search gitlab
# 拉取 默认latest
docker pull gitlab/gitlab-ce
2. 安装镜像
docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 3322:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
gitlab/gitlab-ee:latest
#正常情况下 就可以通过ip访问了
3. 配置端口
配置 gitlab 克隆时的端口(端口配置根据自己的需求选择)
# 进入容器
docker exec -it gitlab /bin/bash
# 编辑配置文件
vim /etc/gitlab/gitlab.rb
# 添加内容
# gitlab 访问地址/域名
external_url 'http://192.168.1.109:'
# ssh IP
gitlab_rails['gitlab_ssh_host'] = '192.168.1.109'
# ssh clone 端口
gitlab_rails['gitlab_shell_ssh_port'] = 22
# nginx 监听端口IP
nginx['listen_addresses'] = ['*']
# nginx 监听端口
nginx['listen_port'] = 80
去掉注释
external_url "http://192.168.1.109"
gitlab_rails['gitlab_ssh_host'] = '192.168.1.109'
gitlab_rails['gitlab_shell_ssh_port'] = 3322
nginx['listen_addresses'] = ['*']
nginx['listen_port'] = 80
# 重新配置
gitlab-ctl reconfigure
# 重启gitlab
gitlab-ctl restart
# 退出容器
exit
补充
# 退出前,可以在容器中打开配置文件可以查看是否生效
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
重启 container
docker restart <gitlab-container-id>