이미지 여러개를 pull받고 docker로 올리는 작업은 생각보다 많은 시간을 소요한다..
이런 일을 한번에 할수 있도록 하는것이 Docker-compose.yml파일이다!
그럼 이제 EC2에 docker-compose.yml 파일을 작성해보자!
파일의 최상단에vi docker-compose.yml명령어를 사용해서 작성하면 된다
내용 입력 :i를 누르고 시작
저장하고 나가기 :esc->wq!
저장하지 않고 나가기 :q!
version: '3'
services:
[컨테이너 명]:
image: {YOUR_NAME/IMAGE_NAME}
ports:
- "8080:8080" //포트 번호 지정
networks:
- service_network //네트워크 지정
[컨테이너 명]:
image: {YOUR_NAME/IMAGE_NAME}
ports:
- "8081:8080" //포트 번호 지정
networks:
- service_network //네트워크 지정
depends_on: //실행 시작 순서를 조정한다.
- first-server //first-server을 실행 후 실행하겠다는 뜻이다/
[컨테이너 명]:
image: {YOUR_NAME/IMAGE_NAME}
ports:
- "8081:8080" //포트 번호 지정
environment:
- DISCOVERY_SERVICE_URL=http://server-name //만약 다른 discorvery 를 사용할꺼면 추가!
networks:
- service_network //네트워크 지정
depends_on: //실행 시작 순서를 조정한다.
- first-server //first-server을 실행 후 실행하겠다는 뜻이다/
networks:
service_network:
docker-compose pull명령어를 실행한다면 yml파일에 있는 이미지를 모두 pull한다.
docker-compose up를 통해서 모두 시작할 수 있다.
docker-compose down를 통해서 모두 중지할 수 있다.
혹시 몇몇개의 container가 정상 구동이 되지 않았다면 모두 up하지말고
docker start {컨테이너 ID}를 실행해서 개별로 다시 올려주는것을 추천한다!