docker create <image-name>
docker create redis
docker-hub 에서 자동으로 다운받아옴
docker start -a <container-name> or <container-id>
docker start -a my-redis
docker run <options> <image-name> <command>
docker run redis ls
docker run --name my-redis -d -p 6379:6379 --rm redis ls
docker
: docker client run
: 컨테이너 생성 및 실행 ( 없으면 docker-hub 에서 자동으로 다운받아옴 )<image-name>
: 컨테이너를 생성하기위한 이미지 <command>
: <command>
의 의미말고 현재 자리를 의미하며, 특정 명령어를 사용하면 기존에 이미지가 가지는 실행시 명령어를 무시하고 현재 위치에 적은 명령어를 실행함<options>
: docker run
실행시 추가로 부여할 옵션들-p
: 포트맵핑 ( 내컴퓨터에서접근할포트:컨테이너에서열어줄포트 )-d
: 컨테이너 실행후 바로 밖으로 나옴 ( node실행시 대기하는데 -d
넣어주면 바로나옴 )--name
: 생성할 컨테이너의 이름지정 ( 초기값은 랜덤문자열 )--rm
: 컨테이너 실행종료시 삭제dokcer ps <option>
ps
: process status<option>
: docker ps를 실행시 추가로 부여할 옵션들
-a
: all을 의미-l
: 마지막에 실행한 명령어// docker ps 명령어 입력시 보여주는것들
1. CONTAINER ID : 컨테이너의 아이디
2. IMAGE : 컨테이너에 사용한 이미지명
3. COMMAND : 컨테이너 시작시 실행한 명령어
4. CREATED : 컨테이너 생성된 시간
5. STATUS : 컨테이너의 상태 ( up, exited, pause )
6. PORTS : 컨테이너가 개방한 포트와 호스트에 연결될 포트
7. NAMES : 컨테이너에 지정한 이름
docker stop <container-name> or <container-id>
docker stop my-redis
docker kill <container-name> or <container-id>
docker kill my-redis
docker rm <option> <container-name> or <container-id>
docker rm -f my-redis
-f
: 컨테이너가 실행중이라면 종료시키고 삭제dokcer rm docker ps -a -q
docker rmi <image-name>
docker rmi redis
docker system prune
docker exec <option> <container-name> or <container-id> <command>
docker exec -it my-redis bash
-i
: interacive-t
: terminal-it
: -i
와 -t
를 합쳐서 적은것으로 실행중인 컨테이너 내부의 터미널에 접속하는 것<command>
: 실행된 컨테이너 내부에서 실행시킬 명령어sh
, bash
, zsh
, power shell
등등으로 터미널에 접근가능-it
의 의미는 아직 무슨의미인지 정확하게 모르겠습니다.