도커 사용법

[입문] 도커 사용법 : 이것만 알아두세요!ㅣ 백엔드 스쿨

백앤드 개발자 필수 도커! 도커를 처음 사용하시는 분들을 위해 개념부터 주요 기능과 장점, 기본컨셉, 설치 방법, 사용법을 정리했어요! 이것만 알아두면 기본적인 도커 사용법은 마스터 가능이랍니다!


   - 이 글은 도커에 처음 입문하는 분들을 위한 글입니다.

도커 사용법

들어가며.

도커는 현대 소프트웨어 개발의 불가결한 도구 중 하나로 자리 잡았어요. 이 가상화 플랫폼은 코드를 작성하는 개발자부터 운영 팀까지, 소프트웨어의 전 생명주기에 걸쳐 다양한 이점을 제공해요. 이 글에서는 도커 주요 개념과 기능, 장점, 운영체제별 설치방법, 그리고 기본적인 도커 사용 방법에 대해 알아보겠습니다.

도커 대표이미지

출처 = 도커 공식 홈페이지

Chaptet 1.
도커란 무엇일까?

도커는 현대 소프트웨어 개발의 불가결한 도구 중 하나로 자리 잡았어요. 이 가상화 플랫폼은 코드를 작성하는 개발자부터 운영 팀까지, 소프트웨어의 전 생명주기에 걸쳐 다양한 이점을 제공해요. 이 글에서는 도커 주요 개념과 기능, 장점, 운영체제별 설치방법, 그리고 기본적인 도커 사용 방법에 대해 알아보겠습니다.

도커 이미지

출처 = 도커 공식 홈페이지

여행용 가방 같은 존재

여행을 갈 때 여행용 가방에는 옷, 세면도구, 충전기 등 여행에 필요한 모든 것을 넣습니다. 이 가방 하나만 있으면, 어디로든 떠날 수 있고, 필요한 것들이 모두 준비되어 있기 때문에 편리하게 여행을 즐길 수 있습니다. 어느 호텔에 묵든, 어느 도시에 가든, 그 가방 안의 물건들로 기본적인 생활을 할 수 있습니다. 이처럼 도커 컨테이너는 프로그램을 실행하기 위해 필요한 '모든 것'을 담고 있습니다. 그 안에는 코드부터, 실행에 필요한 라이브러리, 설정 파일까지 모든 것이 포함되어 있습니다. 이렇게 하면, 프로그램을 어디서든 동일한 환경과 조건으로 실행할 수 있게 되는 것입니다.

주요 기능과 장점

  • ✅ 이식성: 도커 컨테이너는 어떤 환경에서도 동일하게 실행될 수 있습니다. 이는 개발에서 운영까지 일관된 환경을 제공합니다.

    ✅ 빠른 배포와 확장성: 이미지를 기반으로 빠르게 컨테이너를 생성하고, 필요에 따라 쉽게 확장할 수 있습니다.

    ✅ 분리된 환경: 각 컨테이너는 독립적으로 실행되므로, 다양한 어플리케이션과 서비스를 하나의 시스템에서 격리된 상태로 실행할 수 있습니다.

    ✅ 버전 관리와 공유: 도커 이미지는 버전을 관리할 수 있으며, 도커 허브(Docker Hub) 같은 플랫폼을 통해 쉽게 공유할 수 있습니다.

기본 컨셉

기본 컨셉

출처 = 도커 공식 홈페이지

  • ✅ 이미지(Image): 어플리케이션을 실행하기 위한 모든 파일과 설정을 담고 있는 템플릿입니다.

    ✅ 컨테이너(Container): 이미지를 기반으로 생성되어 실제로 어플리케이션을 실행하는 인스턴스입니다.

    ✅ 도커 허브(Docker Hub): 도커 이미지를 저장하고 공유할 수 있는 중앙 레포지토리입니다.

Chaptet 2.
도커 설치 방법

Windows

1. Docker Desktop 다운로드: Docker의 공식 웹사이트에서 Windows용 Docker Desktop을 다운로드합니다.

2. 설치 프로그램 실행: 다운로드한 설치 프로그램을 실행하고 지시에 따라 설치를 완료합니다.

3. 재부팅: 설치가 완료되면 시스템을 재부팅합니다.

>> Docker Desktop for Windows 다운로드

macOS

1. Docker Desktop 다운로드: Docker의 공식 웹사이트에서 macOS용 Docker Desktop을 다운로드합니다.

2.DMG 파일 열기: 다운로드한 .dmg 파일을 열고, Docker 앱을 Applications 폴더로 드래그합니다.

3.Docker 실행: Applications 폴더에서 Docker 앱을 실행합니다.

>> Docker Desktop for Mac 다운로드

Linux (Ubuntu를 예로)

1. 패키지 업데이트: 먼저 아래 명령어로 패키지 목록을 업데이트합니다.

패키지 업데이트

2. 필요한 패키지 설치: HTTPS를 통해 패키지를 다운로드 받을 수 있도록 패키지들을 설치합니다.

패키지 설치

3. Docker 저장소 추가: Docker의 공식 GPG 키와 저장소를 시스템에 추가합니다.

저장소 추가

4. Docker 설치: 이제 Docker를 설치할 준비가 되었습니다.

도커 설치

5. Docker 서비스 실행: Docker 서비스를 실행합니다.

서비스 실행

