본 문서는 2022년 5월 1일 에 작성되었습니다.
구분 | 타이틀 | 명령어 항목 | 대상 | 설명 | 예시 |
---|---|---|---|---|---|
0 | 도커 기초 | 1. docker run 2. docker ps | 이미지 이름 - | 컨테이너 설치/실행 컨테이너 리스트 출력 | O O |
1 | 도커 생명 주기 | 1. docker ceate 2. docker start 3. docker stop 4. docker kill 5. docker rm | 이미지 이름 컨테이너 이름 / 아이디 컨테이너 이름 / 아이디 컨테이너 이름 / 아이디 컨테이너 이름 / 아이디 | 컨테이너 설치 컨테이너 실행 컨테이너 중지 컨테이너 중지 (즉시) 컨테이너 삭제 | X O O O O |
2 | 도커 제어 | 1. docker exec | 컨테이너 아이디 | 컨테이너에 명령어 전달 | O |
docker run 이미지 이름
해당하는 이미지 이름
을 설치 / 실행하게 됩니다.
아래 옵션을 붙일 수 있습니다.
docker ps
실행 중인 컨테이너를 출력 합니다.
{{.칼럼명}}
으로 기본 폼에 해당하는 칼럼명
만 출력하도록 할 수 있습니다.\t
으로 출력문의 좌우 간격을 벌릴 수 있습니다.docker ps --format name \t {{.Name}} \t iamge {{.Image}}
docker ps -a
docker start 컨테이너 이름/아이디
해당하는 컨테이너 이름/아이디
를 실행하게 됩니다.
아래 옵션을 붙일 수 있습니다.
docker stop 컨테이너 이름/아이디
해당하는 컨테이너 이름/아이디
의 모든 프로세스 종료 후에 컨테이너를 중단합니다.
내부적으로 다음 프로세스에 따라서 진행됩니다.
컨테이너 정리하는 시간, Grace Period, 동안 대기
컨테이너 중지
docker kill 컨테이너 이름/아이디
해당하는 컨테이너 이름/아이디
의 모든 프로세스를 무시하고 컨테이너를 중단합니다.
내부적으로 다음 프로세스에 따라서 진행됩니다.
컨테이너 중지
docker rm 컨테이너 이름/아이디
해당하는 컨테이너 이름/아이디
를 삭제합니다.
단, 실행 중인 컨테이너는 우선적으로 중지 해야 합니다.
다음과 같이 사용할 수 있습니다.
컨테이너 이름/아이디
이미지 아이디
구분 | 명령어 항목 | 대상 | 설명 |
---|---|---|---|
1 | docker rm | 컨테이너 이름 / 아이디 | 해당하는 컨테이너 를 삭제합니다. |
2 | docker rm `docker ps -a -q` | - | 모든 컨에티너 를 삭제합니다. |
3 | docker rmi | 이미지 아이디 | 해당하는 이미지 를 삭제합니다. |
4 | docker system prune | - | 모든 컨테이너 / 이미지 를 삭제합니다. |
docker exec 컨테이너 이름/아이디
추가 명령어
다음과 같이 사용할 수 있습니다.
컨테이너 이름/아이디
ls컨테이너 아이디
추가 명령어
컨테이너 아이디
sh/bash/zsh/power아래와 같은 옵션을 사용할 수 있습니다.
Interactive Terminal, 컨테이너 접근 후 추가적인 명령어 전달 가능
컨테이너 접근 후 해당 컨테이너의 shell 오픈
sh
를 사용레디스 아이디
redis-cli다음의 프로세스로 진행해볼 생각입니다.
구분 | 설명 |
---|---|
redis run alpine | alpine 설치 / 실행 |
redis ps | 컨테이너 리스트 출력 |
redis exec -it alpine-아이디 echo "hello" | "hello" 출력하기 |
redis exec -it alpine-아이디 sh | alpine 컨테이너 용 Shell 오픈 |
echo "hello" | "hello" 출력하기 |
ls | 폴더 구조 출력하기 |
touch new-file | new-file 이름으로 파일 만들기 |
export hello=hi | 환경변수 이름=값 설정하기 |
echo $hello | 설정된 환경변수 $이름 출력하기 |
Ctrl + D | 컨테이너 Shell 종료 |