Files
php-apache/README.md

2.9 KiB

Cafe24 10G자이언트플러스 호스팅 환경 테스트 서버

Cafe24 10G자이언트플러스 호스팅 환경과 최대한 유사한 개발 환경 구축을 목표로 합니다.

지원 PHP 버전

  • PHP 8.2 (포트: 80) - 현재 운영 중인 버전
  • PHP 8.4 (포트: 8084) - 추후 업그레이드 대비용

두 버전이 동시에 실행되며, 동일한 웹루트와 MariaDB를 공유합니다.

실행 방법

1. 저장소 클론

git clone https://git.siane.kr/firstgarden/php-apache
cd php-apache

2. 환경설정

cp .env.example .env

3-1. 첫 배포 시 (로컬에서 빌드 후 사설 저장소에 푸시)

docker compose up -d --build

빌드 완료 후, 빌드된 이미지를 사설 저장소에 푸시:

# Linux/Mac
./build-and-push.sh

# Windows PowerShell
.\build-and-push.ps1

3-2. 이후 배포 시 (사설 저장소에서 이미지 다운로드)

docker compose up -d

주의: 사설 저장소에서 이미지를 받으려면 Docker 레지스트리 로그인이 필요합니다.

docker login reg.firstgarden.co.kr

접속 정보

설정 변경

.env 파일에서 다음 항목을 수정할 수 있습니다:

  • WEB_ROOT - 웹소스 경로 (기본값: ./www)
  • MYSQL_PORT - MariaDB 포트 (기본값: 3306)
  • MYSQL_ROOT_PASSWORD - MariaDB 루트 비밀번호
  • TZ - 타임존 (기본값: Asia/Seoul)

폴더 구조

.
├── docker-compose.yml
├── .env                    # 환경설정 파일
├── .env.example            # 환경설정 예제
├── README.md
├── logs/                   # 로그 디렉토리
│   ├── apache/
│   │   ├── 8.2/           # PHP 8.2 Apache 로그
│   │   └── 8.4/           # PHP 8.4 Apache 로그
│   ├── php/
│   │   ├── 8.2/           # PHP 8.2 에러 로그
│   │   └── 8.4/           # PHP 8.4 에러 로그
│   └── mariadb/           # MariaDB 로그
├── data/
│   └── mariadb/           # MariaDB 데이터 볼륨
├── www/                   # 웹 소스 (PHP 8.2/8.4 공유)
│   └── (웹소스)
├── 8.2/
│   ├── Dockerfile         # PHP 8.2 이미지
│   └── entrypoint.sh
└── 8.4/
    ├── Dockerfile         # PHP 8.4 이미지
    └── entrypoint.sh

주요 특징

  • 독립적인 PHP 버전: 8.2와 8.4를 동시에 실행 가능
  • 공유 웹루트: 동일한 소스코드를 양쪽 PHP 버전에서 테스트
  • 단일 MariaDB: 하나의 MariaDB 인스턴스를 두 PHP 서버에서 공유
  • 분리된 로그: 각 PHP 버전별로 로그를 별도로 관리
  • Cafe24 환경 모의: utf8mb4, 최대 연결수 100 등 Cafe24 기본값 적용