What is Docker?
차례:
Docker Compose는 다중 컨테이너 Docker 애플리케이션을 정의하고 조정하는 데 사용되는 도구입니다. YAML 파일을 사용하여 응용 프로그램의 컨테이너, 네트워크 및 볼륨을 구성합니다.
작성은 다양한 목적으로 사용될 수 있습니다. 단일 호스트 애플리케이션 배포, 자동 테스트 및 로컬 개발이 Docker Compose의 가장 보편적 인 사용 사례입니다.
이 튜토리얼은 데비안 9에 최신 버전의 Docker Compose를 설치하는 과정을 안내합니다. 또한 기본 Docker Compose 개념과 명령에 대해서도 살펴 봅니다.
전제 조건
이 학습을 계속하기 전에 다음 전제 조건을 충족하는지 확인하십시오.
- sudo 권한이있는 사용자로 로그인했습니다. Debian 9 시스템에 Docker가 설치되어 있어야합니다.
데비안에 Docker Compose 설치
Docker Compose 설치 패키지는 공식 Debian 9 리포지토리에서 사용할 수 있지만 항상 최신 버전은 아닙니다. 권장되는 방법은 Docker의 GitHub 저장소에서 Docker Compose를 설치하는 것입니다.
이 기사를 작성할 당시 Docker Compose의 최신 안정 버전은
1.23.1
입니다. Compose 바이너리를 다운로드하기 전에 GitHub의 Compose 저장소 릴리스 페이지를 방문하여 다운로드 할 수있는 새 버전이 있는지 확인하십시오.
다음 단계를 수행하여 데비안 9에 최신 버전의 Docker Compose를 설치하십시오.
-
다음
curl
명령을 사용하여 Docker Compose 바이너리를/usr/local/bin
디렉토리로 다운로드하십시오.sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
다운로드가 완료되면 작성 바이너리에 실행 권한을 부여하십시오.
sudo chmod +x /usr/local/bin/docker-compose
다음을 입력하여 설치를 확인하십시오.
docker-compose --version
결과는 다음과 같습니다.
docker-compose version 1.23.1, build b02f1306
Docker Compose 시작하기
이 섹션에서는 Docker Compose를 사용하여 Debian 9 컴퓨터에서 WordPress 스택을 관리하는 방법을 보여줍니다.
프로젝트의 디렉토리를 작성하고 변경하여 시작하십시오.
mkdir wordpress_app
cd wordpress_app
텍스트 편집기를 열고 프로젝트 디렉토리 내에
docker-compose.yml
이라는 파일을 작성하십시오.
nano docker-compose.yml
다음 내용을 붙여 넣습니다.
docker-compose.yml
version: '3.3' services: db: image: mysql:5.7 restart: always volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress wordpress: image: wordpress restart: always volumes: -./wp_data:/var/www/html ports: - "8080:80" environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: wordpress WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password depends_on: - db volumes: db_data: wp_data:
위의 코드는 무엇을합니까?
첫 번째 줄에서는 작성 파일 버전을 지정합니다. 특정 Docker 릴리스를 지원하는 여러 가지 Compose 파일 형식 버전이 있습니다.
다음으로, 우리는
db
와
wordpress
두 가지 서비스를 정의하고 있습니다. 각 서비스는 하나의 이미지를 실행하며 docker-compose가 실행될 때 별도의 컨테이너를 만듭니다.
db
서비스:
-
mysql:5.7
이미지를 사용합니다. 이미지가 시스템에 없으면 Compose가 Docker Hub 공용 저장소에서 이미지를 가져옵니다. 컨테이너를 항상 다시 시작하도록 지시하는 재시작always
정책을 사용합니다. 데이터베이스를 유지하기 위해 명명 된 볼륨db_data
를 작성합니다.mysql:5.7
이미지.
wordpress
서비스:
-
wordpress
이미지를 사용합니다. 이미지가 시스템에 없으면 Compose는 Docker Hub 공용 저장소에서 이미지를 가져옵니다. 컨테이너를 항상 다시 시작하도록 지시하는always
재시작 정책을 사용합니다. 호스트의wp_data
디렉토리를/var/lib/mysql
에wp_data
합니다. 컨테이너의 노출 된 포트 80을 호스트 시스템의 포트 8080으로depends_on
이미지의 환경 변수를 정의합니다depends_on
명령은 두 서비스 간의 종속성을 정의합니다. 이 예에서db
는wordpress
전에 시작됩니다.
프로젝트 디렉토리에서 다음 명령을 실행하여 WordPress 애플리케이션을 시작하십시오.
docker-compose up
출력은 다음과 같아야합니다.
… wordpress_1_70f2f980e1fb | AH00163: Apache/2.4.25 (Debian) PHP/7.2.12 configured -- resuming normal operations wordpress_1_70f2f980e1fb | AH00094: Command line: 'apache2 -D FOREGROUND'
작성은 두 이미지를 모두 가져
wp_data
두 개의 컨테이너를 시작하고 프로젝트 디렉토리에
wp_data
디렉토리를 만듭니다.
브라우저에
http://0.0.0.0:8080/
을 입력하면 Wordpress 설치 화면이 나타납니다.
이 시점에서 WordPress 응용 프로그램이 시작되어 테마 또는 플러그인 작업을 시작할 수 있습니다.
작성을 중지하려면
CTRL+C
누르
CTRL+C
.
-d
플래그를 전달하여 분리 모드에서 작성을 시작할 수도 있습니다.
docker-compose up -d
실행중인 서비스를 확인하려면
ps
옵션을 사용하십시오.
docker-compose ps
Name Command State Ports ---------------------------------------------------------------------------------- wordpress_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp wordpress_app_wordpress_1 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp
서비스 사용을 중지하기 위해 작성이 분리 모드에서 실행중인 경우:
docker-compose stop
docker-compose down
--volumes
스위치를 전달하면 데이터 볼륨도 제거됩니다.
Docker Compose 제거
sudo rm /usr/local/bin/docker-compose
결론
데비안 9에서 Docker Compose를 설치하고 사용하는 방법을 배웠습니다. 궁금한 점이 있으면 아래에 의견을 남겨주십시오.
도커 데비안centos 7에서 docker compose를 설치하고 사용하는 방법

Docker Compose는 다중 컨테이너 Docker 응용 프로그램을 정의하고 실행할 수있는 도구입니다. Compose를 사용하면 애플리케이션 서비스, 네트워크 및 볼륨을 단일 YAML 파일로 정의한 다음 단일 명령으로 애플리케이션을 스핀 할 수 있습니다.
debian 10 Linux에서 docker compose를 설치하고 사용하는 방법

Docker Compose는 다중 컨테이너 Docker 애플리케이션을 정의하고 조정하는 데 사용되는 도구입니다. 이 튜토리얼은 Debian 10, Buster에 Docker Compose를 설치하는 방법을 설명합니다.
우분투 18.04에서 docker compose를 설치하고 사용하는 방법

Docker Compose는 다중 컨테이너 Docker 응용 프로그램을 정의하고 관리 할 수있는 도구입니다. YAML 파일을 사용하여 응용 프로그램의 서비스, 네트워크 및 볼륨을 구성합니다.