Docker Deamon
도커 구성
- 도커 클라이언트 : 도커 cli
- 도커 데몬 : 실제 도커 프로세스
개발자 --> { (도커 클라이언트) -- /var/run/docker.sock --> (도커 데몬) }
^
(원격호스트) ------- curl {ip}:{port}/version ------|
# ps aux | grep docker 로 도커 데몬(dockerd) 확인 가능
cf)
- 우분투는 도커 설치시 도커 데몬이 기본 실행된다.
- 레드헷 계열을 실행 시켜 줘야 한다.
# sudo service docker start 로 실행 가능
# sudo dockerd -H unix://var/run/docker.sock 로 실행 가능
- 데몬은 옵션을 수동 실행시 줄 수도 있지만 /etc/default/docker(우분투)에 설정 파일로 지정 가능
# sudo service docker stop 로 실행 중단
# sudo systemctl enable docker 로 SystemV init 등록
도커 Remote API
도커 데몬 수동 실행
$> sudo service stop docker
$> dockerd -H tcp://{dockerd 실행 호스트 IP}:2375 [-H unix://var/run/docker.sock]
- docker.sock은 도커 클라이언트가 사용하는 소켓.
- 따라서 없으면 remote api만 사용할 수 있고 docker 명령어 사용 불가.
확인
$> curl {dockerd 실행중인 IP}:2375/version --silent
TLS 적용법
도커 데몬은 remote 접속시 기본적으로 보안이 적용되어 있지 않다.
1) 데몬 실행
$> sudo dockerd --tlsverify \
--tlscacert={CA인증서_DIR}/ca.pem \
--tlscert={서버_인증서_DIR}/server-cert.pem \
--tlskey={서버_키_DIR}/server-key.pem \
-H tcp://{서버IP}:2376 \
-H unix:///var/run/docker.sock
2) 클라이언트에서 확인
$> docker -H {서버IP}:2376 --tlsverify \
--tlscacert={CA인증서_DIR}/ca.pem \
--tlscert={클라이언트_인증서_DIR}/cert.pem \
--tlskey={클라이언트_키_DIR}/key.pem \
version
3) CURL 확인
$> curl https://{서버IP}:2376/version \
--cacert {CA인증서_DIR}/ca.pem \
--cert {클라이언트_인증서_DIR}/cert.pem \
--key {클라이언트_키_DIR}/key.pem
cf) 인증서 만들기
댓글
댓글 쓰기