Docker Compose, Nginx 및 MariaDB를 위한 즉시 사용 가능한 솔루션: PHP 환경을 빠르게 설정
개요:
PHP 애플리케이션을 개발하고 배포할 때 안정적이고 쉬운 환경을 설정하는 것이 중요합니다. 환경을 관리합니다. Docker Compose, Nginx 및 MariaDB는 PHP 환경을 빠르게 구축하기 위한 솔루션을 제공할 수 있습니다. 이 기사에서는 Docker Compose를 사용하여 컨테이너를 구성 및 실행하고, Nginx를 웹 서버로 사용하고, MariaDB를 데이터베이스로 사용하고, PHP 환경을 빠르게 구축하는 방법을 소개합니다.
1. Docker 및 Docker Compose 설치:
먼저 로컬 머신에 Docker 및 Docker Compose를 설치해야 합니다. 다양한 운영 체제에 대한 설치 가이드는 공식 Docker 웹사이트에서 찾을 수 있습니다. 설치가 완료되면 설치가 성공했는지 확인하세요. 터미널이나 명령 프롬프트에 다음 명령을 입력하세요.
docker --version docker-compose --version
버전 번호가 올바르게 표시되면 Docker와 Docker Compose가 성공적으로 설치된 것입니다.
2. Docker Compose 파일 만들기:
다음으로 docker-compose.yml이라는 파일을 만들고 그 안에 서비스와 컨테이너 구성을 정의해야 합니다.
version: '3' services: nginx: build: context: . dockerfile: nginx.dockerfile ports: - 80:80 depends_on: - php php: build: context: . dockerfile: php.dockerfile volumes: - ./src:/var/www/html mariadb: image: mariadb environment: - MYSQL_ROOT_PASSWORD=secret
설명:
3. Dockerfile 및 구성 파일 생성:
다음으로 이미지를 빌드할 때 필요한 구성과 종속성을 제공하기 위해 Dockerfile 및 구성 파일을 생성해야 합니다.
FROM nginx COPY nginx.conf /etc/nginx/nginx.conf COPY default.conf /etc/nginx/conf.d/default.conf
설명: 공식 Nginx 이미지에서 새 이미지를 빌드한 다음 로컬 nginx.conf 및 default.conf 파일을 컨테이너의 해당 위치에 복사합니다.
FROM php:7.4-fpm RUN apt-get update && apt-get install -y zlib1g-dev libzip-dev && docker-php-ext-install zip pdo_mysql COPY php.ini /usr/local/etc/php/conf.d/custom.ini
설명: 공식 PHP 이미지에서 새 이미지를 빌드한 다음 apt-get 명령을 사용하여 필요한 종속성을 설치하고 docker-php-ext를 통해 zip 및 pdo_mysql 확장을 설치합니다. -설치 명령 . 마지막으로 로컬 php.ini 파일을 컨테이너에 복사합니다.
user nginx; worker_processes auto; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; root /var/www/html; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } }
설명: 이것은 Nginx의 구성 파일입니다. 요청을 처리하고 PHP 처리를 PHP 컨테이너에 전달하기 위한 기본 로그 경로, 이벤트 설정, http 설정 및 기본 서버 블록으로 구성됩니다.
server { location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
설명: 이것은 Nginx의 기본 구성 파일입니다. nginx.conf 파일의 서버 블록 설정과 동일합니다.
4. 컨테이너 구축 및 실행 시작:
모든 구성 파일을 설정한 후 컨테이너 구축 및 실행을 시작할 수 있습니다. 터미널 또는 명령 프롬프트에서 docker-compose.yml 파일이 있는 디렉터리로 이동하여 다음 명령을 실행합니다.
docker-compose up --build
이 명령은 이미지 빌드 및 컨테이너 실행 프로세스를 시작합니다. 완료되면 컨테이너가 실행되고 http://localhost를 통해 액세스할 수 있는 PHP 애플리케이션이 표시됩니다.
컨테이너를 백그라운드에서 실행해야 하는 경우 다음 명령을 사용할 수 있습니다.
docker-compose up -d --build
이 명령은 데몬 모드에서 컨테이너를 실행합니다.
요약:
Docker Compose, Nginx 및 MariaDB용 기본 솔루션을 사용하면 PHP 환경을 빠르게 구축하고 관리할 수 있습니다. Docker의 이식성과 컨테이너화 이점으로 인해 PHP 애플리케이션을 보다 쉽고 안정적으로 개발하고 배포할 수 있습니다. 이 기사가 도움이 되었기를 바랍니다. 코드 예제에 대한 자세한 내용은 이 기사에 언급된 구성 파일을 참조하세요.
위 내용은 Docker Compose, Nginx 및 MariaDB를 위한 즉시 사용 가능한 솔루션: PHP 환경을 빠르게 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!