DevOps
Docker Compose
Docker Compose
2023.08.27🐳 Docker 시리즈 살펴보기 🐳 1. Docker와 Container 2. Dockerfile과 Docker Image ➡️ 3. Docker Volume 4. Docker Network 5. Docker Compose 🐳 Docker Compose란? 여러개의 컨테이너로부터 이루어진 서비스를 구축, 실행하는 순서를 관리할 수 있는 기능이며, YAML 파일로 작성된다. 빌드 명령을 추가하면 docker compose는 DockerFile을 사용한다. Docker compose는 앱이 실행되는 동안 컨테이너를 관리하는 역할을 한다. 다음은 docker-compose.yml 의 예시이다. version: "3.9" # 버전마다 지원 항목이 크게 다르기 때문에 필수 기재 services: web: # 서비..
Docker Volume
Docker Volume
2023.08.27🐳 Docker 시리즈 살펴보기 🐳 1. Docker와 Container 2. Dockerfile과 Docker Image ➡️ 3. Docker Volume 4. Docker Network 5. Docker Compose 🐳 Docker Volume 이란? 호스트의 파일 시스템을 컨테이너에 마운트 시켜 컨테이너가 삭제되어도 데이터가 남아있게 하는 것이다. 마운트란, 대상을 연결해 운영체제 또는 소프트웨어의 관리 하에 두는 일을 말한다. (ex. usb 연결) Docker를 사용할 때, 데이터를 저장하는 방법에는 volume, bind mounts, tmpfs 3가지 방법이 있다. Data가 Docker Host 내에서 '어디에 존재하는지'에 따라 구분하며, docker에선 volume을 권장한다. ✅ ..
Docker Network
Docker Network
2023.08.27🐳 Docker 시리즈 살펴보기 🐳 1. Docker와 Container 2. Dockerfile과 Docker Image 3. Docker Volume ➡️ 4. Docker Network 5. Docker Compose 도커는 목적에 따라 다양한 종류의 네트워크 드라이버를 지원한다. 여러 종류의 드라이버가 있지만 많이 사용하는 네트워크 드라이버는 다음과 같다. bridge : 하나의 호스트 컴퓨터 내에서 여러 컨테이너들이 서로 소통할 수 있게 해준다. host : 호스트 컴퓨터와 동일한 네트워크에서 컨테이너를 실행할 수 있다. overlay : 여러 호스트에 분산되어 돌아가는 컨테이너들 간에 네트워킹을 위해 사용한다. 🐳 Docker의 네트워크 구조 컨테이너는 외부와 통신하기 위해 2개의 네트워크 인..
Dockerfile과 Docker Image
Dockerfile과 Docker Image
2023.08.27🐳 Docker 시리즈 살펴보기 🐳 1. Docker와 Container ➡️ 2. Dockerfile과 Docker Image 3. Docker Volume 4. Docker Network 5. Docker Compose 🐳 Dockerfile Docker Image를 만들기 위한 설정파일이다. 여러가지 명령어를 토대로 Docker File을 작성하면 설정대로 Docker Image를 만들 수 있다. 이때 파일 이름을 'Dockerfile'로 해야한다. 이름을 변경하고 싶다면 빌드시에 옵션(-f/--file)을 주어야 한다. ✅ Dockerfile 항목 Dockerfile 예시는 다음과 같다. FROM node:18-alpine # nodejs alpine 버전 이미지를 가져온다. WORKDIR /us..
Docker와 Container
Docker와 Container
2023.06.02🐳 Docker 시리즈 살펴보기 🐳 ➡️ 1. Docker와 Container 2. Dockerfile과 Docker Image 3. Docker Volume 4. Docker Network 5. Docker Compose Docker Docker 란? 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있다 Docker 의 장점 Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있다. 모든 제품의 빌드, 배포, 운영을 같은 도구와 같은 방법으로 할 수 있다. Ochestration Tool (Kubernete..