[Docker] docker-compose.yml 작성하기

감쟈감쟈왕감쟈·2023년 11월 1일
post-thumbnail

Docker-compose.yml

이미지 여러개를 pull받고 docker로 올리는 작업은 생각보다 많은 시간을 소요한다..
이런 일을 한번에 할수 있도록 하는것이 Docker-compose.yml파일이다!
그럼 이제 EC2에 docker-compose.yml 파일을 작성해보자!

docker-compose.yml파일 생성하기


파일의 최상단에 vi docker-compose.yml 명령어를 사용해서 작성하면 된다
내용 입력 : i를 누르고 시작
저장하고 나가기 : esc -> wq!
저장하지 않고 나가기 : q!

docker-compose.yml 작성하기

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:

일괄 pull

docker-compose pull 명령어를 실행한다면 yml파일에 있는 이미지를 모두 pull한다.

일괄 start/stop

docker-compose up를 통해서 모두 시작할 수 있다.
docker-compose down를 통해서 모두 중지할 수 있다.
혹시 몇몇개의 container가 정상 구동이 되지 않았다면 모두 up하지말고
docker start {컨테이너 ID}를 실행해서 개별로 다시 올려주는것을 추천한다!

profile
싹난 독든 감자의 성장일지

0개의 댓글