개발/강의

인프런 : Docker 1

EJ EJ 2025. 4. 10. 19:55

Docker란?

컨테이너를 사용하여 각각의 프로그램을 분리된 환경에서 실행 및 관리할 수 있는 툴이다.

 

Docker를 쓰는 이유에는 여러가지 장점이 있지만 그 중에서 핵심 장점 딱 1가지만 기억하자.

 

이식성 : 특정 프로그램을 다른 곳으로 쉽게 옮겨서 설치 및 실행할 수 있는 특성

 

뿐만 아니라 Docker를 사용하면 아래와 같은 장점이 있다.

  • 매번 귀찮은 설치 과정을 일일이 거치지 않아도 된다.
  • 항상 일관되게 프로그램을 설치할 수 있다. (버전, 환경 설정, 옵션, 운영 체제 등)
  • 각 프로그램이 독립적인 환경에서 실행되기 때문에 프로그램 간에 서로 충돌이 일어나지 않는다.

Docker의 핵심 두가지!

1) 컨테이너(Container)

컴퓨터 안에 있는 미니 컴퓨터를 컨테이너라고 부른다. 독립적인 컴퓨터 환경을 가지고 있다.

각 컨테이너마다 고유의 디스크(저장공간)과 네트워크(IP, PORT 주소)를 가지고 있다.

여기서 ‘컨테이너’와 ‘컨테이너를 포함하고 있는 컴퓨터’를 구분하기 위해 컨테이너를 포함하고 있는 컴퓨터를 ‘호스트(host) 컴퓨터’라고 부른다.

 

2) 이미지(Image)

게임칩과 같다. 프로그램 설치 과정 없이 이미지만으로 실행된다. 즉, 프로그램을 실행하는 데 필요한 모든 것을 포함한 것이 이미지이다.

 

[실습] Docker로 Redis 실행시켜보기

 

Redis 이미지를 바탕으로 컨테이너 실행시키기

docker run -d -p 6379:6379 redis

-d : 백그라운드

-p : 포트 연결

 

다운로드 된 이미지 확인하기

docker image ls

 

컨테이너가 잘 실행되고 있는 지 체크

docker ps

 

컨테이너 실행시킬 때 에러 없이 잘 실행됐는 지 로그 체크

docker logs [컨테이너 ID 또는 컨테이너명]

 

Redis 컨테이너에 접속

docker exec -it [컨테이너 ID 또는 컨테이너명] bash

 

컨테이너에서 redis 사용해보기

redis-cli

127.0.0.1:6379> set 1 hello
127.0.0.1:6379> get 1

 

exit 후 컨테이너 종료하기

 

docker ps

docker rm -f [컨테이너 ID 또는 컨테이너명]

docker ps

docker ps -a

docker image ls

docker image rm redis

docker image ls

'개발 > 강의' 카테고리의 다른 글

인프런 : Docker 6 - AWS ECR  (0) 2025.04.14
인프런 : Docker Copmose 5  (0) 2025.04.14
인프런 : Docker Copmose 4  (0) 2025.04.12
인프런 : Dockerfile 3  (0) 2025.04.11
인프런 : Docker Volume 2  (0) 2025.04.11