기타/Docker

🎯 Goals Docker 에서 사용하는 네트워크 모드 4가지를 알아본다. host - container 간 통신과 차이점을 안다. container 간 통신하는 법을 알아본다. Docker Netowrk Mode 4 모드라고 했지만 --network, --net 의 '이름'이기도 하다. bridge (default) 별도의 네트워크 설정이 없는경우 이 값으로 지정된다. docker0 으로 도커 설치시 기본 내장된다. 172.17.0.1 을 Gateway 로 갖고있다. 이 모드로 추가되는 컨테이너는 veth 로 컨테이너 외부와 (보통 bridge와) 연결되고, eth는 내부 Network Interface 라고 보면된다. veth Virtual Network Adapter로 Virtual Ethernet..
실습 내용 Host OS 에서 nginx 를 설치하고 apache docker container 3개를 띄워 로드벨런싱해본다. 무엇을 배우나? Container Load balancing Container Network 설정 Q & A Q1. Nginx on Container vs Host OS? A1. 둘다 가능함. 단 Container 로 띄울거면 access-log 를 어디에 저장할지 잘 생각해야함. 공통으로 사용하는 volume 추천. Q2. How to communicate among contaienrs on network? A2. Many ways. Use bridge network (docker0) set custom docker bridge network with `docker networ..
🎯 What's target? Sometimes we neeeds share and backup & restore among multiple containers. It's time to use volume. Volume path according to Host OS Host OS path Linux /var/lib/docker (standard) Windows ?? (VM) Mac ~/Libfrary/Containers/com.docker.docker/Data/vms/0/tty (VM) Windows, Mac both use Virtual machine based on linux since docker use default linux mechanism Step by Step using data conta..
도커는 유니온 파일 시스템을 사용하고 호스트 OS와 컨테이너 앱에서 발생하는 데이터를 공유 데이터의 영속성과 지속성을 보장하기 위해 (컨테이너는 삭제시 앱 내에서 발생한 데이터가 사라짐) 데이터와 비즈니스 로직을 분리하기 위한 매커니즘이다. volume 은 어디 생성되나? Linux 에서는 기본적으로 호스트 OS의 `/var/lib/docker/volumes` 에서 관리한다. Windows, Mac 에서는 해당 경로에서 찾을 수 없다. 이는 의도한 것으로 사실 volume 은 호스트 OS에서 직접 읽고 쓰는 작업을 위한 용도가 아니라, 컨테이너에서 쓸 영속 데이터를 관리하는 용도이기 때문이다. 호스트 OS에서 직접 쓸 데이터(ex. source code)는 volume 이 아닌 bind mount 를 쓰..
Why to use 여러 컨테이너를 하나의 yaml 파일로 관리하기 위해. (IaS) When to use? 여러 container 를 하나의 그룹(서비스)으로 실행 로컬호스트 및 개발 단계 보통 Production 으론 쓰지 않는다. Localhost 범위 내에서만 동작하기 때문 여러 host 에서 컨테이너 운영이 필요하면 kubernetees 를 쓰는게 맞다. 특징 Dockerfile 을 대체하지 않는다. image, container 를 대체하지 않는다. 자동으로 network bridge 를 생성해준다. => DNS resolution 을 기본 제공한다. => service name 으로 hostname 을 사용할 수 있다. How to install? Windows, Mac => Docker ..
Name Description image 상태 저장파일 container image 를 instance화 한것. (running state) image 는 상태를 저장한 프로그램이고 container 는 image 를 실행시킨 프로세스와 같다. 대표 명령어를 보자 아래 명령어는 이미 설치된 image 파일의 이름으로부터 컨테이너를 실행시키는 것이다. $ docker run [image-file-name] --name [container-name] # docker: docker engine program # run: This subcommand is used to create and run a docker container from 'image' Dockerfile 텍스트 문서로 image 를 흉내내기 위..
M_Falcon
'기타/Docker' 카테고리의 글 목록