Docker

Docker 기본 명령어

솔이23 2020. 6. 1. 17:52

Docker 명령어 정리

docker hub에서 이미지 설치

docker pull [등록된 이미지]

이미지 리스트 확인

docker images

Docker에 생성된 이미지로 컨테이너 생성

  • 옵션 설명

    [-d] : 백그라운드 실행
    [-p] : 외부포트:내부포트(docker 내 포트) # 내부포트를 외부포트로 맵핑(포트포워딩)
    [-v] : volume 설정 # 파일 경로 맵핑
    [-e] : environment 환경변수 설정
    [--name] : 컨테이너 이름 설정
    [--restart] : always
    [이미지 NAMES|ID]:버전 # latest는 최신버전 

gitlab 생성

docker run  -d 
            --name gitlab
            -p 8989:8989 -p 2200:22 
            --restart always 
            -v /home/gitlab/config:/etc/gitlab 
            -v /home/gitlab/logs:/var/log/gitlab 
            -v /home/gitlab/data:/var/opt/gitlab 
            gitlab/gitlab-ce:latest

tensorflow 생성

docker run  -it 
            --name face
            -p 8888:8888 -p 5000:5000 
            -v /home/yu:/yu 
            -v /tmp/.X11-unix:/tmp/.X11-unix 
            -e DISPLAY=$DISPLAY  
            tensorflow_yu:v3

컨테이너 상태 확인

실행 중인 컨테이너만 확인

docker ps

모든 컨테이너 확인

```
docker ps -a
```

컨테이너 안으로 들어가서 실행

docker exec -it [컨테이너 NAMES|ID] bash

컨테이너를 이미지로 만들기(COMMIT)

docker commit [컨테이너ID] [이미지이름]

docker 백업 전 컨테이너 상태 저장

docker commit -p [컨테이너ID] [NAMES]

이미지 백업하기 (SAVE)

docker save -o [파일이름].tar [이미지NAMES|ID]

이미지 복원하기 (LOAD)

docker load < [백업한 파일이름].tar

컨테이너 실행 중단

docker stop [컨테이너 NAMES|ID]

삭제 (컨테이너 실행 중단 선행)

  • 컨테이너 삭제

    docker rm [컨테이너 ID]
    docker rm $(docker ps -a -q) # exited된 도커 한번에 종료
  • 이미지 삭제

    docker rmi [이미지 ID]

로그 확인

docker logs

컨테이너 올라오지 않은 상태에서 컨테이너 수정

# 해당 컨테이너에 있는 config파일을 현재 디렉토리에 복사 (컨테이너 밖에서 수행)
docker cp [컨테이너ID]:/usr/local/apache2/httpd.conf .

컨테이너 이름이 같은 상태에서 프로젝트 구분해서 COMPOSE 파일 올리기

docker-compose -f docker-compose-front.yml -p [구분자] up
docker-compose -f docker-compose-front.yml -p h2 up

docker-compose -f docker-compose-front.yml -p h2 down
docker-compose -f docker-compose-front.yml -p h2 down

COMPOSE 파일 캐시 없이 빌드

docker-compose build --no-cache [service]

COMPOSE 파일 UP

[compose파일명] up

COMPOSE 다른 파일명으로 UP

docker-compose -f [컴포즈파일명] up

COMPOSE 파일 DOWN

[compose파일명] down