본문 바로가기

도커&쿠버네티스/도커

4. 도커(3)

0. 리눅스 기본 ( cat 리디렉션 ) 

  - cat에서 컨트롤+d를 사용하지 않고 저장

  - < 리디렉션을 이용해서 파일의 내용을 덮어씌우는 작업

 

  - signal

      (1) kill : 작업 중이던 것도 무조건 삭제

      (2) stop : 정상종료-작업하는 내용은 정상적으로 마무리

      (3) pause : 하던 작업도 멈춤

 

1. nginx

  - nginx 설치

 

 

  - nginx 실행

 

  - nginx 확인

 

 

  - http 서비스와 nginx서비스에서 사용할 각각의 index.html 파일을 생성

 

   -  httpd 서비스 실행, 컨테이너 생성 후 시작 

컨테이너 생성

 

컨테이너 실행 후 확인

  - http 설정파일 변경

bash 쉘로 진입
cat 명령어로 index.html 수정

                               ** <<END 의 경우 스크립트에서 많이 사용

변경됨을 확인

  - stop 명령어로 멈추고 start 로 재시작이 가능하다

stop 하여 컨테이너가 중지된 모습
start로 컨테이너를 재실행한 모습

 

  - 생성한 index파일을 컨테이너 안으로 복사

index_a.html을 컨테이너 내부의 index.html로 복사
변경됨을 확인

  - 컨테이너의 파일을 컨테이너밖으로 옮길 수도 있다.

 

  - nginx도 마찬가지로 미리 생성한 index_n.html 파일을 복사하여 index.html 파일 변경

index 파일 복사
사이트 변경을 확인

 

2. 도커 네트워크

  - 도커 브리지를 통해 도커 내부의 통신이 가능

  - 자동으로 DHCP 진행

  - 컨테이너를 중지하면 네트워크 카드도 삭제

 

  - NAT : IP와 1:1, SNAT을 사용( 내부 컨테이너가 외부로 나갈 때 host pc의 ip를 이용 )

  - NAPT : IP와 PORT 1:1

 

  - 네트워크 카드 생성 

네트워크 생성
생성 확인
확인

 

  - 생성한 네트워크 카드 사용

inspect로 확인하여보면 설정한 네트워크를 받아오는 것을 볼 수 있다.

 

  - cat 명령어를 통해 hosts에 n2와 ip 입력

  - 두개의 리눅스에서 /etc/hosts파일 변경

docker1에서 hosts 변경

 

docker1에서 hosts 변경

 

  - 위 과정을 진행하면 ping test시 host이름을 이용하여 가능

 

 

 

  - nginx와 httpd에는 ping 기능이 없기에 alpine을 이용해서 실습

a1에서 a2로 핑

  - alpine 쉘에 진입해서 hosts 파일 수정

a1 에서 진행

 

a2에서 진행

 

  - hosts 명으로 ping을 확인 

호스트명으로 ping이 원활히 작동

 

  - alpine으로 이름이 a3 컨테이너를 생성 후 컨테이너 내부의 /etc/hosts을 수정해서 컨테이너 외부에서 a1컨테이너

    이름으로 ping을 수행하는 스크립트 작성

         : 도커에서 --add-host 명령어를 통해 host를 추가할 수 있다. 여러개 가능.

test.sh 파일 생성
sh 명령어를 이용하여 스크립트 파일 실행

 

'도커&쿠버네티스 > 도커' 카테고리의 다른 글

6. 도커 : LoadBalancer 환경 구성  (0) 2022.05.30
5. 도커 (4) 볼륨  (0) 2022.05.30
3. 도커(2)  (0) 2022.05.26
2. 도커 설치 및 기본 사용법(1)  (0) 2022.05.19
1. 도커 기본 이론  (0) 2022.05.19