Docker 컨테이너 포트 목록

DockerBeginner
지금 연습하기

소개

19 세기 빅토리아 시대를 배경으로, 참가자들이 매개체 (Medium) 역할을 맡는 장면을 상상해 보세요. 배경은 신비로운 빅토리아 시대 저택이며, 매개체의 목표는 Dockerized 컨테이너의 비밀을 풀어서 저 너머의 영혼을 불러내는 것입니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 98%입니다.학습자들로부터 97%의 긍정적인 리뷰율을 받았습니다.

Docker 컨테이너 포트 탐색

이 단계에서는 Docker 컨테이너를 실행한 다음 노출된 포트를 탐색합니다.

먼저, 간단한 Nginx 컨테이너를 실행해 보겠습니다.

docker run -d -p 8080:80 --name my-nginx nginx

이제 컨테이너가 수신 대기 중인 포트를 검사합니다.

docker port my-nginx

예상 출력은 컨테이너의 포트와 호스트 머신의 포트 간의 매핑을 보여줍니다.

80/tcp - > 0.0.0.0:8080
80/tcp - > :::8080

사용자 지정 포트로 테스트

이 단계에서는 Docker 컨테이너 내에서 사용자 지정 Python 애플리케이션을 실행하고 사용자 지정 포트를 노출합니다.

app.py라는 파일에 간단한 Python 애플리케이션을 생성하는 것으로 시작합니다.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Docker!'

if __name__ == '__main__':
    app.run(host="0.0.0.0", debug=True)

Python 애플리케이션용 이미지를 빌드하기 위해 다음 내용으로 Dockerfile을 생성합니다.

FROM python:3.8
WORKDIR /app
COPY . /app
RUN pip install flask
EXPOSE 5000
CMD ["python", "app.py"]

이제 Docker 이미지를 빌드하고 사용자 지정 포트 5000 을 노출하여 실행하고, 노출된 포트를 호스트의 8081 로 매핑합니다.

docker build -t my-python-app .
docker run -itd -p 8081:5000 --name python-app my-python-app

컨테이너가 실행되면, 상단 메뉴에 웹 서비스 매핑을 추가하고 URL 을 방문하여 애플리케이션에 접근 가능한지 테스트합니다.

요약

이 랩에서는 참가자들이 Docker 에서 컨테이너 포트를 나열하는 방법을 탐색하고 이해하는 여정을 거쳤습니다. Docker 컨테이너 포트를 생성하고 검사함으로써 Docker 컨테이너의 네트워킹 기능에 대한 귀중한 통찰력을 얻었으며, 이를 통해 컨테이너 배포를 더 잘 관리하고 문제 해결할 수 있게 되었습니다.