>  기사  >  백엔드 개발  >  Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션 배포 속도를 높입니다.

Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션 배포 속도를 높입니다.

WBOY
WBOY원래의
2023-10-12 08:19:551029검색

使用Docker Compose、Nginx和MariaDB加速PHP应用程序的部署速度

제목: Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션 배포 가속화

소개: 클라우드 컴퓨팅 및 컨테이너 기술이 널리 적용됨에 따라 애플리케이션 프로그램을 빠르게 배포하고 확장하는 방법에 점점 더 많은 개발자가 관심을 기울이고 있습니다. . PHP 개발에서 Docker Compose, Nginx 및 MariaDB를 사용하면 애플리케이션 배포 속도를 크게 높일 수 있습니다. 이 기사에서는 이러한 도구를 사용하여 PHP 애플리케이션의 개발 환경을 신속하게 구축하고 관리하는 방법을 소개합니다.

1. Docker Compose 소개

Docker Compose는 다중 컨테이너 Docker 애플리케이션을 정의하고 실행하기 위한 도구입니다. 모든 컨테이너의 설정을 관리하는 구성 파일을 사용하면 Docker Compose를 사용하여 전체 애플리케이션을 한 번에 정의, 실행 및 중지할 수 있습니다. Docker Compose를 사용하면 배포 프로세스가 크게 단순화되고 컨테이너 오케스트레이션 및 확장 기능이 제공됩니다.

2. 웹 서버로서의 Nginx

Nginx는 고성능 오픈 소스 웹 서버이자 역방향 프록시 서버입니다. 로드 밸런싱, 용량 확장, 정적 콘텐츠 캐싱과 같은 기능을 제공하면서 동시에 많은 수의 연결을 처리할 수 있습니다. PHP 애플리케이션에서 Nginx를 웹 서버로 사용하면 애플리케이션의 성능과 동시 처리 기능을 향상시킬 수 있습니다.

다음은 PHP-FPM(PHP FastCGI 프로세스 관리자)과 함께 Nginx를 사용하는 간단한 Docker Compose 구성 예입니다.

version: "3.7"
services:
  web:
    image: nginx:latest
    ports:
      - 80:80
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./code:/var/www/html
  php:
    image: php:latest
    volumes:
      - ./code:/var/www/html

위 구성에서는 웹과 PHP라는 두 가지 서비스를 정의했습니다. 웹 서비스는 Nginx 미러링을 사용하고 컨테이너의 포트 80을 호스트의 포트 80에 매핑합니다. 동시에 Nginx 구성 파일 nginx.conf와 PHP 코드를 호스트 시스템의 지정된 디렉터리에 저장합니다. php 서비스는 PHP 이미지를 사용하고 코드 디렉터리를 컨테이너의 /var/www/html 디렉터리에 마운트합니다.

3. MariaDB를 데이터베이스로 사용

MariaDB는 MySQL의 한 계열로, 고성능, 고가용성 및 강력한 기능을 제공하는 인기 있는 관계형 데이터베이스 관리 시스템입니다. PHP 애플리케이션에서 MariaDB를 데이터베이스로 사용하면 데이터 액세스 속도와 데이터 관리 기능을 향상시킬 수 있습니다.

다음은 위에서 언급한 Nginx 및 PHP-FPM과 함께 MariaDB를 사용하는 간단한 Docker Compose 구성 예입니다.

version: "3.7"
services:
  web:
    image: nginx:latest
    ports:
      - 80:80
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./code:/var/www/html
  php:
    image: php:latest
    volumes:
      - ./code:/var/www/html
  db:
    image: mariadb:latest
    environment:
      - MYSQL_ROOT_PASSWORD=yourpassword
    volumes:
      - ./data:/var/lib/mysql

위 구성에서는 db 서비스를 추가하고 MariaDB 미러를 사용하고 루트 사용자를 설정했습니다. 비밀번호. 동시에 컨테이너의 /var/lib/mysql 디렉토리에 데이터베이스 데이터를 저장합니다.

4. 배포 및 관리에 Docker Compose 사용

위의 Docker Compose 구성이 완료되면 다음 명령을 사용하여 한 번의 클릭으로 PHP 애플리케이션을 배포하고 관리할 수 있습니다.

  1. 컨테이너 빌드 및 시작: 패키지에서 docker 포함 -compose.yml 파일의 디렉터리에서 다음 명령을 실행하면 모든 컨테이너가 빌드되고 시작됩니다.

    docker-compose up -d
  2. 컨테이너 중지: 다음 명령을 실행하면 모든 컨테이너가 중지됩니다.

    docker-compose down
  3. 확장 서비스: 웹 또는 PHP 서비스를 확장해야 하는 경우 docker-compose.yml 파일에서 해당 서비스의 복사본 수를 조정하면 됩니다.

    version: "3.7"
    services:
      web:
        image: nginx:latest
        ports:
          - 80:80
        volumes:
          - ./nginx.conf:/etc/nginx/nginx.conf
          - ./code:/var/www/html
        scale: 3
      php:
        image: php:latest
        volumes:
          - ./code:/var/www/html
        scale: 3

    그런 다음, 다음 명령을 실행하여 용량을 확장하세요.

    docker-compose up -d --scale web=3 --scale php=3

Docker Compose, Nginx, MariaDB를 사용하여 PHP 애플리케이션의 개발 환경을 빠르게 구축 및 관리할 수 있으며, 쉽게 배포 및 확장할 수 있습니다. 이 접근 방식은 애플리케이션 배포 속도를 높일 뿐만 아니라 더 나은 성능과 확장성을 제공합니다.

위 내용은 Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션 배포 속도를 높입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.