도커 (2): 간단 명령어

김현진·2020년 9월 26일
0

도커

목록 보기
2/7
post-thumbnail

따라하며 배우는 도커와 CI환경을 보며 복습겸 블로깅을 하니 참조하세요.

도커 명령어 및 도커 컨테이너의 생명주기

docker ps

는 Process Status의 약자로 현재 실행되고 있는 컨테이너 목록들을 볼 수 있고, docker ps -a을 통해서 모든 컨테이너 목록들을 볼 수 있습니다.

생명주기

docker create 이미지 이름
docker start 컨테이너 아이디/이름
docker run = docker create + docker start 이렇게 보면된다.
docker stop = 실행되고 있는 프로세스까지 진행하고 종료
docker kill = 즉시 종료
docker rm 아이디/이름 = 컨테이너 삭제
docker rm 'docker ps -a -q' = 모든 컨테이너를 삭제
docker rmi 이미지id = 이미지 삭제
docker system prune
=> 한번에 사용하지 않는 컨테이너,이미지,네트워크 모두 삭제하고 싶을때/ 도커를 쓰지 않을때 모두 정리하고 싶을 경우나 실행중인 컨테이너에는 영향을 미치지 않음

  • docker run -it 이미지이름 sh 로 해당 디렉토리 sh(shell)로 접근이 가능합니다.

추가 공부 내용 명령어 모음 // 업데이트

run 명령어 및 exec 명령어

  • run - 컨테이너 실행
docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

option 정리
-d detached mode(백그라운드 모드)
-p 호스트와 컨테이너의 포트연결
-v 호스트와 컨테이너의 디렉토리연결
-e 컨테이너 내에서 사용할 환경변수 설정
--name 컨테이너 이름 설정
--rm 프로세스 종료 시 컨테이너 자동 제거
-it -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션

  • run 명령어 연습 (기본) docker run ubuntu:20.04
    • run 명령어를 사용하면 사용할 이미지가 캐싱되어 있는지 확인하고 없다면 다운로드(pull)한 후 컨테이너를 생성하고 시작합니다.
    • 컨테이너는 정상적으로 실행됐지만 뭘 하라고 명령어를 전달하지 않았기 때문에 컨테이너는 생성되자마자 종료됩니다. 컨테이너는 프로세스이기 때문에 실행중인 프로세스가 없으면 컨테이너는 종료됩니다.
  • run 명령어 연습 (--rm -it) docker run --rm -it ubuntu:20.04 /bin/sh

    • 컨테이너 내부에 들어가기 위해 sh를 실행하고 키보드 입력을 위해 -it 옵션을 줌.(interactive terminal, -it를 적어줘야지만 명령어를 계속 입력할 수 있음)
    • 추가적으로 프로세스가 종료되면 컨테이너가 자동으로 삭제되도록 --rm 옵션도 추가.
    • --rm 옵션이 없다면 컨테이너가 종료되더라도 삭제되지 않고 남아 있어 수동으로 삭제해야됨.
  • exec 명령어

    • run 명령어와 달리 실행중인 도커 컨테이너에 접속할때 사용
  • run , exec 차이점

    • docker run은 새로컨테이너를 만들어서 실행
    • docker exec은 실행중인 컨테이너에 명령어를 전달
  • 컨테이너 쉘 환경접근 해보기
    docker exec -it <컨테이너 아이디> sh

profile
기록의 중요성

0개의 댓글