Попытка подключить док-контейнер GitLab-CE к док-контейнеру OpenLDAP - PullRequest
0 голосов
/ 26 июня 2018

Я новичок в Docker и пытаюсь что-то сделать с Docker Networking.У меня есть два контейнера, один - GitLab, а другой - OpenLDAP, и я надеюсь, что смогу настроить мой сервер Gitlab с аутентификацией OpenLDAP.У меня есть два сочинения ниже.Композиция Gitlab в основном копируется и вставляется, поскольку на самом деле я не уверен на 100% в том, какие настройки должны быть для переменных среды, чтобы обеспечить его внутреннюю связь с контейнером OpenLDAP.Я надеялся, что они смогут общаться полностью внутренне через определенный пользователем мост под названием "loworkNetwork", который я начал до запуска этих композиций.

Gitlab Docker-Compose

version: '2'

services:
  web:
    image: 'gitlab/gitlab-ce:latest'
    restart: always
    hostname: 'gitlab'
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'my_external_url'
        # These settings are documented in more detail at
        # https://gitlab.com/gitlab-org/gitlab-ce/blob/a0a826ebdcb783c660dd40d8cb217db28a9d4998/config/gitlab.yml.example#L136
        gitlab_rails['ldap_enabled'] = true
        gitlab_rails['ldap_host'] = 'ldap-service'
        gitlab_rails['ldap_port'] = 389
        gitlab_rails['ldap_uid'] = 'uid'
        gitlab_rails['ldap_method'] = 'plain' # 'ssl' or 'plain'
        gitlab_rails['ldap_bind_dn'] = 'cn=admin,dc=my_external_url,dc=com'
        gitlab_rails['ldap_password'] = 'password'
        gitlab_rails['ldap_allow_username_or_email_login'] = true
        gitlab_rails['ldap_base'] = 'dc=my_external_url,dc=com' 
    ports:
      - '80:80'
      - '443:443'
      - '22:22'
    volumes:
      - '/srv/gitlab/config:/etc/gitlab'
      - '/srv/gitlab/logs:/var/log/gitlab'
      - '/srv/gitlab/data:/var/opt/gitlab'
    networks:
      - loworkNetwork
networks:
  loworkNetwork:
    external: true

Службы LDAP Docker-Compose

version: '2'

services:
  openldap:
    image: osixia/openldap:latest
    environment:
      - LDAP_ORGANISATION="lowork"
      - LDAP_DOMAIN=my_external_url
      - LDAP_ADMIN_PASSWORD=password
    networks:
      - loworkNetwork
    hostname: ldap-service

  phpldapadmin:
    image: osixia/phpldapadmin:latest
    ports:
      - "8080:80"
    environment:
      - PHPLDAPADMIN_LDAP_HOSTS=openldap
      - PHPLDAPADMIN_HTTPS=false
    networks:
      - loworkNetwork

networks:
  loworkNetwork:
    external: true

1 Ответ

0 голосов
/ 27 июня 2018

Я понял это!В моем случае все, что мне нужно было сделать, это сменить хост на имя моего контейнера.Так что в моем gitlab docker-compose я просто изменил 'ldap-host' на 'openldap', потому что это имя моего контейнера.

...