[Docker] Docker-Compose 설치

2024. 4. 15. 11:09기술 창고/Docker

728x90
반응형
SMALL

Docker 를 설치하고나서 이 Docker를 통합적으로 효율적이게 관리해주기 위해 Docker Compose를 설치하는 방법을 정리해보겠습니다.

 

(1) Docker-Compose 설치

https://github.com/docker/compose/releases

 

Releases · docker/compose

Define and run multi-container applications with Docker - docker/compose

github.com

 

sudo curl -L "https://github.com/docker/compose/releases/download/2.34.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

위의 사이트에서 최신 버전을 확인하고 curl 명령어를 통해 Docker-Compose를 설치해줍니다.

 

 

(2) 설치한 Docker-Compose 권한 부여

sudo chmod +x /usr/local/bin/docker-compose

설치한 Docker Compose 파일을 실행할 수 있도록 권한을 부여합니다.

 

 

(3) 심볼릭 링크 설정

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

심볼릭 링크 설정으로 /usr/bin/docker-compose와 연결해줍니다.

 

 

(4) 설치한 Docker-Compose 버전 확인

docker-compose -v

마무리로 버전 확인 명령어로 정상적으로 설치되었는지 확인해줍니다.

 

 

# Docker-Compose 파일 생성 및 실행 방법

[Docker-Compose 파일 생성]

docker-compose.yml (예시)

#docker-compose-replication-database.yml

version: "3"
services:
  db-master:
    container_name: mysql-master
    build:
      context: ./mysql/master/
      dockerfile: Dockerfile
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: {ROOT_PASSWORD}
      MYSQL_USER_PASSWORD: {USER_PASSWORD}
      MYSQL_DB: {TESTDB}
    ports:
      - "13306:3306"
    volumes:
      - master_vol:/var/lib/mysql
      - ./mysql/master/scripts:/docker-entrypoint-initdb.d
    networks:
      net-mysql:
        ipv4_address: 172.28.0.2
        
    grafana:
        image: grafana/grafana
        container_name: grafana
        ports:
          - "3000:3000"
        restart: always
        depends_on:
          - prometheus
        privileged: true

기본적인 실행 docker-compose 파일은 위와 같은 형식으로 작성되며, 파일명은 다르게 설정할 수도 있지만 그럴 경우 실행 명령어 입력 시 해당 파일 명을 반드시 입력해주어야 한다.

그리고 보통 기본적으로 docker hub 에서 이미지를 pull 받아서 실행하는데 이 경우, image 옵션을 넣고, 이미지를 pull하지 않고 직접 이미지를 빌드해서 사용할 경우, build 옵션을 연계해서 사용한다.

 

 

[Docker-Compose 실행]

# 기본 설정 파일인 docker-compose.yml 실행 시. 
# -d: 백그라운드 실행.
docker-compose up -d

# 사용자 지정 설정파일 실행 시 -f 옵션
docker-compose -f <파일명.yml> up -d
728x90
반응형
LIST