반응형
Docker 이해하기 위한 세상에서 제일 간단한 프로그램을 만들어 보자.
"Hello, Docker World!" 출력하기
Docker를 한 줄로 정의하면, 개발, 실행 환경과 관계없이 언제 어디서든 프로그램을 실행할 수 있고 같은 결과를 가져오는 일종의 가상환경이다. 개발환경과 실행가능한 바이너리/라이브러리까지 모두 하나의 이미지로 만들고 필요할 때 도커에 컨테이너로 구성해 사용한다. 일반적인 가상화 컴퓨팅보다 훨씬 효율적으로 자원을 사용하며 사용법이 간단한다.
실제 만들어 보자.
1. Docker 설치하기
https://www.docker.com/ 접속해 자신의 OS에 맞는 설치파일을 다운로드하여 설치한다.
2. docker에서 실행할 간단한 프로그램을 만들자.
print("Hello, Docker World!")
파이썬 소스로 만든 "Hello~" 출력문이다. hello.py로 저장하고 py hello.py로 실행해 보자.
3. docker 이미지 설정파일 작성
FROM python:3.8-slim
WORKDIR /app
COPY hello.py .
CMD ["python", "hello.py"]
dockerfile 이름으로 파일을 생성하고 hello.py파일을 실행하게 한다. docker에 pyhone설치, 워킹디렉터리, 대상소스 복사해 python으로 실행하게 한다.
4. docker 이미지 만들기
docker build -t hello-docker .
- -t: 이미지의 태그(이름)를 지정
- .: 현재 디렉토리의 Dockerfile 사용
- 실행 결과: "hello-docker"라는 이름의 이미지가 생성됨
docker images
- 로컬에 있는 모든 도커 이미지 목록을 보여줌
- hello-docker 이미지가 목록에 표시됨
5. docker 이미지로 컨테이너를 실행해 보자.
docker run hello-docker
- 생성한 이미지로 컨테이너를 실행
- "Hello, Docker World!" 메시지가 출력됨
- 프로그램 실행 후 컨테이너는 자동으로 종료됨
docker ps -a
- 모든 컨테이너 표시 (중지된 것 포함)
- 방금 실행했던 hello-docker 컨테이너가 'Exited' 상태로 보임
6. 컨테이너 삭제하기
docker rm [컨테이너ID]
7. 이미지 삭제하기
docker rmi hello-docker
- hello-docker 이미지를 삭제
반응형
'코드리뷰' 카테고리의 다른 글
오늘의 뉴스 헤드라인 추출하기 - 도커와 파이썬 크롤러 (2) | 2024.12.14 |
---|---|
쿠바네티스 hello world 페이지 만들기 (0) | 2024.12.08 |
내 PC에 도커와 쿠바네티스 구축하기 (1) | 2024.12.01 |
댓글