Docker port forwarding/ 입구 지식

25gStroy·2022년 1월 10일
0

Docker

목록 보기
1/20

도커를 사용하기 위해서는 기본적으로 네트워크에 대한 이해가 필요합니다.

도커를 이용해서 웹서버를 사용할때는 웹서버가 컨테이너에 설치가 된다.
이 컨테이너가 설치된 운영체제를 Host라고 한다. 하나의 host에는 여러게의 컨테이너가 있을수 있다.
그럼 host안에 컨테이너와 웹브라우져를 연결해 줄려면 어떻게 해야할까?
예를 들자면

docker run -p {호스트의포트}:{컨테이너의 포트} httpd

와 같이 컨테이너 내부에 서버포트와 웹브라우져의 포트를 명시해줘야한다.
이렇게 연결된 포트로 신호를 전달하는것을 port forwarding 이라고 하는것 입니다.

도커에서 볼륨은 컨테이너와 특정폴더를 공유하는것을 말한다.

도커허브

  • 앱스토어에서 다운받아서 프로그램을 다운받는것처럼
  • 도커허브에서 이미지를 다운받는것이다.
  • 그리고 프로그램이 실행될때 프로세스가 실행되는것처럼
  • 도커에선 컨테이너가 실행된다.

도커허브에서 이미지를 다운받는것이 pull
해당 이미지가 실행되는것이 run이다
run을 하게 되면 이미지가 컨테이너가 되고 컨테이너가 실행되면서 컨테이너 내부에 실행되도록 조치돼있는 프로그램이 실행된다.

이미지 다운받기

  • 기본적으로 이미지를 다운받을때는 도커허브에서 다운받으면 된다.

이미지를 도커허브에서 다운받을때 오피셜이미지마크가 붙어있는것은
도커에서 관리하고있는 공식적인 이미지라는 뜻이다

https://docs.docker.com/
위 사이트에가면 도커에대한 사용설명서가 명시돼 있다.

도커 cli창 열기

docker exec

지속적인 컨테이너 연결 명령어

docker exec -it [컨테이너명] /bin/sh

호스트와 컨테이너의 파일시스템 연결

도커안에서 컨테이너를 수정하게되면 단점과 위험한 점이생긴다.

  • 힘들게 작업했는데 컨테이너를 지우게되면 다 날라간다.

위와같은 단점때문에 생겨난 방법이
Host에서 컨테이너에 수정할파일을 연결해서 host영역에서 연결된 파일을 작업하는 것이다.

  • 컨테이너의 파일시스템과 호스트연결 명령어
docker run -p 8888:80 -v {연결시키는 호스트의 디렉토리 경로}:{연결시키려는 컨테이너의 파일시스템 경로} {이미지이름}
profile
애기 개발자

0개의 댓글