Docker Compose, Nginx 및 MariaDB를 사용한 PHP 애플리케이션의 지속적인 제공
Docker Compose, Nginx 및 MariaDB를 통한 PHP 애플리케이션의 지속적인 제공
개요:
클라우드 컴퓨팅 및 컨테이너화 기술의 급속한 발전으로 인해 점점 더 많은 애플리케이션이 신속한 제공 및 배포를 달성하기 위해 컨테이너화를 채택하기 시작했습니다. 이 기사에서는 Docker Compose, Nginx 및 MariaDB를 사용하여 간단한 PHP 애플리케이션을 구축하고 지속적인 전달 프로세스를 구현하는 방법을 소개합니다. 동시에 독자들이 이 프로세스를 더 잘 이해할 수 있도록 구체적인 코드 예제를 제공할 것입니다.
1. 준비
- Docker 및 Docker Compose를 설치합니다.
2. Docker Compose 구성 파일 생성
docker-compose.yml이라는 파일을 생성하고 아래 예시 내용에 따라 입력합니다.
version: '3' services: web: build: context: . dockerfile: Dockerfile ports: - "80:80" depends_on: - db db: image: mariadb:latest environment: MYSQL_ROOT_PASSWORD: example
3. Nginx 구성 파일 생성
nginx.conf라는 파일을 생성하고 다음 예시 내용에 따라 입력하세요.
server { listen 80; server_name localhost; root /var/www/html; index index.php index.html; location / { try_files $uri $uri/ /index.php?$args; } location ~ .php$ { fastcgi_pass web:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
4. PHP 애플리케이션 파일 생성
프로젝트 루트 디렉터리에 index.php라는 파일을 생성하고 아래 예시 내용에 따라 입력하세요.
<?php echo "Hello, World!"; ?>
5. Dockerfile 생성
프로젝트 루트 디렉터리에 Dockerfile이라는 파일을 생성하고 아래 예시 내용에 따라 채워주세요.
FROM php:7.4-fpm WORKDIR /var/www/html COPY . /var/www/html RUN docker-php-ext-install mysqli pdo pdo_mysql CMD ["php-fpm"] EXPOSE 9000
6. 컨테이너 빌드 및 시작
프로젝트 루트 디렉터리에서 다음 명령을 실행하여 컨테이너를 빌드하고 시작합니다.
docker-compose up -d
7. 실행 결과를 확인합니다
브라우저에서 http://localhost에 접속해 보면 "Hello, World!"라는 문구가 보인다면 컨테이너가 성공적으로 실행되었다는 의미입니다.
8. 지속적인 전달 프로세스
애플리케이션을 업데이트할 때 지속적인 전달을 위해서는 다음 단계를 따라야 합니다.
- 코드 파일 수정
코드 파일을 수정하기 전에 현재 실행 중인 컨테이너를 중지해야 합니다.
docker-compose down
그런 다음 index.php 파일을 수정할 수 있습니다. 예를 들어 "Hello, World!"를 "Hello, Docker!"로 변경합니다.
- 컨테이너 다시 빌드 및 시작
프로젝트 루트 디렉터리에서 다음 명령을 실행하여 컨테이너를 다시 빌드하고 시작합니다.
docker-compose up -d --build
- 실행 결과 확인
브라우저에서 http://localhost를 방문하세요. "Hello, Docker!"라는 단어가 표시되면 업데이트가 성공적으로 배포되었음을 의미합니다.
결론:
Docker Compose, Nginx 및 MariaDB를 사용하면 PHP 애플리케이션을 빠르게 구축하고 지속적인 전달 프로세스를 구현할 수 있습니다. 컨테이너화 기술의 장점은 일관된 개발, 테스트 및 생산 환경을 제공하여 배포 및 유지 관리를 크게 단순화할 수 있다는 것입니다. 동시에 Nginx를 역방향 프록시 및 로드 밸런서로 사용하면 요청 트래픽을 더 잘 관리할 수 있습니다. 위의 코드 예제를 통해 독자는 이러한 도구를 사용하여 지속적인 전달 프로세스를 구현하는 방법을 더 잘 이해할 수 있습니다.
위 내용은 Docker Compose, Nginx 및 MariaDB를 사용한 PHP 애플리케이션의 지속적인 제공의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

Pinetwork 노드에 대한 자세한 설명 및 설치 안내서이 기사에서는 Pinetwork Ecosystem을 자세히 소개합니다. Pi 노드, Pinetwork 생태계의 주요 역할을 수행하고 설치 및 구성을위한 전체 단계를 제공합니다. Pinetwork 블록 체인 테스트 네트워크가 출시 된 후, PI 노드는 다가오는 주요 네트워크 릴리스를 준비하여 테스트에 적극적으로 참여하는 많은 개척자들의 중요한 부분이되었습니다. 아직 Pinetwork를 모른다면 Picoin이 무엇인지 참조하십시오. 리스팅 가격은 얼마입니까? PI 사용, 광업 및 보안 분석. Pinetwork 란 무엇입니까? Pinetwork 프로젝트는 2019 년에 시작되었으며 독점적 인 Cryptocurrency Pi Coin을 소유하고 있습니다. 이 프로젝트는 모든 사람이 참여할 수있는 사람을 만드는 것을 목표로합니다.

Docker 컨테이너를 사용하여 사전 컴파일 된 패키지 (Windows 사용자의 경우)를 사용하여 소스 (숙련 된 개발자)를 컴파일하는 것을 포함하여 DeepSeek를 설치하는 방법에는 여러 가지가 있습니다. 공식 문서는 신중하게 문서를 작성하고 불필요한 문제를 피하기 위해 완전히 준비합니다.

이 튜토리얼은 PHP를 사용하여 XML 문서를 효율적으로 처리하는 방법을 보여줍니다. XML (Extensible Markup Language)은 인간의 가독성과 기계 구문 분석을 위해 설계된 다목적 텍스트 기반 마크 업 언어입니다. 일반적으로 데이터 저장 AN에 사용됩니다

문자열은 문자, 숫자 및 기호를 포함하여 일련의 문자입니다. 이 튜토리얼은 다른 방법을 사용하여 PHP의 주어진 문자열의 모음 수를 계산하는 방법을 배웁니다. 영어의 모음은 A, E, I, O, U이며 대문자 또는 소문자 일 수 있습니다. 모음이란 무엇입니까? 모음은 특정 발음을 나타내는 알파벳 문자입니다. 대문자와 소문자를 포함하여 영어에는 5 개의 모음이 있습니다. a, e, i, o, u 예 1 입력 : String = "Tutorialspoint" 출력 : 6 설명하다 문자열의 "Tutorialspoint"의 모음은 u, o, i, a, o, i입니다. 총 6 개의 위안이 있습니다

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.
