Сервер электронной почты QNAP Container Station Gitlab

У меня QNAP TS453a NAS. На Container Station я установил Docker Gitlab 10.4.2 от sameersbn. Но я не смог найти никакого руководства по настройке почтового сервера, чтобы Gitlab мог отправлять электронные письма, например, когда кто-то забывает свой пароль. Может кто-нибудь помочь мне?


person Philipp Klimaax    schedule 09.03.2018    source источник


Ответы (1)


Я также установил Sameersbn версию Gitlab в Container Station и нашел ее довольно ограниченной. Моя личная рекомендация заключалась бы в том, чтобы просто использовать стандартную версию CE, которую предоставляет Gitlab.

Однако в то время, когда я использовал Sameersbn версию Gitlab, я не мог найти способ успешно настроить почтовый сервер (не говоря уже о том, что нет, я просто не мог этого понять). Однако это не означает, что вы не можете сделать это самостоятельно вручную.

Я бы порекомендовал вам смонтировать свои тома куда-нибудь на диск, а не на Container Station, чтобы упростить перенастройку любых параметров вручную.

Вот как выглядит мой файл docker-compose. Очень просто, и на самом деле единственное, о чем вам нужно заботиться, это тома и то, где вы их монтируете.

web:
    image: 'gitlab/gitlab-ce:latest'
    restart: always
    hostname: <HOTST_NAME>
environment:
    GITLAB_OMNIBUS_CONFIG: |
       external_url <EXTERNAL_URL>
ports:
    - '10080:80' // Insecure port 
    - '10443:443' // Secure port 
    - '10020:22' // SSH port 
volumes:
    - '/share/Gitlab/config:/etc/gitlab' // To configure the Email Server we care about this one.
    - '/share/Gitlab/logs:/var/log/gitlab'
    - '/share/Gitlab/data:/var/opt/gitlab'

Нас волнует '/share/Gitlab/config:/etc/gitlab'. Если вы не очень хорошо разбираетесь в томах и их монтировании, это примерно так '<your_local_location>:<container_location>'. Поэтому, если я перейду к /share/Gitlab/config на своем QNAP NAS, я найду всю конфигурацию для своего экземпляра GitLab.

В /share/Gitlab/config вы должны увидеть файл с именем gitlab.rb, это ruby-файл, содержащий всю конфигурацию вашего экземпляра GitLab. Если вы выполните поиск в этом файле, вы найдете следующую конфигурацию:

### GitLab email server settings
###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
###! **Use smtp instead of sendmail/postfix.**

# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.server"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "smtp user"
# gitlab_rails['smtp_password'] = "smtp password"
# gitlab_rails['smtp_domain'] = "example.com"
# gitlab_rails['smtp_authentication'] = "login" 
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = false

Все, что вам нужно сделать, это раскомментировать (# означает комментарий, поэтому просто удалите его) и ввести свои данные SMTP.

Это потребует от вас перенастройки экземпляра Gitlab. Итак, вам нужно будет подключиться по ssh к вашему контейнеру GitLab и просто запустить команду reconfigure.

По сути, вам нужно найти путь к файлу gitlab.rb, чтобы вы могли изменить настройки почтового сервера SMTP.

Некоторые хорошие материалы для чтения по установке GitLab через Docker:

(Обратите внимание, что могут быть некоторые дополнительные настройки, позволяющие вашей системе записывать в /share/Gitlab/config, вы можете сделать это с помощью команды chmod через ssh)

person Popeye    schedule 03.09.2018
comment
Я настроил виртуальную машину Ubuntu и установил на нее Gitlab CE. Теперь все в порядке. - person Philipp Klimaax; 26.11.2018