虛擬機中Docker下部署gitlab
一、安裝Gitlab
1、拉取鏡像并啟動
由于服務器的80端口可能被占用,所以這里我們改成了其他端口來啟動
docker run -d -p 2443:443 -p 5678:80 -p 2222:22 --name gitlab --restart always -v/srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /src/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:12.0.3-ce.0
2、修改配置文件
提示:等待docker運行gitlab一小段時間后在操作,否則可能出現文件找不到
修改gitlab.yml文件
vim /src/gitlab/data/gitlab-rails/etc/gitlab.yml
找到如下配置,修改host為你服務的IP或者域名(不能加http://),修改完畢后保存退出
gitlab:
# 這里要將host設置為你gitlab所在的服務器IP或者域名
host: 172.20.9.3
port: 80
https: false
修改gitlab.rb文件
vim /srv/gitlab/config/gitlab.rb
找到external_url,默認是被注釋的,要打開,并填寫暴露出去的http://ip:port,IP一定要和gitlab.yml文件配置的相同,
port為你啟動時指定的,我們這里使用5678作為端口;最后加上ssh協議下使用的IP和端口(這里的端口是你啟動時指定的,我們這里是2222)
最后保存并退出
external_url 'http://172.20.9.3:5678'
gitlab_rails['gitlab_ssh_host'] = '172.20.9.3'
gitlab_rails['gitlab_shell_ssh_port'] = '2222'
停止并移除之前啟動的gitlab
停止并移除之前啟動的GitLab容器
docker rm -f gitlab
重新啟動gitlab
這里要將容器端口改為 5678
docker run -d -p 2443:443 -p 5678:5678 -p 2222:22 --name gitlab --restart always -v/srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /src/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:12.0.3-ce.0
等待一段時間,就可以訪問了,首次需要更改root賬戶的密碼
如果進入登錄頁發現沒有讓你修改密碼,直接就是賬號和密碼的輸入框的話,需要執行下面的命令更改下root的密碼
# 進入gitlab容器
docker exec -it gitlab sh
# 進入控制臺
gitlab-rails console -e production
# 查找用戶,此處user就是你的root賬戶
user = User.where(id: 1).first
# 修改密碼
user.password = '你的密碼'
# 確認密碼
user.password_confirmation = '重復輸入你的密碼'
# 保存
user.save!
# 退出控制臺
exit
# 退出容器
exit
做完上面的操作后,就可以去GitLab登陸了

浙公網安備 33010602011771號