外部 Nginx 與 Gitlab Docker Container 並存設定方法 - lyonwang/TechNotes GitHub Wiki
gitlab docker container 啟動指令
sudo docker run -d \
-e GITLAB_OMNIBUS_CONFIG="external_url 'http://192.168.10.51:880/'; gitlab_rails['lfs_enabled'] = true;gitlab_rails['gitlab_shell_ssh_port'] = 822" \
--ip 172.17.0.3 \
--name gitlab \
--restart always \
-v /srv/gitlab/config:/etc/gitlab \
-v /srv/gitlab/logs:/var/log/gitlab \
-v /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
更改 Gitlab Docker Container 內部 nginx 設定: /srv/gitlab/data//nginx/conf/gitlab-http.conf
...
server {
listen *:880;
...
更改gitlab clone的external_url
更改/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml (注意: 要設定成外部存取 IP 與 port, 2020-11-05 更新 ==> 不需要)
# 1. GitLab app settings
# ==========================
## GitLab settings
gitlab:
## Web server settings (note: host is the FQDN, do not include http://)
host: 192.168.10.51
port: 880
https: false
重啟 gitlab docker container
sudo docker rm -f gitlab
執行第一步 gitlab docker container
外部 /etc/nginx/nginx.conf (Gitlab Docker Container 內部 IP 172.17.0.3 port 880)
http {
...
upstream 192.168.10.51 {
server 172.17.0.3:880;
}
...
}
外部 /etc/nginx/conf.d/
server {
listen 880; #我的gitlab一般使用880端口访问
server_name 192.168.10.51;
location / {
root html;
index index.html index.htm;
proxy_pass http://192.168.10.51; #这里与前面设置过的端口一致
}
}
外部存取
http://192.168.10.51:880