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