2가지 종류
Community Edition | Enterprise Edition
community Edition 은 공짜이고 Enterprise Edition 은 이미지 관리, 보안 등 여러 서비스들을 유료로 제공해준다.
MAC 도커 설치 2가지 방법
1. 도커 툴바를 이용하는 방법
2. 맥 도커 데스크탑을 이용하는 방법(최신)
두가지 방법다 Linux kernel 위에 도커를 돌리는 방법으로 작동하지만, 도커 툴바는 오라클 Virtual Box 을 사용하지 않고 Hyper Kit 가상화 기술을 사용한다.
run 명령어
docker run ngnix
image 로부터 conatiner 를 인스턴스화 시킨다. 만약 image 가 docker host 에 없다면 hub에서 pull 받는다.
run -tag
docker run [이미지 이름]:4.0
특정한 버전을 받고 싶다면 tag 를 입력해주면된다. 태그를 입력하지 않으면 기본적으로 제일 최신의 버전을 다운받는다. 최신 버전의 정보는 docker hub 에서 조회해볼 수 있다.
run-STDIN
docker -it [이미지 이름]
input 값을 입력받는 스크립트 파일을 이미지로 만들었을때 컨테이너를 interactive 하게 만드려면 -i (input)과 -t (terminal) 을 넣어 주어야한다.
run - PORT mapping
docker -p 80:8000 [이미지 이름]
웹서버를 컨테이너 안에 담게 되면 컨테이너 포트가 8000이 되기때문에 외부에서 접근하려면 외부포트와 컨테이너 포트를 연결해주어야한다. 외부 포트를 80으로 설정하고 8000번인 컨테이너 포트를 연결하는 명령어.
run - Volume mapping
MySQL 컨테이너를 운용한다고 했을때 모든 생성, 수정, 삭제 작업은 컨테이너 내에서만 적용된다. 즉, 컨테이너는 고립된 환경이며 컨테이너를 삭제할시 모든데이터도 함께 삭제된다. 만일의 경우를 대비해 로컬에 데이터를 백업하고 싶다면
ps 명령어
docker ps
현재 인스턴스화 된 모든 컨테이너 리시트를 보여준다.
docker ps -a
모든 컨테이너들의 리스트를 보여준다. *프로세스가 끝난 컨테이너들은 모두 여기서 확인할 수 있다. 컨테이너 생명주기는 컨테이너 안의 프로세스와 같다.
inspect
docker inspect [컨테이너 ID]
만약 ps 명령어보다 자세한 명령어를 보고 싶다면 inspect 명령어를 사용하면된다. Json 포멧으로 결과가 출력된다.
logs 명령어
docker logs [컨테이너 ID]
해당 컨테이너에대한 로그를 보여주고 싶을때 사용한다.
stop 명령어
docker stop [컨테이너아이디]
인스턴스화된 컨테이너 정지하기
rm 명령어
docker rm [컨테이너ID]
컨테이너 삭제
images 명령어
docker images
만들어져 있는 모든 이미지 리스트 보기
rmi 명령어
docker rmi [컨테이너ID]
이미지 삭제, 삭제하기 전에 해당 이미지에 의존하고 있는 컨테이너를 모두 삭제해야한다.
pull 명령어
docker pull [컨테이너 이름]
도커 Hub 에서 바로 pull 받아와서 컨테이너를 사용
exec 명령어
docker exec [컨테이너 ID] cat /etc/hosts
컨테이너 안의 파일을 보고 싶을때 사용한다.
attach & detach 명령어
docker run [컨테이너 ID]
컨테이너를 foreground 에서 실행한다
docker run -d [컨테이너 ID]
컨테이너를 background에서 실행한다.
docker attach [컨테이너 ID]
컨테이너를 다시 foreground 로 가지고 오고싶을때 사용한다.
docker labs 를 통해 브라우져에서 연습할수 있다
'CONTAINER > docker' 카테고리의 다른 글
도커 파일만들기 nodejs (0) | 2021.05.30 |
---|---|
[docker] 가슴이 docker docker... (0) | 2021.02.27 |