도커를 사용하기 위해서는 기본적으로 네트워크에 대한 이해가 필요합니다.
도커를 이용해서 웹서버를 사용할때는 웹서버가 컨테이너에 설치가 된다.
이 컨테이너가 설치된 운영체제를 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 {연결시키는 호스트의 디렉토리 경로}:{연결시키려는 컨테이너의 파일시스템 경로} {이미지이름}