Назад | Перейти на главную страницу

GitLab CE Docker - /etc/gitlab/gitlab.rb не работает должным образом

Я установил образ GitLab CE Docker на эти инструкции. Я использую HTTP на нестандартном порту, пока экспериментирую с ним и сталкиваюсь с некоторыми странными проблемами, пытаясь настроить другой HTTP-IP и порт.

По инструкции я сопоставил порт с этим разделом docker run команда --publish 192.168.88.135:8083:80 (обратите внимание, что у этого компьютера несколько IP-адресов, поэтому я хочу привязать его к 192.168.88.135).

После запуска контейнера я подключаюсь к оболочке внутри него и редактирую /etc/gitlab/gitlab.rb как описано Вот и Вот, чтобы

external_url "http://192.168.88.135:8083"

Чтобы перенастроить GitLab, я перезапускаю контейнер через docker restart gitlab. Как только это будет сделано, я указываю в браузере http://192.168.88.135:8083, однако сайт недоступен.

Если я сбегу docker inspect gitlab, конечно же, порт отображается как ожидалось

"80/tcp": [
    {
        "HostIp": "192.168.88.135",
        "HostPort": "8083"
    }
]

Что действительно странно, так это то, что если я воссоздаю том и контейнер с нуля и не трогай /etc/gitlab/gitlab.rb, Я могу получить доступ к GitLab через http://192.168.88.135:8083. Есть идеи, что происходит? Я с подозрением отношусь к переносу своих репозиториев в эту установку, пока не пойму!

Официальная документация кажется неправильной, как обсуждалось Вот. Если вы хотите запустить Gitlab через порт 8083, вам нужно изменить параметр конфигурации external_url в файле gitlab config.rb, и вы должны установить параметр публикации в вашем запускаемом докере следующим образом: --publish 192.168.88.135:8083:8083.

Я попытался сделать то, что вы хотите, используя порт 8081, используя следующую команду docker run всего за один шаг:

sudo docker run --detach \
    --hostname gitlab.example.com \
    --publish 192.168.1.50:8081:8081 \
    --publish 192.168.1.50:2222:22 \
    --name gitlab \
    --env GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.example.com:8081/'; gitlab_rails['lfs_enabled'] = true;" \
    --volume ~/Docker/gitlab/config:/etc/gitlab \
    --volume ~/Docker/gitlab/logs:/var/log/gitlab \
    --volume ~/Docker/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ce:latest

Через пару минут вы должны увидеть, что Gitlab запущен (требуется некоторое время, чтобы заполнить базу данных и другие материалы начальной загрузки).

Если вы не будете терпеливы, вы также можете увидеть 502, но это означает только, что запускается gitlab :)