이제 도커가 설치되어 해당 운영체제에서 사용할 준비가 되었습니다. 설치가 완료된 후에는 ‘docker --version’ 명령어를 통해 설치된 도커 버전을 확인할 수 있습니다.

Chaptet 3.
도커 사용법

도커(Docker)는 다양한 기능과 명령어를 가지고 있지만, 오늘은 기본적인 사용법을 몇 가지를 알려드릴게요.

  • ✅docker pull: 원격 레포지토리에서 이미지를 로컬로 다운로드합니다.
    ✅docker run: 컨테이너를 생성하고 실행합니다.
    ✅docker ps: 실행 중인 컨테이너 목록을 보여줍니다.
    ✅docker stop: 실행 중인 컨테이너를 중지합니다.
    ✅docker rm: 컨테이너를 삭제합니다.
    ✅docker rmi: 이미지를 삭제합니다.
    ✅docker build: Dockerfile을 기반으로 이미지를 생성합니다.

도커 버전 확인

도커가 제대로 설치되었는지 확인하려면 다음 명령어를 실행합니다.

도커 버전 확인

이미지 다운로드 (Pull Image)

도커 이미지를 다운로드하기 위해 ‘docker pull’ 명령어를 사용합니다.

이미지 다운로드

이미지 목록 확인 (List Images)

다운로드한 이미지 목록을 확인하려면 다음 명령어를 사용합니다.

이미지 목록 확인

컨테이너 생성 및 실행 (Run Container)

이미지를 바탕으로 컨테이너를 생성하고 실행하려면 ‘docker run’ 명령어를 사용합니다.

컨테이너 생성 및 실행

실행 중인 컨테이너 목록 확인 (List Containers)

실행 중인 컨테이너의 목록을 확인하려면 다음 명령어를 사용합니다.

실행 중 목록 확인

모든 컨테이너를 보려면 ‘ -a’ 옵션을 추가합니다.

모든 컨테이너

컨테이너 중지 및 삭제 (Stop and Remove Container)

컨테이너를 중지하려면 ‘docker stop’ 명령어를 사용합니다.

중지

컨테이너를 삭제하려면 ‘docker rm’ 명령어를 사용합니다.

컨테이너 삭제

이미지 삭제 (Remove Image)

이미지를 삭제하려면 ‘docker rmi’ 명령어를 사용합니다.

이미지 삭제

이 명령어를 사용하기 전에 관련된 컨테이너가 모두 삭제되어야 합니다.

Dockerfile로 이미지 빌드 (Build Image)

‘Docker build’을 사용하여 이미지를 빌드할 수 있습니다.

이미지 빌드

이 명령어는 지정된 디렉토리의 ‘Docker build’을 사용하여 이미지를 빌드합니다.

이렇게 명령어 몇 개만 알아도 도커를 활용할 수 있어요. 상황에 따라 더 복잡한 설정과 스크립트가 필요할 수 있지만, 이 명령어들은 도커를 시작하는 데 있어 꼭 알아야 할 기초입니다.

마무리하며.

도커는 소프트웨어 개발과 배포의 복잡성을 줄이면서, 일관성 있고 빠른 개발 환경을 제공하는 강력한 도구입니다. 이를 통해 개발자와 운영 팀 모두가 더 집중적으로 작업할 수 있으며, DevOps와 CI/CD와 같은 현대적인 개발 방법론을 쉽게 적용할 수 있어요. 이 글을 통해 도커의 기본적인 개념과 사용법, 그리고 그 장점에 대해 알아보았어요. 도커를 활용하면 어플리케이션의 라이프사이클을 효율적으로 관리할 수 있으므로, 이제는 당신도 도커를 이용해 더 나은 소프트웨어 개발 경험을 누려보세요.

스케치(Sketch) 도커 사용법 학습을 위한 유튜브 채널 추천

1) 얄팍한 코딩사전

출처: 얄팍한 코딩사전

'얄팍한 코딩사전' 유튜브 채널에서는 어려운 프로그래밍 개념들을 쉽게 설명해 주고 있습니다. 초보자들이 이해하기 쉽도록 비유와 쉬운 예제, 때로는 애니메이션으로 설명하는 컨텐츠가 올라오고 있습니다.

2) 노마드 코더

출처: 노마드 코더

한국인 린과 콜롬비아인 니꼴라스의 프로젝트 '노마드 코더', 유튜브 채널을 통해 프로그래밍 관련 정보와 강의 영상들을 업로드하고 있습니다. 다른 강의와 달리 실무에 필요한 개발을 하면서 활용도가 높은 부분을 배울 수 있습니다!

2) 드림코딩

출처: 드림 코딩

초보 개발자를 위한 코딩 유튜브 채널로 유명한 '드림코딩'입니다. 코딩 이외에도 언어에 대한 설명부터 연봉협상, 해외취업, 영어 학습법, 키보드 소개까지 개발자의 삶에 대해서도 배울 수 있습니다!




백엔드 개발자라면 필수인 도커 사용법!
더 많은 백엔드 지식을 원한다면 지금 바로 제로베이스 백엔드 스쿨과 함께하세요!


제로베이스에서는 취업이라는 목표를 달성해 볼 여러분을 기다립니다.
제로베이스에서 시작해 보세요.

취업은 제로베이스

>> 백엔드 스쿨 바로가기

추천 컨텐츠