IT/Tool

Docker 로 Gitlab 설치하기

캥거루 2022. 12. 20. 11:25
728x90
반응형

설치 진행순서

  1. docker-compose.yml 작성
version: "3.6"
services:
  gitlab:
    image: gitlab/gitlab-ce:13.7.2-ce.0
    ports:
      - "10022:22"
      - "10080:80"
      - "10443:443"
    volumes:
      - /home/a/docker/gitlab_omnibus/conf:/etc/gitlab
      - /home/a/docker/gitlab_omnibus/logs:/var/log/gitlab
      - /home/a/docker/gitlab_omnibus/data:/var/opt/gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: "from_file('/omnibus_config.rb')"
    configs:
      - source: gitlab
        target: /omnibus_config.rb
    secrets:
      - gitlab_root_password
configs:
  gitlab:
    file: ./gitlab.rb
secrets:
  gitlab_root_password:
    file: ./root_password.txt

 

  1. gitlab.rb 작성 (config file)
external_url 'http://{your ip}'
gitlab_rails['initial_root_password'] = File.read('/run/secrets/gitlab_root_password')

postgresql['enable'] = false

gitlab_rails['db_adapter'] = 'postgresql'
gitlab_rails['db_encoding'] = 'utf8'
gitlab_rails['db_host'] = '{your db host}'
gitlab_rails['db_port'] = '{your db port}'
gitlab_rails['db_username'] = '{your db username}'
gitlab_rails['db_password'] = '{your db password}'
  1. root_password.txt 작성 (secrets file)
  2. postgreqsql user, database 생성
    CREATE USER $USER_ID PASSWORD '$USER_PW';
    CREATE DATABASE gitlabhq_production OWNER $USER_ID;
  3. docker stack 생성
    docker stack deploy --compose-file docker-compose.yml gitlab
  4. root 계정 pw 변경
    컨테이너 접근: docker exec -it $container_id /bin/bash
    컨테이너 내부 ruby on rails console 접근: gitlab-rails console
    root 계정 pw 변경
    user = User.where("username = 'root'").first
    user.password='$PASSWORD'
    user.password_confirmation='$PASSWORD'
    user.save

사용

  1. 컨테이너 내부 DB 접근
    일반사용자로 접근: sudo gitlab-rails dbconsole
    슈퍼유저로 접근: sudo gitlab-psql -d gitlabhq_production
  2. 컨테이너 내부 ruby on rails console 접근
    gitlab-rails console

이슈

  1. root 계정 pw 를 수동 설정해주어야 한다.
    • 해결방법
    docker-compose.yml 에 services: gitlab: secrets 속성을 삭제한다.
    그리고 gitlab.rb 파일에서 gitlab_rails[‘initial_root_password’] = ‘your_password’ 로 지정한다
728x90
반응형

'IT > Tool' 카테고리의 다른 글

AWS 컨테이너 서비스 도입을 위한 정보 알아보기  (0) 2022.12.20
AWS Code Deploy 배포자동화 시작하기  (0) 2022.12.20
RabbitMQ 개념 정리  (0) 2022.12.20
Docker 기본 개념  (0) 2022.12.20