퍼스트가든 개발서버용 dockerfile
- Dockerfile 57.6%
- Shell 42.4%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| 8.2 | ||
| 8.2.7 | ||
| .env.sample | ||
| docker-compose.yml | ||
| README.md | ||
| run.example.sh | ||
| run.sh | ||
이 프로젝트는 그누보드 5 구동에 최적화된 Docker 환경을 제공합니다. 개발 및 배포 환경에서 일관된 PHP 8.2 환경과 필요한 라이브러리를 빠르게 구성하기 위해 만들어졌습니다.
🚀 주요 특징
최적화된 환경: PHP 8.2 + Apache 기반, 그누보드 필수 확장 모듈(GD, MySQLi, Zip 등) 사전 설치.
보안 및 권한 관리: PUID/PGID 환경 변수를 통한 호스트-컨테이너 간 파일 권한 자동 동기화.
대용량 파일 지원: 1GB까지 파일 업로드 허용 및 최적화된 PHP 설정.
편의성: Composer 자동 설치 및 패키지 관리 지원.
📋 사전 요구 사항
Docker 및 Docker Compose가 설치되어 있어야 합니다.
시스템 환경 변수(.env) 파일에 아래 항목이 설정되어 있어야 합니다.
PUID=1000
PGID=1000
TZ=Asia/Seoul
🛠 사용 방법
1. 이미지 빌드
docker compose build --no-cache
2. 컨테이너 실행
docker compose up -d
3. PHP 설정 변경
./web/conf.d/custom.ini 파일을 생성하여 PHP 설정을 커스텀할 수 있습니다.
upload_max_filesize = 1024M
post_max_size = 1050M
memory_limit = 512M
🔐 권한 관리
이 이미지는 컨테이너 실행 시 자동으로 볼륨 마운트된 /var/www/html의 소유권을 PUID/PGID에 맞게 변경합니다. 따라서 호스트 OS에서 파일을 직접 수정해도 권한 충돌 문제가 발생하지 않습니다.
📦 포함된 PHP 확장 모듈
gd (JPEG, PNG, WebP 지원)
mysqli, pdo_mysql
zip, intl, soap, opcache, bcmath, exif
imagick
Composer 패키지: composer.json을 넣고 컨테이너를 재시작하면 자동으로 의존성 패키지가 설치됩니다.