프로젝트 (Java)/예약마켓

[프로젝트] 2. Docker 및 Docker Compose 설치

hihyuk 2024. 1. 24. 22:40

Homebrew를 사용한 설치

macOS에서 Docker와 Docker Compose를 설치하는 가장 간단한 방법은 Homebrew를 사용하는 것입니다. Homebrew는 macOS용 패키지 관리자로, 소프트웨어의 설치를 쉽게 해줍니다.

 

1. Homebrew 설치: 아직 Homebrew가 설치되어 있지 않다면, Homebrew 공식 사이트(https://brew.sh/ko)에서 설치 명령어를 찾아 터미널에서 실행합니다.

2. Docker 설치:

# docker for mac설치
brew install docker docker-compose

# docker version 확인
docker --version

# docker compose version 확인
docker-compose --version

3. 버전 확인:

  • Docker 버전 확인: docker --version
  • Docker Compose 버전 확인: docker-compose --version

4. Homebrew 상태 검사: brew doctor 명령어를 실행하여 Homebrew 설치 상태를 확인합니다.

 

Docker Desktop 설치

Docker Desktop은 Docker를 편리하게 사용할 수 있게 해주는 GUI 애플리케이션입니다. macOS에서 Docker Desktop을 사용하려면 다음 단계를 따릅니다.

1. Docker 공식 사이트 Docker Desktop을 다운로드합니다.

 

Install Docker Desktop on Mac

Install Docker for Mac to get started. This guide covers system requirements, where to download, and instructions on how to install and update.

docs.docker.com

2. 다운로드한 파일을 실행하여 Docker Desktop을 설치합니다.

 

Container 실행테스트

1. Docker 엔진과 구성 확인

docker info

2. Nginx 이미지 다운로드 및 실행:

docker image pull nginx:1.25.3-alpine
docker images
docker image history nginx:1.25.3-alpine
docker run -d -p 8001:80 --name webserver01 nginx:1.25.3-alpine
docker ps | grep webserver01
docker port webserver01
curl localhost:8001

 

 

Docker MySQL 연동

1. MySQL Docker 이미지 다운로드:

docker pull mysql

2. Docker 이미지 확인

docker images

3. Docker 컨테이너 생성 및 실행:

docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=<password> -d -p 3307:3306 mysql:latest
  • 미리 MySQL에서 3306 포트를 사용하고 있어서 3307:3306 으로 바꾸어서 생성해주었다

4. Docker 컨테이너 리스트 출력

docker ps -a

5. MySQL Docker 컨테이너 접속:

docker exec -it mysql-container bash
mysql -u root -p
  • show databases; 명령어로 데이터베이스 목록을 확인합니다.

 

Docker 사용 이유

  • 환경 동기화: Docker를 사용하면 팀원 및 서버 간의 개발 환경을 쉽게 동기화할 수 있습니다. 이는 환경 설정의 일관성을 유지하고, "내 컴퓨터에서는 작동하는데"와 같은 문제를 방지합니다.
  • 효율적인 리소스 사용: 컨테이너는 가상 머신보다 훨씬 적은 리소스를 사용하며, 빠르게 시작할 수 있습니다. 이를 통해 리소스를 효율적으로 관리할 수 있습니다.
  • 이식성: Docker 이미지를 사용하면 어떤 환경에서든 애플리케이션을 쉽게 배포하고 실행할 수 있습니다. 이는 개발, 테스트, 프로덕션 환경 간의 이식성을 보장합니다.

Docker는 개발과 운영의 편의성을 크게 향상시키며, 현대적인 소프트웨어 개발 및 배포 방식의 핵심 요소로 자리잡았습니다.

 

참고 자료:

 

도커(Docker)를 사용하는 이유는 무엇일까?

도커를 사용하면 개발 환경을 이미지화 시키고 해당 이미지를 통해 개발 및 배포 환경을 쉽게 컨테이너화 시켜 구축할 수 있다. 이런 도커를 사용하는 이유에 대해 간단히 알아보자.개발을 하다

velog.io