Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션의 빠른 배포 프로세스 구현
요약:
이 문서에서는 Docker Compose, Nginx 및 MariaDB를 사용하여 PHP 애플리케이션의 빠른 배포 프로세스를 구현하는 방법을 소개합니다. Docker Compose를 사용하여 컨테이너화된 애플리케이션의 구성, Nginx를 웹 서버로, MariaDB를 데이터베이스로 정의하고 관리합니다. 이러한 컨테이너를 구축하고 시작하면 PHP 애플리케이션을 빠르게 배포하고 실행할 수 있습니다.
소개:
클라우드 컴퓨팅 및 컨테이너화 기술의 발전으로 애플리케이션을 빠르게 배포하는 것이 점점 더 쉬워지고 있습니다. Docker Compose를 사용하면 YAML 구성 파일을 작성하여 애플리케이션에 필요한 컨테이너를 정의하고 관리할 수 있습니다. 이 기사에서는 Docker Compose를 사용하여 Nginx 및 MariaDB가 포함된 PHP 애플리케이션을 정의하고 배포하는 방법을 보여줍니다.
1단계: Docker 및 Docker Compose 설치
먼저 시스템에 Docker 및 Docker Compose가 설치되어 있는지 확인하세요. 공식 홈페이지에서 다운로드 후 안내에 따라 설치하시면 됩니다.
2단계: 프로젝트 디렉터리 생성
시작하기 전에 새 프로젝트 디렉터리를 생성해 보겠습니다. 이 디렉터리 내에서 애플리케이션 구성을 정의할 docker-compose.yml이라는 파일을 생성합니다.
3단계: Docker Compose 구성 파일 생성
프로젝트 디렉터리에서 docker-compose.yml이라는 파일을 생성하고 다음 샘플 코드를 템플릿으로 사용합니다.
version: '3' services: web: build: context: . dockerfile: Dockerfile ports: - "80:80" volumes: - ./app:/var/www/html depends_on: - db db: image: mariadb:latest environment: - MYSQL_ROOT_PASSWORD=123456 - MYSQL_DATABASE=myapp - MYSQL_USER=myuser - MYSQL_PASSWORD=mypassword volumes: - ./data:/var/lib/mysql
위 예에서는 웹과 서비스라는 두 가지 서비스를 정의했습니다. db. 웹 서비스는 PHP 애플리케이션이 존재하는 서비스이며 Dockerfile이라는 파일은 웹 컨테이너를 구축하는 데 사용됩니다. 로컬 포트 80을 컨테이너의 포트 80에 매핑하고 애플리케이션 코드를 컨테이너의 /var/www/html 디렉터리에 마운트해야 합니다. db 서비스는 최신 mariadb:latest 이미지를 사용하고 데이터베이스의 루트 비밀번호와 데이터베이스 이름을 설정하는 MariaDB 데이터베이스 서비스입니다.
4단계: Dockerfile 생성
프로젝트 디렉터리에서 Dockerfile이라는 파일을 생성하고 다음 샘플 코드를 템플릿으로 사용합니다.
FROM php:7.4-fpm RUN apt-get update && apt-get install -y nginx libmcrypt-dev libjpeg-dev libpng-dev libfreetype6-dev libxml2-dev libzip-dev zip unzip RUN docker-php-ext-install mysqli pdo pdo_mysql xml zip COPY nginx.conf /etc/nginx/sites-available/default WORKDIR /var/www/html CMD service nginx start && php-fpm
위 예에서는 php:7.4-fpm을 기본 이미지로 사용하고 설치했습니다. 일부 PHP 확장 및 Nginx. 또한 nginx.conf 파일을 컨테이너의 /etc/nginx/sites-available/default 디렉터리에 복사하고 작업 디렉터리를 /var/www/html로 설정합니다.
5단계: Nginx 구성 파일 생성
프로젝트 디렉터리에서 nginx.conf라는 파일을 생성하고 다음 샘플 코드를 템플릿으로 사용합니다.
server { listen 80; server_name localhost; root /var/www/html; location / { index index.php; try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass web:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
위 예에서는 간단한 Nginx 서버를 정의했습니다. 포트 80. 루트 디렉터리는 /var/www/html로 설정되며, PHP 파일 처리 방식을 설정합니다.
6단계: 컨테이너 빌드 및 시작
프로젝트 디렉터리에서 터미널을 열고 다음 명령을 실행하여 컨테이너를 빌드하고 시작합니다.
docker-compose up -d
이 명령은 Docker Compose를 기반으로 애플리케이션의 컨테이너를 빌드하고 시작합니다. 구성 파일. 빌드 프로세스 중에 Docker는 필요한 이미지와 종속성을 자동으로 다운로드하고 설치합니다.
7단계: 애플리케이션 테스트
이제 웹 브라우저에서 http://localhost를 방문하여 PHP 애플리케이션을 테스트할 수 있습니다. 모든 것이 정상이면 애플리케이션의 시작 페이지가 표시됩니다.
결론:
Docker Compose, Nginx 및 MariaDB를 사용하면 PHP 애플리케이션을 빠르게 배포하고 실행할 수 있습니다. 컨테이너화된 애플리케이션의 구성을 정의하고 관리함으로써 애플리케이션 배포 프로세스를 단순화하고 가속화할 수 있습니다. 이 기사가 PHP 애플리케이션을 신속하게 배포하는 데 도움이 되기를 바랍니다.
위 내용은 Docker Compose, Nginx 및 MariaDB를 사용하는 PHP 애플리케이션의 신속한 배포 프로세스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!