본문 바로가기
새싹 한국정보보호산업협회 교육/교육

[도커] python 이미지 만들고 실행하기(vscode Remote -SSH 이용)

by 하루하루 나아가기 2024. 8. 20.
반응형

이전 수업에서는 도커허브에서 이미지를 가져와서 실행하는 방법을 알아봤다.

직접 빌드해서 실행하는 방법을 배웠다. 

 

MobaXterm 이용해서 ssh 접속을 했지만 이번에는 vscode를 통해 접속을 했다. 

 

vscode 에서 이용하려면 Remote - SSH을 설치해야 한다. 

 

 

vscode를 이용해서도 원격접속할 수 있다는 걸 처음 알았다. 

 

기본적으로 3개의 파일과 폴더 1개를 만들어 도커 이미지를 만들었다. 

폴더 : templates

파일 : .dockerignore , app.py, Dockerfile

파일구조

 

한개씩 알아가보자.

1. Dockerfile

도커 이미지를 만드는 명령어들이 있는 파일이다. 

 

다음과 같이 작성을 했다. 

1. 베이스 이미지 선택 (명령어 : FROM)

2. 필요로 하는 명령어 컨테이너 안에서 실행 (명령어 : RUN)

3. 나의 소프트웨어를 둘 공간 만들기(이게 나의 홈임) (명령어 : WORKDIR)

4. 나의 로컬 환경에 있는 파일 복사 (명령어 : COPY)

나중에 컨테이너 실행할 때, 실행될 명령어 (명령어 : CMD)

 

2. app.py

 

여기서 중요한 점은 환경변수를 적용한 것이다. 

이것은 나중에 docker run 에서 -e옵션에서 활용하게 된다.(색상을 동적으로 적용)

 

3. .dockerignore

로컬환경에 있는 파일 복사할 때 들어가지 않는 파일들을 설정해 놓는 파일이다. 

 

4. templates/index.html

 

화면에 나타나는 html파일이다.

 

이제 docker build 명령어에 대해 알아볼 차례이다. 

 

docker build . -t myapp:4.0

 

1. docker build : Docker 이미지를 생성하는 명령어다. 이 명령어는 Dockerfile을 기반으로 새로운 도커 이미지를 빌드한다. 

2. '.' : 현재 디렉토리를 가리킨다. 이 경우 'Dockerfile' 이 현재 디렉토리에 있어야 하며, 이 파일을 사용해 이미지를 빌드한다.

3. -t myapp:4.0 : 빌드된 이미지에 이름과 태그를 지정하는 옵셥이다. 

 

이제 실행을 해보자. 

docker run -d -p 80:5000 -e APP_COLOR=yellow myapp:4.0
docker run -d -p 5000:5000 -e APP_COLOR=green myapp:4.0

 

사용된 옵션은 

-d 데몬화(백그라운드 실행)

- p (포트바인딩)

- e(환경변수) --> app.py에서 설정한 환경변수

 

브라우저에 실행하면 다음과 같은 화면이 뜬다.

호스트 포트를 다르게 해서 다른 색깔로 실행하면 그 색이 뜬다. 

 

 

docker 이미지를 직접 빌드해보고 실행을 해보았다. 재밌는 실습이었다. 

도커는 끝났지만 앞으로의 과정이 더 기대된다.

반응형

댓글