[Docker] 도커 설치 및 기본 명령어

node·2023년 11월 17일
0

들어가며

CentOS 환경에서 Docker를 설치 및 실행하는 내용을 공유하려고 한다.
아래 내용은 VMware에서 CentOS7을 설치하고 기본적인 네트워크 세팅을 마친 후의 상황부터 시작한다.
설치에 대한 내용이 필요하다면 아래를 참고
https://velog.io/@devgimun/%EC%84%A4%EC%B9%98-VMware%EB%A1%9C-CentOS7


본론

알아두면 좋을 용어

  • 이미지: 애플리케이션과 소프트웨어 의존성을 담은 파일
  • 컨테이너: 이미지의 정보로 실행된 프로세스를 동작중인 격리된 개별 환경

도커 레포지토리 설치

CentOS에서 기본적으로 설치되어 있는 레포지토리로는 Docker를 설치 할수 없으니 yum utils를 통해 관련 레포지토리를 등록해주어야 한다.

  • yum install -y yum-utils 명령어를 통해 yum utils를 설치해준다.

  • yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 명령어로 Docker 설치를 위한 레포지토리를 등록해준다.

    환경에 따라 레포지토리가 다르므로 아래 주소에서 본인이 해당되는 레포지토리의 주소를 찾아서 사용하자
    https://docs.docker.com/desktop/install/linux-install/


도커 설치

  • yum install -y docker-ce docekr-ce-cli containered-io 명령어를 입력하여 도커와 관련 유틸들을 같이 설치해준다.

  • systemctl enable --now docker 명령어로 서버가 실행될 때 자동으로 Docker가 실행되도록 설정하고 --now 옵션을 통해 지금 Docker를 실행시킨다.


도커 로그인

  • docker login 명령어를 통해 https://www.docker.com 에 있는 계정과 연동 시킬수 있다. 해당 명령어를 사용하지 않고 비회원으로 이용시에는 아래와 같은 차이가 있다.

    회원비회원
    6시간 마다 IP당 100번이 pull 이용 가능6시간 마다 ID별로 200번의 pull 이용 가능

    개발을 진행하다 보면 방해될 수 있으니 되도록 로그인을 진행하는 것이 좋다.


도커 기본 명령어

  • docker search [이미지명] Docker hub 내에 관련 이미지를 검색하여 출력한다.
    • 옵션
      • --limit [숫자]: 지정한 숫자 만큼만 출력.
      • -f stars=[숫자]: 지정한 숫자보다 많은 좋아요를 받은 이미지만 출력.
      • -f is-official=true: 공식 이미지만 출력.
  • docker pull [이미지명:버전] Docker hub 내에 이미지를 가져온다.
    • 버전정보를 입력하지 않으면 자동으로 가장 최신 이미지를 가져온다.
  • docker run [이미지명:버전]
    • 선택한 이미지로 컨테이너를 실행 시킨다.
    • 옵션
      • --name: 컨테이너의 이름을 지정한다. 미지정시 해시값으로 설정되어 파악이 어려우므로 되도록 지정하는 것이 좋다.
      • -d: 컨테이너를 생성하고 백그라운드에서 작동시킨다. 웹서버처럼 상시 동작중이여야 하는 컨테이너에 주로 사용한다.
      • -i: 표준입력을 활성화시키며 컨테이너와 연결되어있지 않더라도 표준입력을 유지한다.
      • -t: tty모드로 사용하며 bash를 사용하기 위해서는 꼭 필요하다.
  • docker ps
    • 현재 실행중인 모든 컨테이너의 상태를 확인한다.
    • 옵션
      • -a: 실행이 종료되었거나 멈춘 컨테이너의 상태도 확인한다.
  • docker inspect [컨테이너명]
    • 해당 컨테이너의 네트워크 등 상세정보를 확인한다.
  • docker rm [컨테이너 id]
    • 해당 컨테이너를 삭제합니다.
  • docker rmi [이미지 id]
    • 해당 이미지를 삭제합니다.
profile
NOvice + DEveloper

0개의 댓글