
이 docker desktop을 실행해주고 로그인을 진행하면 된다!
(window의 경우 이 docker desktop이 없으면 동작하지 않는다.)
이제 cmd창에서 docker login을 사용해 로그인이 되어있는지 확인하고 되어 있지 않다면 로그인을 진행해주면 된다.
이때 id는 docker의 닉네임을 작성해주면 된다. (가입한 이메일 아님)
로그인이 완료가 되면 아래와 같이 뜰 것이다.


사진과 같은 위치에 파일을 생성해주면 된다. 파일을 생성할때 Dockerfile이라고 이름을 붙이면 된다. (확장자 없음)
FROM adoptopenjdk/openjdk11
LABEL authors="authors_name"
ARG JAR_FILE=build/libs/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

docker build -t [YOUR_NAME]/[APP_NAME] .
이런 화면이 뜨면 성공이다!!
docker images로 올라간 imgae들을 확인할 수 있다.
docker push [USER_NAME]/[APP_NAME]
지금 까지의 작업들은 로컬에서 진행되었기 때문에 docker hub로 push를 해야 ec2에서 pull을 통해 사용할 수 있다.
docker pull [YOUR_NAME]/[APP_NAME]:버전
항상 최신 버전을 받고 싶다면 버전에 latest를 작성하면 된다!
docker create -i -t --name {컨테이너 이름} {YOUR_NAME}/{APP_NAME}:버전
{YOUR_NAME}/{APP_NAME}:버전이미지를 사용하여 {컨테이너 이름}의 컨테이너를 만드는데 컨테이너와 상호 입출력을 가능하게 하겠다는 명령어(-i, -t)이다.
docker start {컨테이너 이름}
docker run <OPTIONS> --name{컨테이너 이름} -p 8080:8080 {이미지 이름}:버전
-p 옵션을 사용하여 port번호를 지정해서 실행할 수 있다.
해당 이미지를 컨테이너가 사용중일때는 삭제할 수 없음
단일 삭제 :
docker images rm {이미지ID}
모두 삭제 :docker rmi $(docker images -q) -f
docker stop {컨테이너 이름 or 컨테이너ID}
docker rm {컨테이너 이름 or 컨테이너ID}