container를 외부에 노출하기

2020. 1. 22. 15:07devops/docker

container도 가상머신과 똑같이 ip를 할당받습니다. docker의 container의 경우에는 172.17.0.x를 순차적으로 할당받습니다. 

컨테이너를 생성한 후 ifconfig로 확인하면 아래와 같이 ip가 할당된 것을 확인할 수 있습니다. 

 

현재와 같은 상황이면 외부에서 접근할 수 없습니다. 외부에 컨테이너의 어플리케이션을 노출시키려면 et0의 ip와 포트를 host의 ip와 포트를 바인딩 시켜야 합니다. 

docker run -i -t -p 80:80 --name externalContainer ubuntu:14.04

-p 호스트의 포트 : 컨테이너의 포트 호스트의 특정 IP를 사용할 수도 있다. 

192.168.0.100:7777:80과 같이 사용할 수 있다. apache는 일반적으로 80번 포트를 사용하므로 apache를 사용해보겠습니다. 

apt-get update 
apt-get install apache2 -y 
service apache2 start

명령얼어를 입력한 다음 url에 localhost:80으로 입력하면 apache2 index.html 파일이 보인다. 

호스트머신의 80번포트로 접근하여 도커의 80번에 접촉 도커의 80번은 apache2가 사용중이기 때문에 올바르게 apache2를 사용할 수 있다. 만약 docker의 port를 80이아닌 다른 번호로 바인딩해주었다면 올바르게 작동하지 않았을 겁니다. 

 

'devops > docker' 카테고리의 다른 글

docker 컨테이너 log 남기기  (0) 2020.01.26
docker 네트워크  (1) 2020.01.22
docker 컨테이너 사용해보기  (0) 2020.01.21
docker image, container  (0) 2020.01.20
docker 설치-macOS  (0) 2020.01.20