# docker-compose.yml
services:
gitlab:
image: gitlab/gitlab-ce:latest
container_name: adp_gitlab
restart: unless-stopped
# hostname: gitlab.example.com
hostname: '<IP 주소>'
environment:
GITLAB_OMNIBUS_CONFIG: |
# external_url 'http://gitlab.example.com'
external_url 'http://<IP주소>:8080'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
ports:
# - "8080:80"
- "8080:8080" # 요기가 핵심 (80 port를 변경하고자하는 port로 변경해줘야함.)
- "8443:443"
- "2222:22"
volumes:
- /data001/dev/gitlab/config:/etc/gitlab
- /logs001/dev/gitlab/logs:/var/log/gitlab
- /data001/dev/gitlab/data:/var/opt/gitlab
networks:
- my-network
deploy:
resources:
limits:
memory: 4G
cpus: '3.0'
reservations:
memory: 2G
cpus: '1.5'
# 리소스 제한 (Docker Compose v2.1+)
mem_limit: 4g
mem_reservation: 2g
cpus: 3.0
gitlab-runner:
image: gitlab/gitlab-runner:latest
container_name: adp_gitlab_runner
restart: unless-stopped
depends_on:
- gitlab
volumes:
# Docker 명령어 실행 가능
- /var/run/docker.sock:/var/run/docker.sock
- /data001/dev/gitlab-runner/config:/etc/gitlab-runner
- /logs001/dev/gitlab-runner/logs:/var/log/gitlab-runner
- /data001/dev/gitlab-runner/data:/home/gitlab-runner
# - gitlab_runner_data:/home/gitlab-runner
networks:
- my-network
deploy:
resources:
limits:
memory: 2G
cpus: '2.0'
reservations:
memory: 1G
cpus: '1.0'
# 리소스 제한 (Docker Compose v2.1+)
mem_limit: 2g
mem_reservation: 1g
cpus: 2.0
# 캐싱
volumes:
pip-cache:
gitlab_data:
driver: local
driver_opts:
type: none
o: bind
device: /data001/dev/gitlab/data
gitlab_runner_data:
driver: local
driver_opts:
type: none
o: bind
device: /data001/dev/gitlab-runner/data
networks:
my-network:
driver: bridge
# 8080 포트 사용할 때, gitlab 내부적으로 사용하는 puma 기본 포트(8080) 충돌로 정상 동작하지 않고, 502 Error를 반환한다.
아래 경로에서, vi 에디터로 파일을 열어서 puma 부분 주석을 풀어 포트와 주소를 수정해주고, 재기동이 필요하다.
# volume 설정되어 있는 경로
/data001/dev/gitlab/config/gitlab.rb
# container 내부 경로
/etc/gitlab/gitlab.rb
...
puma['listen'] = '127.0.0.1'
puma['port'] = 7776 # 8080
...
# 출처
-
'클라우드 & DevOps > DevOps ∕ Docker' 카테고리의 다른 글
[Docker] gitlab-runner 기동 시, 권한 문제 해결하기 (0) | 2025.09.11 |
---|---|
[Docker] 오프라인 환경에서 gitlab runner 기동 시, docker offline 설정하기 (0) | 2025.09.10 |
[Docker] 컨테이너에서 호스트 PC 서비스 접근하기: host.docker.internal (1) | 2025.09.01 |
[Docker] GitLab의 root 계정 비밀번호를 초기화하는 방법 (1) | 2025.08.18 |
[Docker] docker-compose 명령어와 docker compose 명령어의 차이 (0) | 2025.08.13 |
최근댓글