-
『Docker』Docker 명령어 및 정리DevOps/Docker 2022. 8. 12. 11:50
타 블로그 복붙입니다. 링크 하단에 있습니다.
아래 모든 내용은 https://velog.io/@guri_coding/야-Docker이리나와-2-오류-및-명령어 의 내용을 복붙했습니다.
제가 한거 1도 없이 복사만 했습니다.
1. Docker Trouble Shooting
1.1 Docker push: manifest invalid
- 같은 태그의 Docker 버전을 다시 푸시했을 때 허가되지 않아 실패하는 경우
1.2 Docker pull: missing signature key
- 이슈를 해결하기 위해 Docker push 명령어를 다시 한 경우
1.3 Docker cp: Error response from daemon: not a directory
- symbol link 내에 컨테이너 폴더가 있는 경우
1.4 Find process id by container name
docker top $container_id 혹은 docer top $container_name
1.5 List resource usage by containers
docker stats
1.6 Get dockered storage driver
docker info 에서 Storage Drive 확인하기
1.7 docker-containerd-shim
- Docker engine, containerd, containerd-shim, runC로 구성된 Docker의 4가지 요소
2. 운영체제 별 Docker 설치 방법
2.1 Ubuntu
apt-get install docker.io
2.2 CentOs
2.3 Debian 10
3. Docker 시작 시 명령어
3.1 Ubuntu test env 시작
docker run ubuntu:16.04 /bin/echo hello world
3.2 Ubuntu 18.04 test env 버전이 다른 것일 때
docker run ubuntu:18.04 /bin/echo hello world
3.3 컨테이너 시작과 동시에 정지
docker run --rm ubuntu:18.04 /bin/echo hello world
3.4 debian9 test env의 경우
docker run debian:9 /bin/echo hello world
3.5 centos test env의 경우
docker run centos:centos6 /bin/echo hello world
3.6 Jenkins 서버
docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
3.7 nginx 서버
docker run -t -d -p 8080:80 --name nginx-test nginx
3.8 nexus 서버
docker run -d -p 8082:8081 --name nexus -v /data/nexus-data:/nexus-data sonatype/docker-nexus3
3.9 sshd 서버
docker run -t -d --privileged -p 5022:22 denny/sshd:latest /usr/sbin/sshd -D
3.10 ftp 서버
docker run -t -d -p 21:21 -p 20:20 -e USERNAME=${username} -e PASSWORD=${password} denny/proftproftpd:v1
4. Container 기본 명령어
4.1 Docker Container 실행하기
docker run -p 4000:80 imgname
4.2 Docker Container를 Detached 모드로 실행하기
docker run -d -p 4000:80 imgname
4.3 entrypoint 변경하면서 컨테이너 실행하기
docker run -t -d --entrypoint=/bin/sh "$docker_image"
4.4 실행 중인 컨테이너 들어가기
docker exec -it <container-id> sh
4.5 컨테이너 파일 시스템에 로컬 파일 업로드하기
docker cp /tmp/foo.txt mycontainer:/foo.txt
4.6 로컬 파일시스템에서 컨테이너 파일 다운로드 하기
docker cp mycontainer:/foo.txt /tmp/foo.txt
4.7 컨테이너 멈추기
docker stop <hash>
4.8 컨테이너 제거하기
docker rm <hash>
4.9 모든 컨테이너 제거하기
docker rm $(docker ps -a -q)
4.10 컨테이너 강제로 셧다운 하기
docker kill <hash>
4.11 도커 Hub에 로그인하기
docker login
4.11 이미지 Tag하기
docker tag <image> username/repo:tag
4.12 저장소에 태그된 이미지 푸시하기
docker push username/repo:tag
4.13 태그된 이미지 실행하기
docker run username/repo:tag
4.14 도커 이미지 생성하기
docker build -t username/image:test
5. Docker Cleanup(정리하기)
5.1 모든 컨테이너 삭제하기
- delete-all-containers.sh
5.2 사용하지 않는 도커 이미지 제거하기
- delete-unused-images.sh
5.3 이름이 없거나 사용하지 않는 이미지 제거하기
docker image prune -f <- -f는 filter의 의미로 조건을 넣어주면 됨
5.4 컨테이너와 연결되지 않거나 사용하지 않는 볼륨 제거하기
docker volume prune -f
5.5 특정 이미지 제거하기
docker rmi <imagename>
5.6 모든 도커 이미지들 제거하기
docker rmi $(docker images -q)
5.7 Orphaned docker volumes 제거하기
docker dvolume rm $(docker volume ls -qf dnagling=true)
5.8 죽은(dead) 컨테이너 제거하기
docker rm $(docker ps --filter status=dead -qa)
5.9 종료된(exited) 컨테이너 제거하기
docker rmn $(docker ps --filte
위 모든 내용은 https://velog.io/@guri_coding/야-Docker이리나와-2-오류-및-명령어 의 내용을 복붙했습니다.
제가 한거 1도 없이 복사만 했습니다.