jar의 기본 이름은 프로젝트명-0.010-SNAPSHOT
이다.
이름은 바꾸려면 build.gradle
에서 아래처럼 설정을해주면 된다.
bootJar{
archivesBaseName = 'semoapi'
archiveFileName = 'semoapi.jar'
archiveVersion = "0.0.1"
}
FROM openjdk:11-jdk
VOLUME /tmp
EXPOSE 8080
ARG JAR_FILE=target/*.jar
ADD ${JAR_FILE} semoapi.jar
WORKDIR /home/api/target
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/semoapi.jar"]
FileZilla를 이용하여 local pc 에서 AWS(ec2)로 전송하였음.
ed2인스턴스에 api폴더를 만들고 하위에 target폴더를 생성
/home/api
/home/api/target
위에서 만든 Dockerfile이 저장된 위치(home/api)에서 아래 명령어를 실행한다
$ docker build --tag semopai:0.1 .
위 명령어는 현재경로의 모든파일 (.) 을 semoapi 라는 이름으로 0.1 버전으로 build
docker images
를 이용하여 이미지 생성확인
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
semoapi 0.1 xxxxxxxxxxxx About an hour ago 725MB
docker run -d -p 8080:8080 IMAGE ID
를 이용하여 도커 이미지 실행
$ docker run -d -p 8080:8080 xxxxxxxxxxxx
docker ps
로 컨테이너 실행 확인
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
xxxxxxxxxxxx xx "java -Djava.securit…" About an hour ago Up About an hour 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp vigilant_saha