Post

Docker Compose 주요 속성들

정보글

짧게 짧게 쳐내자

이 글은 빠른 정보 전달을 위해 구체적인 내용 설명을 겸하지는 않습니다.

딱 이정도 선에서 설명

docker-compose 사용과 관련있는 정도만 포함되어 있습니다.

docker-compose.yml 파일 작성

속성 설명

전에 보여드린 파일을 기준으로 간단히 설명을 곁들이자면,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
services:
  # 서비스 이름
  code-server:
    # 시스템에 있거나 도커 허브에 준비된 이미지 이름
    image: ubuntu
    # 컨테이너 이름
    container_name: code-server
    # 공유폴더 정도로 생각하면 됩니다
    # docker-compose.yml이 있는 myblog 폴더를 컨테이너 안에 있는 /root/myblog 폴더와 연결합니다.
    volumes:
      - ./myblog:/root/myblog
    # 환경 변수입니다
    # bash에서 export KEY = VALUE 로 지정하는 것과 동일합니다
    environment: # 아래는 제 개인적인 쓰임새에 맞게 설정된 상태입니다
      USER: root
      DISPLAY: :1
      PATH: $PATH:/root/Android/Sdk/platform-tools:/usr/local/sbin:/usr/sbin:/sbin
      GODOT_SILENCE_ROOT_WARNING: 1
    # 포트포워딩입니다.
    # 컨테이너의 4000 포트를 컴퓨터의 4000 포트와 연결합니다.
    # 이렇게 하면 네트워크에서 {컴퓨터 주소}:4000 포트로 접근했을 때 컨테이너 4000 포트로 정보가 전달됩니다.
    ports:
      - "4000:4000"
      - "5901:5901"
      - "8080:8080"
    # 컨테이너가 시작하면 즉시 실행할 행동입니다
    # tail -F /dev/null 명령 자체는 아무 것도 안하는 명령입니다. 그래서 컨테이너는 시작 후 대기 상태가 됩니다.
    command: tail -F /dev/null

이 정도면 docker exec -it [container_id] /bin/bash를 이용하여 가상머신처럼 가지고 놀 수 있습니다.

작성 모양새

대표적인 속성 정보를 입력하는 방식은

1
2
3
4
5
6
7
8
9
10
# 값 (key-value 쌍)
key: value
# 배열 (Array)
key:
  - value
  - value
# 사전식 (Dictionary)
master:
  key: value
  key: value

조금 더 많은 정보

주요 docker-compose 속성 (원문보기)

This post is licensed under CC BY 4.0 by the author.