프로그램/DOCKER

[Docker] docker-compose.yml 명령어 종류 및 사용법

프뚜 2023. 4. 13. 09:20
728x90
반응형
SMALL

안녕하세요! 프뚜입니다.

 

docker > images를 run 명령어로 새로운 컨테이너를 띄울 수 있습니다.

docker run 옵션 종류 및 컨테이너 생성하기에서 확인할 수 있습니다.

 

docker-compose를 통해 run 명령어를 yml로 관리하는 방법에 대해 포스팅하려고 합니다.


[개발환경]

- OS: Ubuntu

- 인터넷이 가능한 환경


# docker-compose.yml 파일 생성하기

services:
  app:
    container_name: custom-name #docker run --name
    image: custom-ubuntu        #docker images
    ports:                      #docker run -p
      - "80:80"
      - "443:443"
    volumes:                    #docker run -v
      - /docker:/data
      - /home:/home
    stdin_open: true            #docker run -i
    tty: true                   #docker run -t
    privileged: true            #docker run --privileged
    user: root                  #docker run -u
    environment:                #docker run -e
      LC_ALL: "ko_KR.UTF-8"
    networks:
      - network
    entrypoint: /sbin/init      #docker exec /bin/bash

networks:
  network:                      #docker network name
    external: true

 -stdin_open: 표준 입력(stdin)을 활성화하며, 컨테이너와 연결(attach)되어 있지 않더라도 표준 입력을 유지
 -tty: TTY 모드(pseudo-TTY)를 사용, Bash를 사용하려면 이 옵션을 설정
 -ports: 호스트와 컨테이너의 포트를 연결 (포트포워딩)
 -volumes: 데이터 볼륨 설정, 호스트와 컨테이너의 디렉토리를 연결 (mount)
 -environment: 컨테이너 환경 변수 설정
 -user: root 권한 부여
 -privileged: 컨테이너 안에서 호스트의 리눅스 커널 기능(Capability)을 모두 사용
 -networks: 컨테이너의 network group을 설정
 -container_name: 컨테이너의 이름을 설정

 - networks:{network group name}:external: 네트워크 그룹을 사용


docker-compose up -d를 통해 해당 container를 생성할 수 있습니다.

 

궁금하신 부분 또는 문제가 생긴 부분에 대해서 댓글 남겨주시면 빠르고 정확한 답변드리겠습니다.

 
728x90
반응형
LIST