[GitLab] docker로 실행한 gitlab 접속이 안될때

개발자 P군·2024년 11월 30일
0
post-thumbnail

docker compose로 컨테이너로 실행하는 과정에서 gitlab이 실행은 잘됐지만 접속이 안되는 문제를 발견했습니다.
이것저것 수정해봤지만 설정상 문제가 없는 것 같다는 생각이 들어서 추가로 구글을 통해 여러 문제들을 확인 해본 결과 어떤 문제가 있었는지 확인 되었습니다.


기존 docker-compose.yml

services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    hostname: gitlab.example.com
    ports:
      - "443:443"
      - "8081:80"
      - "8022:22"
    volumes:
      - ./gitlab/config:/etc/gitlab
      - ./gitlab/logs:/var/log/gitlab
      - ./gitlab/data:/var/opt/gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://gitlab.example.com:8081'

기존에 제가 작성한 docker compose.yml 파일 내용입니다. 위와 같이 작성했을 때 GitLab이 Docker 컨테이너에서 nginx를 사용하여 포트를 수신하는데, 설정된 external_url에 맞춰 다른 포트를 수신하고 있다는 점을 발견했습니다.

기존 설정에서 external_url 'http://gitlab.example.com:8081' 으로 설정한 뒤, 실제로 nginx는 80포트가 아닌 8081 포트로 수신을 하게 되며, 이 포트가 외부에서 접근할 수 없어서 접속이 되지 않았습니다.


수정 후 docker-compose.yml

services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    hostname: gitlab.example.com
    ports:
      - "443:443"
      - "8081:8081"
      - "8022:22"
    volumes:
      - ./gitlab/config:/etc/gitlab
      - ./gitlab/logs:/var/log/gitlab
      - ./gitlab/data:/var/opt/gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://http://gitlab.example.com:8081'

이렇게 수정한 이후 문제 없이 gitlab에 접속 할 수 있었습니다.

profile
꾸준한 발전을 지향하는 개발자입니다. 문제를 발견하고 해결하는 과정을 통해 얻은 새로운 지식을 공유하고자 합니다.

0개의 댓글

관련 채용 정보