설치
이 가이드는 Doggy Framework의 설치와 초기화 설정을 완료하는 데 도움을 줍니다.
사전 요구사항
- PHP >= 8.2
- ext-ctype, ext-iconv
- PostgreSQL >= 14
- Composer >= 2.5
디렉터리 구조
my-app/
├── Caddyfile # FrankenPHP 설정 (Mercure Hub, 압축, 캐시 포함)
├── config/
│ ├── bundles.php
│ ├── packages/ # 31개의 Bundle 설정 파일
│ └── services.yaml
├── src/
│ ├── Annotation/ # Ef.php, EfGroup.php
│ ├── Entity/ # Organization, Platform, Security, Storage, System, Traits
│ ├── Controller/ # Admin, Api, Security
│ ├── Service/ # AI, Storage, Security, Task, Platform 등
│ └── ...
├── templates/ # 143개의 Twig 템플릿
└── public/ # 엔트리 파일환경 의존성 설치
PostgreSQL
bash
# macOS
brew install postgresql@14
brew services start postgresql@14
# Ubuntu/Debian
sudo apt install postgresql-14
sudo systemctl start postgresql데이터베이스 생성:
bash
createdb appMercure Hub
Mercure Hub는 FrankenPHP에 내장되어 있어 Caddyfile 설정만으로 사용할 수 있으며 추가 설치가 필요 없습니다. Mercure 설정을 참조하세요.
애플리케이션 시작
애플리케이션은 호스트 머신에서 FrankenPHP를 통해 실행됩니다:
bash
# 개발 환경
symfony serve
# 프로덕션 환경 (FrankenPHP Worker 모드)
cd my-app && php -d variables_order=EGPCS bin/runtime -vvvFrankenPHP는 Caddyfile에서 자동으로 설정을 읽어 http://localhost:8000에서 수신합니다.
데이터베이스 초기화
bash
php bin/console doctrine:database:create
php bin/console doctrine:migrations:migrate
php bin/console doctrine:fixtures:load기본 데이터 초기화
bash
# 관리자 계정 초기화 (삼원)
php bin/console app:init-officers
# 정적 메뉴 생성
php bin/console app:ef:init-admin-menu기본 계정
| 역할 | 사용자명 | 초기 비밀번호 |
|---|---|---|
| 시스템 관리자 | admin | admin123 |
| 보안 담당자 | security | security123 |
| 보안 감사자 | auditor | auditor123 |
⚠️ 프로덕션 환경에서는 모든 기본 비밀번호를 반드시 변경해야 합니다.
접속
- 애플리케이션: http://localhost:8000
- 관리 백엔드: http://localhost:8000/admin
- 로그인: http://localhost:8000/login