반응형
1. links vs depends_on:
links와 depends_on 둘 다 dependency와 container의 생성순서를 정해준다.
하지만 links는 위의 기능과 link된 container의 이름을 내부코드에서 사용하여 접근할 수 있다.
예시:
https://stackoverflow.com/questions/35832095/difference-between-links-and-depends-on-in-docker-compose-yml
또, links와 depends_on은 생성순서는 지정해주지만, 먼저 시작된 컨테이너가 실제로 '사용가능'한 상태인지는 확인하지 않는다고한다. 예를 들자면 데이터베이스 컨테이너를 먼저 시작은 하지만 이 데이터베이스 컨테이너가 현재 연결가능하지 않을수도 있다는 것이다.
2. Volumes:
Volume의 역할인 로컬에 있는 파일을 도커 컨테이너로 마운트하는 역할을 한다. 크게 2가지로 나눌 수 있다.
- 그냥 마운트: 그냥 그대로 파일/디렉토리를 복사하여 넣는 것이다.
(예: temp_volume: /app/static/ <- 로컬의 /app/static/을 마운트하고 temp_volume으로 명명)
- 연결: 데이터베이스가 실행중인 컨테이너를 종료와 함께 삭제하면, 컨테이너가 실행된 시간동안 저장된 데이터가 모두 날아가게 된다. 이를 방지하기 위해 로컬의 폴더와 연결하면 컨테이너의 정보가 날아가더라도 남아있게 된다.
(예: ./docker/data:/var/lib/mysql/data <- 컨테이너의 /var/lib/mysql/data를 로컬의 ./docker/data와 연결)
links와 depends_on 둘 다 dependency와 container의 생성순서를 정해준다.
하지만 links는 위의 기능과 link된 container의 이름을 내부코드에서 사용하여 접근할 수 있다.
예시:
web:
image: example/my_web_app:latest
links:
- db
- cache
db:
image: postgres:latest
cache:
image: redis:latest
위의 예시에서 links를 사용한다면 web 내부에서 db:5432 로 접근할 수 있지만 depends_on을 사용한다면 접근할 수 없다.https://stackoverflow.com/questions/35832095/difference-between-links-and-depends-on-in-docker-compose-yml
또, links와 depends_on은 생성순서는 지정해주지만, 먼저 시작된 컨테이너가 실제로 '사용가능'한 상태인지는 확인하지 않는다고한다. 예를 들자면 데이터베이스 컨테이너를 먼저 시작은 하지만 이 데이터베이스 컨테이너가 현재 연결가능하지 않을수도 있다는 것이다.
2. Volumes:
Volume의 역할인 로컬에 있는 파일을 도커 컨테이너로 마운트하는 역할을 한다. 크게 2가지로 나눌 수 있다.
- 그냥 마운트: 그냥 그대로 파일/디렉토리를 복사하여 넣는 것이다.
(예: temp_volume: /app/static/ <- 로컬의 /app/static/을 마운트하고 temp_volume으로 명명)
- 연결: 데이터베이스가 실행중인 컨테이너를 종료와 함께 삭제하면, 컨테이너가 실행된 시간동안 저장된 데이터가 모두 날아가게 된다. 이를 방지하기 위해 로컬의 폴더와 연결하면 컨테이너의 정보가 날아가더라도 남아있게 된다.
(예: ./docker/data:/var/lib/mysql/data <- 컨테이너의 /var/lib/mysql/data를 로컬의 ./docker/data와 연결)
반응형
'개발 > 백엔드' 카테고리의 다른 글
[Web Server 이해하기] Gunicorn과 Nginx 역할분배 (0) | 2020.03.18 |
---|---|
[Web Server 이해하기] Nginx Configuration 설정법 (0) | 2020.03.18 |
[Django 공식문서 번역] REST Framework - Viewset and Router (0) | 2020.03.18 |
[Django REST Framework] create() vs perform_create() (0) | 2020.03.18 |
Django Channels - Introduction (0) | 2020.03.18 |