여러개의 DockerFile을 한번에 실행해준다.
위와 같은 경우 frontend와 backend는 각 컨테이너를 정의하는 것이고 각 컨테이너의 이름이 된다.
image | 컨테이너의 이미지를 정의 |
---|---|
build | 위 ‘image’를 활용하는 방식이 아닌 dockerfile의 경로를 지정해서 빌드하여 사용하는 방법 |
dockerfile | 빌드할 dockerfile의 이름이 ‘Dockerfile’이 아닌 경우 이름을 지정하기 위해 사용 |
ports | 호스트와 컨테이너의 포트 바인딩 설정에 사용 |
volumes | 호스트의 지정된 경로로 컨테이너의 볼륨을 마운트 하도록 설정 |
conatiner_name | 컨테이너 이름을 설정 |
command | 컨테이너가 실행된 후 컨테이너의 쉘에서 실행시킬 쉘 명령어 설정 |
environment | 환경변수를 설정 |
env_file | ‘environment’와 동일한 기능이지만, 이 키워드를 사용하면 env 파일을 이용해서 적용할 수 있다. |
depends_on | 다른 컨테이너와 의존관계를 설정 |
restart | 컨테이너의 재시작과 관련하여 설정 |
작성된 docker-compose.yml 파일을 실행하기 위한 커맨드
docker-compose up
-f 옵션
/* default인 docker-compose.yml, docker-compose.yaml의
이름이 아닌 다른 이름의 파일일 경우 사용 */
docker-compose -f docker-compose-custom.yml up
-d 옵션
// 백그라운드에서 실행하기 위해 사용
docker-compose up -d