초보 개발자

docker 이미지 만들고 docker hub에 올려보기 ! 본문

AI 웹개발 트랙 - 내배캠/9주차 ~

docker 이미지 만들고 docker hub에 올려보기 !

taehyeki 2022. 3. 7. 22:16

docker 이미지 만들기🐳

Dockerfile 이라는 파일을 만들면 docker image를 만들 수 있다.

간단한 flask 앱을 만든 후에 이를 이미지에 담아보자!!

Dockerfile

👉 FROM 이란 Docker image를 생성할 때 기본으로 사용할 base image를 적는 부분이다.

 

 👉 ADD src dst 호스트 머신에 있는 파일이나 폴더를, dst라는 위치에 저장한다. 이름이 같다면 dst에 .이라고 적어도 됨 근데 templates도 .로 하면 될까해서 해봤는데 안에 있는 내용들이 다 꺼내져 있었음

 

 👉 RUN script 는 script를 실행한다

 

👉 CMD 는 생성된 docker image를 실행할 때 자동으로 실행되는 커맨드이다.

 

 

이 후 아래의 명령어를 입력하면 image가 하나 생성이 된다.

docker build . -t app:verson1

. 은 현재 Dockerfile의 경로를 의미한다.

그리고 -t를 붙여서 태그를 만들어 줄 수 있다.

app:version1 이라고 했다면 app은 repository가되고 태그는 version1이 된다.

 

만약 앱이 수정이 된다면 app:version2 이런식으로 수정후 다시 이미지를 만들면 된다!

 

 

 

docker hub에 올리기🐳

https://hub.docker.com/

 

Docker Hub Container Image Library | App Containerization

We and third parties use cookies or similar technologies ("Cookies") as described below to collect and process personal data, such as your IP address or browser information. You can learn more about how this site uses Cookies by reading our privacy policy

hub.docker.com

docker 허브에 회원가입을 한 뒤에 깃 레포처럼 레포지토리를 하나 만들자 !!

 

하나 만들면 옆에 push하는 방법도 자세히 적혀있다.

 

먼저 터미널에서 docker login 을 하면 우리가 생성한 아이디와  비밀번호를 입력하라고 한다.

입력하면 login 성공! 이제 push할 수 있다. 반대로 로그아웃 하고싶다면 docker logout을 해주면 된다.

 

이 후에 우리가 아까 생성해둔 이미지를 push하면 되는데..

이미지 이름을 내아이디/내레포이름:태그 이런식으로 정해야 하는 것 같다.

이를 지키지 않고 push해보았는데 올라가지 않았지만 저기에 적힌대로 taehyeki/docker-ex:v1(태그는 맘대로)

이렇게 했더니 오류없이 잘 성공적으로 push된 것을 확인할 수 있다.

 

이 이미지를 다시 받아보자.

이를 위해서 기존에 있던 이미지를 삭제해보자

docker rmi taehyeki/docker-ex:v1 # rmi는 이미지를 삭제하는 명령어
docker pull taehyeki/docker-ex:v1 # pull을 하면 이미지를 받아올 수 있다.

 

이렇게 받아온 이미지를 실행해보자

docker run -d -p 8383:5000 --name manman taehyeki/docker-ex:v1

잘 실행이 되는 것을 확인할 수 있다 !!!

'AI 웹개발 트랙 - 내배캠 > 9주차 ~' 카테고리의 다른 글

docker network  (0) 2022.03.08
docker bind mount  (0) 2022.03.08
docker 컨테이너 편집  (0) 2022.03.07
docker network  (0) 2022.03.07
docker hub, pull, run  (0) 2022.03.07