Docker란?

이상현·2024년 11월 15일

[ TIL ]

목록 보기
33/38

Docker란?

Docker는 애플리케이션을 독립된 환경인 컨테이너에서 실행할 수 있게 해주는 오픈 소스 플랫폼입니다.
컨테이너는 애플리케이션과 그 실행에 필요한 모든 파일, 라이브러리, 종속성 등을 포함하여, 애플리케이션이 실행되는 환경을 일관되게 제공합니다.
이를 통해 애플리케이션 개발과 배포 과정이 효율적이고 안정적으로 이루어질 수 있습니다.

특징

  1. 컨테이너화
    애플리케이션과 그 실행에 필요한 모든 요소를 하나의 패키지로 묶어 실행 환경을 표준화합니다. 이를 통해 어떤 환경에서 실행하든 동일한 방식으로 작동하도록 보장합니다.

  2. 경량화
    Docker 컨테이너는 가상 머신보다 자원을 덜 사용하며, 훨씬 빠르게 시작할 수 있습니다. 이는 개발과 테스트 단계에서 빠른 실행을 가능하게 합니다.

  3. 이식성
    Docker 컨테이너는 동일한 환경을 제공하므로 개발, 테스트, 운영 환경 간에 일관성을 유지할 수 있습니다. 이는 "개발 환경에서는 잘 되는데 운영 환경에서 문제 발생"과 같은 문제를 방지합니다.

  4. 버전 관리
    Docker는 이미지라는 형태로 애플리케이션 환경을 저장할 수 있어, 특정 버전의 애플리케이션을 손쉽게 배포하고 관리할 수 있습니다. 버전 간 차이를 쉽게 관리할 수 있다는 점에서 효율적입니다.

  5. 확장성
    여러 개의 컨테이너를 동시에 실행하고 관리할 수 있어, 대규모 시스템에서도 유연하게 확장할 수 있습니다. 이는 마이크로서비스 아키텍처와 잘 맞습니다.

Docker Desktop을 사용해보자

Docker는 기본적으로 Linux 기반 플랫폼이지만, Docker Desktop을 통해 Windows와 macOS 환경에서도 원활하게 사용할 수 있다~

Docker Desktop 설치 경로

-> https://www.docker.com/products/docker-desktop/

본인에 운영체제에 맞게 설치할 수 있다!
럭키비키잖아 설치가 완료되면 재부팅이 필요하므로 유의하도록 하자

Docker Desktop 사용 방법


실행 이후 로그인을 진행하면 이렇게 화면이 나타나는데 MySQL을 예로 들어 사용해 볼 것이다.

ctrl+k를 입력하거나 위에 보이는 검색창을 클릭한 후 mysql 을 검색하면 이렇게 애플리케이션들이 나오는데 맨 위에 위치하는 mysql을 Pull 해준다.

그 후, 잠시 동안 기다리면 비어있던 Images에 mysql이 추가된 것을 확인할 수 있다.

이상태에서 옆에 보이는 Actions에 화살표를 눌러 실행해 주면

이런 창이 나타난다.

아래와 같이 입력해주자.

Container name : 원하는 이름 작성
Ports : 3306
Environment variables : MYSQL_ROOT_PASSWORD / 원하는 비밀번호 작성

입력 후 RUN 버튼을 눌러 실행 한다면

이렇게 Containers에 생성된 것을 확인할 수 있다.

profile
Node.js_6기

0개의 댓글