전 게시물에선 도커에 개념에 대해 알아봤다. 이번엔 window에 도커를 사용할 수 있도록 설정 작업을 진행하고, 도커 설치 및 애플리케이션 서비스 띄우는 작업까지 해보도록 하겠다.
https://mz-moonzoo.tistory.com/40
> cd ~
> mkdir app1
> mkdir app2
> mv <app1.jar 위치>/app1.jar ~/app1
> mv <app2.jar 위치>/app1.jar ~/app2
각 애플리케이션을 도커화하기 위해 Dockerfile을 준비해야 한다. 도커로 컨테이너를 생성할때 도커는 기본적으로 dockerfile 이라는 명에 파일을 참조하길 기대하기 때문에 파일명은 dockerfile로 꼭 생성하여야 한다.
> cp <app1 디렉토리 위치>
> vim dockerfile
[dockerfile]
# app1/Dockerfile
FROM openjdk:17-jdk-slim
WORKDIR /app1
COPY app1.jar . # JAR 파일을 복사
EXPOSE 80
CMD ["java", "-jar", "app1.jar"]
-----------------------------------------------------------------------
> cp <app2 디렉토리 위치>
> vim dockerfile
[dockerfile]
# app2/Dockerfile
FROM openjdk:17-jdk-slim
WORKDIR /app2
COPY app2.jar . # JAR 파일을 복사
EXPOSE 81
CMD ["java", "-jar", "app2.jar"]
# app1 디렉토리로 이동 후
> cd app1
> docker build -t app1-image .
# app2 디렉토리로 이동 후
> cd ../app2
> docker build -t app2-image .
# app1 컨테이너 실행 (80 포트)
> docker run -d -p 80:8081 --name app1-container app1-image
# app2 컨테이너 실행 (81 포트)
> docker run -d -p 81:8082 --name app2-container app2-image
> docker ps -a
> docker exec -it <app1 컨테이너 명> /bin/bash
이렇게 도커를 설치하고 또 두개의 서비스를 각각 컨테이너에 띄워보았다. 아마 더 다양한 옵션과 기능들을 제공하겠지만, 이번엔 가장 기본적인 기능만 구현해봤다.