1. 배포를 위한 파일(Jar) 생성
mvn clean compile package -DskipTests=true
해당 프로젝트 내, tartget파일이 보이는 위치에서 명령어를 실행한다.
이때, -DskipTests=true는 Test단계를 통과해야하는 경우에 사용한다.
명령어를 통한 방법 이외에 개발도구에서 maven package단계까지 실행해도 동일하다. 이 명령어를 통해 Jar파일 생성한다.
2. Service File Build
docker build --tag seojeonghyeon0630/user-service:0.0.1 .
DockerFile을 토대로 대상을 이미지화 한다.(DockerFile이 위치한 곳에서 실행한다.
- -t : 태그이름
- Version : pom.xml에 명시한 버전 및 jar파일 생성시 사용한 버전
docker build --tag(or -t) (Docker계정)/(Service명):(Version) .(위치)
3. Service File Push
docker push seojeonghyeon0630/user-service:0.0.1
Local에 존재하는 이미지 파일을 Docker Repository로 전송한다.
4. Service File Pull
docker pull seojeonghyeon0630/user-service:0.0.1
Container를 생성하고자 하는 서버로 가서 Repository 내 이미지 파일을 내려받는다.
5. Docker Bridge Network 생성
docker network create --gateway 172.18.0.1 --subnet 172.18.0.0/16 mood-network
Docker Bridge Network를 172.18.0.1에서부터 subnet mask로 16으로 생성한다.
# Gateway : 172.18.0.1
# Subnet : 172.18.0.0/16
Docker network ls
생성된 Docker Network를 확인
기본적으로 제공하는 Network 3개와 추가로 설정한 1개의 Bridge Network를 확인 가능하다.
해당 글은 Notion에 정리한 글을 옮긴 글입니다.
https://seojeonghyeon0630.notion.site/Docker-Document-2734a3999d674848b49fbfce3639a178
'Docker' 카테고리의 다른 글
Docker 내 UTF-8 설정 및 시간 설정 (0) | 2022.05.14 |
---|---|
Container의 Log를 통한 Service 작동상태 확인 (0) | 2022.05.14 |
Service 실행(Container 생성) (0) | 2022.05.14 |
Service File 생성 (0) | 2022.05.14 |
Docker의 역할 (0) | 2022.05.14 |