>백엔드 개발 >PHP 튜토리얼 >간단한 PHP 애플리케이션 Dockerizing

간단한 PHP 애플리케이션 Dockerizing

Barbara Streisand
Barbara Streisand원래의
2024-12-09 06:34:06606검색

Dockerizing a Simple PHP Application

컨테이너화는 다양한 환경에서 일관성과 이식성을 추구하는 개발자에게 획기적인 변화를 가져옵니다. 이 블로그 게시물에서는 간단한 PHP 애플리케이션을 Dockerizing하는 실제 예를 살펴보겠습니다. 이 가이드가 끝나면 기본 PHP 앱을 제공하는 Docker 컨테이너가 작동하게 됩니다.

개요

Docker를 사용하여 기본 PHP 애플리케이션을 컨테이너화하겠습니다. 우리가 사용할 PHP 코드는 다음과 같습니다.

<?php
// index.php
echo "Hello Docker!";
?>

우리가 만들 Dockerfile은 PHP 8.2를 사용하여 이미지를 빌드하고 포트 8000에서 이 PHP 애플리케이션을 제공합니다.

단계별 가이드

1단계: 앱 폴더 생성

프로젝트를 위한 새 폴더를 만드는 것부터 시작하세요. 이 예에서는 이름을 php-docker-app으로 지정하겠습니다. 이 폴더 안에 두 개의 파일을 추가합니다:

  • index.php - PHP 애플리케이션 코드가 포함되어 있습니다.
  • Dockerfile - 컨테이너 구성을 정의합니다.

2단계: Dockerfile 작성

Dockerfile의 내용은 다음과 같습니다.

# Use the official PHP image
FROM php:8.2-cli

# Set the working directory
WORKDIR /usr/src/app

# Copy the PHP file into the container
COPY index.php .

# Expose port 80 (optional for CLI-based serving, not necessary in this example)
EXPOSE 80

# Command to run the PHP server on port 8000
CMD ["php", "-S", "0.0.0.0:8000", "index.php"]

3단계: Docker 이미지 빌드

터미널을 열고 Dockerfile과 index.php가 포함된 폴더로 이동하세요. Docker 이미지를 빌드하려면 다음 명령을 실행하세요.

docker build -t php-helloworld .

이 명령은 다음을 수행합니다.

  • Dockerfile을 사용하여 이미지를 빌드합니다.
  • 이미지에 php-helloworld라는 이름을 태그합니다.

4단계: Docker 컨테이너 실행

이미지를 성공적으로 빌드한 후 다음 명령을 사용하여 컨테이너를 실행합니다.

docker run -p 8000:8000 php-helloworld

상황은 다음과 같습니다.

  • -p 플래그는 호스트 시스템의 포트 8000을 컨테이너의 포트 8000에 매핑합니다.
  • Docker는 php-helloworld 이미지를 실행하고 포트 8000에서 PHP 서버를 시작합니다.

5단계: 앱에 액세스

브라우저를 열거나 컬과 같은 도구를 사용하여 다음으로 이동하세요.

http://127.0.0.1:8000/

다음 출력이 표시됩니다.

<?php
// index.php
echo "Hello Docker!";
?>

작동 방식

  • 기본 이미지: php:8.2-cli 기본 이미지는 즉시 사용 가능한 PHP CLI 환경을 제공합니다.
  • 작업 디렉터리: WORKDIR /usr/src/app 명령은 컨테이너 내부의 작업 디렉터리를 설정합니다.
  • 파일 복사: COPY index.php . 명령은 호스트에서 컨테이너로 PHP 스크립트를 복사합니다.
  • 명령 실행: CMD 지시어는 index.php 파일을 제공하는 PHP 서버를 시작합니다.

PHP 앱 Docker화의 이점

  • 일관성: 앱은 다양한 환경에서 동일하게 작동합니다.
  • 이식성: Docker가 설치된 모든 곳에서 앱을 실행할 수 있습니다.
  • 설치 용이성: PHP를 설치하거나 로컬에 서버를 구성할 필요가 없습니다.

다음 단계

이 가이드에서는 간단한 PHP 앱 Dockerizing의 기본 사항을 설명했습니다. 더 자세히 알아보려면:

  • 더 복잡한 시나리오를 처리하려면 Apache 또는 Nginx와 같은 웹 서버를 추가하세요.
  • 다중 컨테이너 설정을 관리하려면 docker-compose.yml 파일을 생성하세요.
  • 데이터베이스 서비스 또는 기타 종속성을 통합합니다.

결론

단 몇 단계만으로 PHP 애플리케이션을 성공적으로 도커화할 수 있습니다. 이 접근 방식은 격리되고 재현 가능한 개발 환경을 만드는 데 적합합니다. 더 복잡한 프로젝트에 사용해 보고 Docker가 어떻게 작업 흐름을 간소화하는지 알아보세요!

위 내용은 간단한 PHP 애플리케이션 Dockerizing의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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