중급 Docker
Mike Metzger
Data Engineer
EXPOSE 명령<number>, <number>/tcp, <number>/udp 형식 가능EXPOSE 80, EXPOSE 80/tcpdocker run의 -p 또는 -P가 여전히 필요합니다-P는 노출된 포트에 임시 포트를 자동 매핑합니다. 어떤 포트가 매핑됐는지는 docker ps -a로 확인합니다.-p<호스트 포트>:<컨테이너 포트>로 특정 포트를 지정할 수 있습니다.# Dockerfile
FROM python:3.11-slim
ENTRYPOINT ["python","-mhttp.server"]
# Docker 엔진에 알림:
# 포트 8000을 사용할 수 있어야 함
EXPOSE 8000
docker run pyserver
docker ps -a
CONTAINER ID IMAGE ... PORTS NAMES
8c3d320255ae pyserver ... 8000/tcp angry_chaum
docker run -P pyserver
docker ps -a
CONTAINER ID IMAGE ... PORTS NAMES
6bb458ef25da pyserver ... 0.0.0.0:55001->8000/tcp beautiful_lamarr
docker inspect는 많은 정보를 제공합니다docker inspect <id>
"NetworkSettings": {
"Bridge": "",
"Ports": {
"8000/tcp": [{
"HostIp": "0.0.0.0",
"HostPort": "55001"
}]
},
...
중급 Docker