0

正在运行的命令示例:

docker run \
    --detach \
    --hostname gitlab.docker \
    --publish 8443:443 \
    --publish 8081:80 \
    --publish 2222:22 \
    --name gitlab \
    --restart always -v /var/run/docker.sock:/var/run/docker.sock \
    --volume /tmp/gitlab/config:/etc/gitlab \
    --volume /tmp/gitlab/logs:/var/log/gitlab \
    --volume /tmp/gitlab/data:/var/opt/gitlab \
    --env GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.docker:8081/'; gitlab_rails['lfs_enabled'] = true;" \
    gitlab/gitlab-ce:latest

gitlab.rb

external_url "http://gitlab.docker:8081"

访问网址: http://gitlab.docker:8081

也许我遗漏了一些东西,但是当我删除端口时,我可以访问 8081 上的接口,在那里它变得无法访问。

有什么见解吗?

4

2 回答 2

1

您需要设置 'nginx-listen-port' 以使 docker 内的 nginx 侦听端口 80,而不是 'external_url' 指定的端口 8081。看:

https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/nginx.md#setting-the-nginx-listen-port

于 2016-06-02T11:24:55.593 回答
0

我想通了,当你运行时:

gitlab-ctl 重新配置

外部 url 中的端口被解析并放入 nginx 配置中,因此您转发的 docker 端口不再有效。

于 2016-01-10T15:00:22.667 回答