docker 기본 개념 정리

noname2048·2021년 2월 26일
0

초록

이글은 docker를 배우면서 이리저리 적은 메모입니다. docker 에 대해 기본 개념을 잡고싶으신 분은 다른 자료를 확인해주세요

참고

재즐보프:왕초보도 따라하는 도커 기초 강의
킴루코:Dockerfile에서 EXPOSE와 "docker run -p 명령의 차이점"
https://docs.docker.com/engine/reference/builder/
https://www.daleseo.com/docker-compose-django/
최고의 Dockerfile 작성을 위한 몇가지 습관들

Registry -> pull -> Image
Registry <-push <- Image

Image -> create -> container
Image <- commit <- container

Container(stop) -> start -> Container(start)
Container(stop) <- stop <- Container(start)

Registry -> Image -> container(stop) -> container(start) : run
container(stop) -> none(delete) : rm
image -> none(delete) : rmi

sudo docker run -d(데몬) --name tc tomact
sudo docker -p 88:80 (호스트):(컨테이너)

inspect: 이미지 정보 확인
docker inspect <imagename>
history:
docker history nginx

/var/lib/docker
image/(imagedb+layerdb)
overlay2/l(실질적인 정보)

컨테이너 내부 셸 실행
docker exec -it tc(name) bin/bash

로그보기
docker logs tc # stdout stderr

컨테이너 간 파일복사

docker cp <path> <container>:<path>
docker cp <container>:<path> <path> 
docker cp <container>:<path> <continaer>:<path>

임시 컨테이너
docker run --rm

docker run -d --name tc -p 80:8080 consol/tomcat-7.0
docker exec -it(input&terminal) tc /bin/bash(쉘)

docker stop `docker ps -a -q`
docker run --name ms -e MYSQL_ROOT_PASSWORD=

패쓰워드를 평문으로 지정하라는 건가요? 네..

  1. 볼륨 마운트 옵션 사용해 로컬 파일 공유하기
docker run -v <호스트경로>:<컨테이너내경로>:<권한>

/tmp:home/user:ro
ro: 읽기전용
rw: 읽기 및 쓰기

docker run --rm -p 10000:8888 -e JUPYTER_ENABLE_LAB=yes -v "$PWD":/home/jovyan/work:rw jupyter/datascience-notebook

12 도커 이미지 푸시와 히스토리

docker login
docker tag echo_test <namespace>/echo_test
docekr images
docker push <namespace>/echo_test
docker history <namespace>/echo_test

Dockerfile
EXPOSE 는 -P 옵션에서 랜덤으로 매칭
-p로 직접열어주자

profile
설명을 쉽게 잘하는 개발자를 꿈꾸는 웹 개발 주니어

0개의 댓글