Docker

이재철·2021년 10월 24일
0

Docker

목록 보기
1/1
post-thumbnail

이미지 관련

이미지 검색

docker search [IMAGE NAME]

이미지 다운로드

docker pull [IMAGE NAME]:[TAG]

이미지 확인

docker images

이미지 삭제

docker rmi [IMAGE NAME] -f(사용 중인 이미지 일 경우 -f를 붙이면 지워짐)

이미지 정보 확인

docker inspect [IMAGE NAME]

이미지 저장소 위치 확인

docker info

도커 용량 확인

du -sh /var/lib/docker/ #도커가 설치된 환경 용량 확인
명령어 실행 결과 : 2.0G /var/lib/docker/

du -sh /var/lib/docker/image/ # 도커 이미지에 대한 정보 저장 디렉토리
명령어 실행 결과 : 2.7M /var/lib/docker/image/

du -sh /var/lib/docker/overlay2/ # 도커 이미지의 파일 시스템이 사용되는 실제 디렉토리
명령어 실행 결과 : 2.0G /var/lib/docker/overlay2/

du -sh /var/lib/docker/containers/ # 도커 컨테이너 정보 저장 디렉토리
명령어 실행 결과 : 136K /var/lib/docker/containers/
  • image 안에는 imageDB와 LayerDB가 있는데

imageDB는 LayerDB에 대한 정보를 가지고 있고 LayerDB는 overlay2라는 정보를 가지고 있음
overlay2라는 변경사항 내용은 /l에 저장되어 있음.

컨테이너 관련

다운로드한 컨테이너 생성

docker create -p 80:80 --name [CONTAINER NAME][IMAGE]

컨테이너 생성 및 실행

docker run [options] image[:TAG|@DIGEST] [COMMAND] [ARG...]
  • 옵션
옵션설명
-ddetached mode 흔히 말하는 백그라운드 모드
-p호스트와 컨테이너의 포트를 연결 (포워딩)
-v호스트와 컨테이너의 디렉토리를 연결 (마운트)
-e컨테이너 내에서 사용할 환경변수 설정
--name컨테이너 이름 설정
--it-i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션 (컨테이너의 표준 입력과 로컬 컴퓨터의 키보드 입력을 연결)
--rm프로세스 종료시 컨테이너 자동 제거
--linknk 컨테이너 연결 [컨테이너 명:별칭]

컨테이너 시작

docker start [컨테이너 id 또는 name]

컨테이너 재시작

docker restart [컨테이너 id 또는 name]

컨테이너 접속

docker attach [컨테이너 id 또는 name]

컨테이너 정지

docker stop [컨테이너 id 또는 name]

컨테이너 삭제

docker rm [컨테이너 id 또는 name]

실행중인 컨테이너 확인

docker ps (-a를 주면 모든 컨테이너 확인)

유용하게 쓰이는 명령어(image : tomcat)

포트포워딩으로 실행

docker run -d --name tc -p 80:8080 tomcat

컨테이너 내부 셸 실행

docker exec -it [container name] /bin/bash

컨테이너 로그 확인

docker logs tc

호스트 및 컨테이너 간 파일 복사

docker cp <path> <to container>:<path>
docker cp test.txt tc:/

docker cp <from container>:<path> <path>
docker cp tc:/test.txt ./test.txt

docker cp <from container>:<path> <to container>:<path>

도커 컨테이너 모두 삭제

docker stop `docker ps -a -q`
docker rm `docker ps -a -q`

임시 컨테이너 생성

docker run -d -p 80:8080 —rm --name tc tomcat

빌드

  1. 이미지 내려받기
docker pull ubuntu
  1. 도커 파일 생성
mkdir test
cd test
vi dockerfile
  • 아래 코드 작성
FROM ubuntu:latest [이미지 명]

RUN apt-get update [명령어 실행, 이미지를 만들 때 실행]
RUN apt-get install -y net-tools [명령어 실행]
RUN apt-get install -y nano [명령어 실행]

CMD ["echo", "image created”] [명령을 실행, 컨테이너가 실행 될 때 실행]
  1. 빌드 하기
docker build -t my-ubuntu .
  1. 이미지 확인
docker images
  1. 실행
docker run -it my-ubuntu bash

도커 이미지 푸시

docker login
docker tag my-ubuntu [docker id]/my-ubuntu[:tag] ex) :v2.0   (대괄호는 뺴고 작성)
docker images
docker push [docker id]/my-ubuntu

이미지 히스토리 확인

docker history [docker id]/my-ubuntu

0개의 댓글