docker run -it ubuntu
apt update
apt install nginx vim net-tools -y
# 실행
service nginx start
# 정지
service nginx stop
# 재시작
service nginx restart
/etc/nginx/
경로에 존재./etc/nginx/conf.d/
디렉토리 내부에 *.conf
형태로 configuration file을 작성해서 server블럭 및 상세내용을 작성하면 된다./etc/nginx/conf.d/server.conf
의 예시 코드이다.172.17.0.2
의 ip주소를 갖는 것을 확인할 수 있다.docker network create -d bridge [브리지 이름]
172.17.0.2
로 할당이 되어있었는데, 이는 docker의 기본 브리지의 ip대역이 172.17.0.0
이고, 컨테이너 생성 시 이 브리지에 자동으로 연결이 되기 때문이다.docker network connect [브리지 이름] [컨테이너 이름]
브리지 하나 생성 전과 후 네트워크 장비 확인
브리지와 컨테이너 연결 전 컨테이너의 네트워크 인터페이스
브리지와 컨테이너 연결
브리지와 컨테이너 연결 후 컨테이너의 네트워크 인터페이스
172.18.0.2
인터페이스가 하나 더 생긴 것을 확인할 수 있다.172.17.0.0
, 172.18.0.0
, ... 순으로 정해진다는 것도 알 수 있다.ss -lt
명령어를 사용해서 현재 listening중인 tcp소켓을 확인 가능하다.my_bridge
브리지에 연결한다.172.18.0.0
대역 네트워크에 연결되었음을 확인할 수 있다.apt install curl
처음 만들었던 컨테이너를 호스트, 두 번째로 만든 컨테이너를 클라이언트라고 부를 것이다.
기본 GET 메소드를 통해서 통신을 해 볼 것이다.
테스트용으로 /test.txt
파일을 서버 컨테이너에 하나 만들어 놓는다. (파일 내용은 아무거나)
호스트의 nginx configuration file을 수정한다.
다시 nginx를 재시작한다.
클라이언트에서 curl로 요청을 보내본다.