
빠른 시작 | 예 | 특징 | 데빌박스 스택 | 커뮤니티 | 기여 | 로고 | 특허

Devilbox는 자동화된 역방향 프록시 통합을 통해 LEMP 및 MEAN은 물론 웹소켓, 노드, Python 및 Golang을 지원하는 다재다능하고 고도로 사용자 정의 가능한 zero-conf PHP Docker 스택입니다.
주요 목표는 모든 주요 플랫폼에서 실행되고 필요한 모든 버전을 전환하고 결합할 수 있는 재현 가능한 개발 환경을 제공하는 것입니다. 가상 호스트, SSL 인증서 및 DNS 레코드가 자동으로 생성되는 프로젝트를 무제한으로 지원합니다. 이메일 차단 및 널리 사용되는 개발 도구도 귀하의 서비스에 제공됩니다. 모든 것이 이미 사전 설정되어 있으므로 구성이 필요하지 않습니다.
생성된 모든 프로젝트(프런트엔드 또는 백엔드)는 서로 통신하여 완전한 마이크로서비스 아키텍처 또는 API 환경의 에뮬레이션을 지원할 수 있습니다.
사용 가능한 아키텍처: amd64 , arm64
사용 가능한 PHP 버전: 5.2 , 5.3 , 5.4 , 5.5 , 5.6 , 7.0 , 7.1 , 7.2 , 7.3 , 7.4 , 8.0 , 8.1 , 8.2
Docker 및 Docker Compose 입니다.도커 엔진 17.06.0+
도커 작성 1.16.0+
2분 안에 시작하고 실행하세요.
데빌박스 다운로드
자식 클론 https://github.com/cytopia/devilbox
Devilbox git 디렉터리를 입력하세요.
CD 데블박스
기본 환경 파일 복사
cp env-예제 .env
중요: 호스트 시스템의 포트 80및443에서 수신 대기 중인 항목이 없는지 확인하십시오. 이 포트는 Devilbox 웹서버에 필요합니다.
httpd , php 및 mysql 컨테이너 시작
# 이 단계는 필요에 따라 몇 분이 걸릴 수 있습니다.# 처음에 Docker 이미지를 가져와야 합니다.# Devilbox git 디렉토리 내부docker-compose up httpd php mysql
브라우저에서 http://localhost를 방문하세요.
데빌박스 다운로드
자식 클론 https://github.com/cytopia/devilbox
Devilbox git 디렉터리를 입력하세요.
CD 데블박스
기본 환경 파일 복사
cp env-예제 .env
중요: 호스트 시스템의 포트 80및443에서 수신 대기 중인 항목이 없는지 확인하십시오. 이 포트는 Devilbox 웹서버에 필요합니다.
httpd , php 및 mysql 컨테이너 시작
# 이 단계는 필요에 따라 몇 분이 걸릴 수 있습니다.# 처음에 Docker 이미지를 가져와야 합니다.# Devilbox git 디렉토리 내부docker-compose up httpd php mysql
브라우저에서 http://localhost를 방문하세요.
WSL2 사용하는 경우 대신 Linux 가이드를 참조하세요. Windows용 Git을 사용하여 https://github.com/cytopia/devilbox C:devilbox 로 복제합니다.
C:devilboxenv-example C:devilbox.env 에 복사합니다.
중요: 호스트 시스템의 포트 80및443에서 수신 대기 중인 항목이 없는지 확인하십시오. 이 포트는 Devilbox 웹서버에 필요합니다.
Windows에서 터미널을 열고 httpd , php 및 mysql 컨테이너를 시작합니다.
httpd , php 및 mysql 컨테이너 시작
# 이 단계는 필요에 따라 몇 분 정도 걸릴 수 있습니다.# 처음에는 Docker 이미지를 가져와야 합니다.# Devilbox git 디렉토리 내부docker-compose up httpd php mysql
브라우저에서 http://localhost를 방문하세요.
Devilbox를 사용하면 호스트 시스템은 물론 작업 컨테이너 내부에서도 프로젝트 작업을 수행할 수 있습니다. 프로젝트 파일은 두 위치 모두에서 사용할 수 있습니다. 일반적으로 작업 흐름은 다음과 같습니다.
호스트 시스템에서 선호하는 IDE(예: PhpStorm)를 사용하여 파일을 추가하고 변경하세요.
컨테이너 내부에서 작업하여 node , composer , npm , phpcs , webpack 등과 같은 일반적인 cli 도구를 실행하세요.
작업 컨테이너에 들어가려면 ./shell.sh 실행하면 됩니다.
WSL2를 사용하는 Linux, MacOS 및 Windows
# Devilbox git 디렉토리 내부./shell.sh
WSL2가 없는 Windows의 경우
# Devilbox git 디렉토리 내부./shell.bat
첫 번째 프로젝트를 만듭니다.
필요한 컨테이너를 시작합니다.
도커-작성하기 httpd php mysql
작업 컨테이너를 입력하세요.
./shell.sh
/shared/httpd 로 이동합니다.
CD /공유/httpd
프로젝트 디렉터리 만들기
mkdir 더미 프로젝트
http://localhost/vhosts.php를 방문하세요.
htdocs/ 디렉토리를 생성해야 한다는 것을 알게 될 것입니다.
htdocs/ 디렉토리 생성
# 프로젝트 디렉터리로 이동합니다.cd /shared/httpd/dummy-project# htdocs 생성 dirmkdir htdocs
http://localhost/vhosts.php를 방문하세요.
이제 모든 것이 설정되었으며 프로젝트가 생성되어 사용 가능한 것을 볼 수 있습니다.
index.php 파일 생성
# 프로젝트 htdocs 디렉토리로 이동합니다cd /shared/httpd/dummy-project/htdocs# 간단한 index.php 파일을 생성합니다echo '<?php echo "it works";' > index.php
브라우저에서 프로젝트를 확인하세요: http://dummy-project.dvl.to
문서에서 모든 예제를 찾아보세요:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Devilbox는 기본적으로 구성이 필요 없는 스택이 되려고 노력하며 모든 지루한 작업을 자동화했습니다. 또한 일상 업무에 필요한 공통 기능을 제공합니다.
오토메이션Automated Project creationAutomated SSLAutomated DNSHost permission sync | 모드Static filesPHP filesReverse ProxyWebsockets | 백엔드PHP-FPMNodeJSPythonGolang... | 프로파일링BlackfireXdebugXHProf |
프로젝트Unlimited ProjectsInter-Project CommunicationCustom Project domainsValid browser HTTPS | 인트라넷Virtual HostsC&CEmail ReaderOpCache Gui | 배터리AdminerphpMyAdminphpPgAdminphpRedMind | 서비스SQLNoSQLCache... |
Devilbox는 귀하에게 필요한 모든 서비스를 제공함으로써 지역 개발을 위한 스위스 군용 칼이 되는 것을 목표로 합니다. 그 뒤에 있는 아키텍처에 대한 아이디어를 얻고 사용 가능한 항목도 확인하려면 해당 구성 요소와 사용법을 살펴보세요.
최소 스택이는 실행할 수 있는 가장 작고 모든 기능을 갖춘 스택입니다. | 풀 스택실제로 가능한 것이 무엇인지 더 잘 이해하려면 전체 예제를 살펴보세요. |
docker-compose 통해 세 가지 방법으로 Devilbox를 시작하고 작동할 수 있습니다.
선택적 시작
온디맨드(실행 중 컨테이너 추가/제거)
전체 시작
Devilbox를 시작하기 전에 어떤 종류의 컨테이너가 필요한지 이미 알고 있다면 명시적으로 지정하면 됩니다.
# Devilbox git 디렉토리 내에서 httpd php mysql 및 redisdocker-compose up httpd php mysql redis를 시작합니다.
인트라넷은 현재 실행 중인 컨테이너를 보여줍니다.

Devilbox가 이미 시작된 경우 즉시 더 많은 컨테이너를 연결할 수 있습니다.
# Devilbox git 디렉토리 내부에 mongo와 memcacheddocker를 연결하고 mongo memcd를 구성합니다.
필요하지 않은 특정 컨테이너를 종료할 수도 있습니다.
# Devilbox git 디렉토리 내부 shutdown redisdocker-compose stop redis
모든 것을 시작하려면 인수 없이 docker-compose up 실행하세요.
# Devilbox git 디렉토리 내에서 alldocker-compose를 시작합니다.
인트라넷은 현재 실행 중인 컨테이너를 보여줍니다.

시각적 가이드를 선호한다면 YouTube에 있는 두 가지 소개 비디오를 살펴보세요. 

문서: Devilbox 설치 | 데빌박스 시작 | .env 파일
다음 표에는 Devilbox에서 제공하는 모든 통합 및 사전 구성 Docker 컨테이너가 나열되어 있습니다. 웹서버와 PHP 컨테이너만 필수이고 나머지는 모두 선택사항이므로 시작할 필요가 없습니다.
각각은 원하는 환경을 정확히 반영하기 위해 여러 가지 버전으로도 제공됩니다.
| 가속 | 편물 | 앱 | SQL | NoSQL | 대기열 / 검색 | 고라니 | 유틸리티 |
|---|---|---|---|---|---|---|---|
| HAProxy | 아파치 | PHP | 마리아DB | 멤캐시드 | RabbitMQ | 탄력적 검색 | 묶다 |
| 광택 | 엔진스 | 파이썬(플라스크) | MySQL | 몽고DB | 솔르 | 로그스태시 | 블랙파이어 |
| 페르코나DB | 레디스 | 키바나 | 메일호그 | ||||
| 포스트그레SQL | 응록 |
문서: 사용 가능한 컨테이너
부착 가능한 모든 컨테이너에는 다양한 버전이 제공됩니다. 컨테이너에 대해 원하는 버전을 선택하려면 .env 파일을 편집하고 선택한 버전의 주석 처리를 제거하기만 하면 됩니다. 어떤 조합이라도 가능합니다.
| 아파치 | 엔진스 | PHP | MySQL | 마리아DB | 페르코나 | PgSQL | 레디스 | 멤캐시드 | 몽고DB |
|---|---|---|---|---|---|---|---|---|---|
| 2.2 | 안정적인 | 5.2 [1] | 5.5 | 5.5 | 5.5 | 9.0 | 2.8 | 1.4 | 2.8 |
| 2.4 | 메인라인 | 5.3 | 5.6 | 10.0 | 5.6 | 9.1 | 3.0 | 1.5 | 3.0 |
| 5.4 | 5.7 | 10.1 | 5.7 | 9.2 | 3.2 | 1.6 | 3.2 | ||
| 5.5 | 8.0 | 10.2 | 8.0 | 9.3 | 4.0 | 최신 | 3.4 | ||
| 5.6 | 10.3 | 9.4 | 5.0 | 3.6 | |||||
| 7.0 | 10.4 | 9.5 | 6.0 | 4.0 | |||||
| 7.1 | 10.5 | 9.6 | 6.2 | 4.2 | |||||
| 7.2 | 10.6 | 10 | 7.0 | 4.4 | |||||
| 7.3 | 10.7 | 11 | 최신 | 5.0 | |||||
| 7.4 | 10.8 | 12 | 최신 | ||||||
| 8.0 | 10.9 | ... | |||||||
| 8.1 | 10.10 | 15 | |||||||
| 8.2 | 최신 |
문서: 컨테이너 버전 변경
기본 스택 외에도 쉽게 활성화하고 시작할 수 있는 다양한 다른 서비스가 있습니다.
| 파이썬(플라스크) | 블랙파이어 | 고라니 | 메일호그 | 응록 | RabbitMQ | 솔르 | HAProxy | 광택 |
|---|---|---|---|---|---|---|---|---|
| 2.7 | 1.8 | 5.xy | v1.0.0 | 2.x | 3.6 | 5 | 1.x | 4 |
| ... | ... | 6.xy | 최신 | 3.7 | 6 | 5 | ||
| 3.7 | 1.18.0 | 7.xy | 최신 | 7 | 6 | |||
| 3.8 | 최신 | 최신 | 최신 |
문서: 커스텀 컨테이너 활성화
Devilbox는 개발 스택이므로 다양한 프레임워크와 함께 작동할 수 있도록 많은 PHP 모듈을 즉시 사용할 수 있도록 보장됩니다.
코어 활성화(비활성화할 수 없음):
활성화(비활성화 가능):
사용 가능하지만 비활성화됨(활성화 가능): d
| 모듈 | PHP 5.2 | PHP 5.3 | PHP 5.4 | PHP 5.5 | PHP 5.6 | PHP 7.0 | PHP 7.1 | PHP 7.2 | PHP 7.3 | PHP 7.4 | PHP 8.0 | PHP 8.1 | PHP 8.2 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| amqp | |||||||||||||
| APC | |||||||||||||
| APCU | |||||||||||||
| bcmath | |||||||||||||
| 검은 불 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||||||
| bz2 | |||||||||||||
| 달력 | |||||||||||||
| ctype | |||||||||||||
| 컬 | |||||||||||||
| 날짜 | |||||||||||||
| DBA | |||||||||||||
| 돔 | |||||||||||||
| 호리다 | |||||||||||||
| 에레그 | |||||||||||||
| 엑시프 | |||||||||||||
| FFI | |||||||||||||
| 파일 정보 | |||||||||||||
| 필터 | |||||||||||||
| FTP | |||||||||||||
| gd | |||||||||||||
| gettext | |||||||||||||
| gmp | |||||||||||||
| 해시시 | |||||||||||||
| 아이콘 | |||||||||||||
| 이진수 | |||||||||||||
| 상상력 | |||||||||||||
| 아이맵 | |||||||||||||
| 인터베이스 | |||||||||||||
| 국제 | |||||||||||||
| 이온큐브 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||||||
| JSON | |||||||||||||
| LDAP | |||||||||||||
| libxml | |||||||||||||
| lz4 | |||||||||||||
| lzf | |||||||||||||
| mbstring | |||||||||||||
| mcrypt | |||||||||||||
| 멤캐시 | |||||||||||||
| 멤캐시드 | |||||||||||||
| 마해시 | |||||||||||||
| 몽고 | |||||||||||||
| 몽고디비 | |||||||||||||
| msgpack | |||||||||||||
| mysql | |||||||||||||
| mysqli | |||||||||||||
| mysqlnd | |||||||||||||
| OAuth | |||||||||||||
| oci8 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |
| OP캐시 | |||||||||||||
| openssl | |||||||||||||
| pcntl | |||||||||||||
| pcre | |||||||||||||
| PDO | |||||||||||||
| pdo_dblib | |||||||||||||
| PDO_파이어버드 | |||||||||||||
| pdo_mysql | |||||||||||||
| PDO_OCI | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |||||
| pdo_pgsql | |||||||||||||
| pdo_sqlite | |||||||||||||
| pdo_sqlsrv | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |||||
| pgsql | |||||||||||||
| 팔콘 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||
| 파르 | |||||||||||||
| 포식스 | |||||||||||||
| pspell | |||||||||||||
| psr | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||
| 무작위의 | |||||||||||||
| 르드카프카 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |
| 읽어보기 | |||||||||||||
| 녹음하다 | |||||||||||||
| 레디스 | |||||||||||||
| 반사 | |||||||||||||
| 세션 | |||||||||||||
| shmop | |||||||||||||
| SimpleXML | |||||||||||||
| snmp | |||||||||||||
| 비누 | |||||||||||||
| 소켓 | |||||||||||||
| 나트륨 | |||||||||||||
| 솔르 | |||||||||||||
| SPL | |||||||||||||
| SQLite | |||||||||||||
| SQLite3 | |||||||||||||
| sqlsrv | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |||||
| SSH2 | |||||||||||||
| 스울 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | ||
| sysvmsg | |||||||||||||
| sysvsem | |||||||||||||
| sysvshm | |||||||||||||
| 정돈하다 | |||||||||||||
| 토크나이저 | |||||||||||||
| 업로드 진행 | |||||||||||||
| uuid | |||||||||||||
| VIP | |||||||||||||
| wddx | |||||||||||||
| X디버그 | |||||||||||||
| xhprof | 디 | 디 | 디 | 디 | 디 | 디 | 디 | 디 | |||||
| xlswriter | |||||||||||||
| xml | |||||||||||||
| XML리더 | |||||||||||||
| xmlrpc | |||||||||||||
| XML작성기 | |||||||||||||
| xsl | |||||||||||||
| YAML | |||||||||||||
| 지퍼 | |||||||||||||
| zlib | |||||||||||||
| zstd |
코어 활성화(비활성화할 수 없음):
활성화(비활성화 가능):
사용 가능하지만 비활성화됨(활성화 가능): d
문서: PHP 모듈 활성화/비활성화
잘 알려져 있고 널리 사용되는 도구가 귀하의 서비스에 제공됩니다.














| 도구 | PHP 5.2 | PHP 5.3 | PHP 5.4 | PHP 5.5 | PHP 5.6 | PHP 7.0 | PHP 7.1 | PHP 7.2 | PHP 7.3 | PHP 7.4 | PHP 8.0 | PHP 8.1 | PHP 8.2 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 각도-cli | |||||||||||||
| 아스가르드cms | |||||||||||||
| 굉장한-ci | |||||||||||||
| 암호수용 | |||||||||||||
| 작곡가 | |||||||||||||
| 코어팩 | |||||||||||||
| 배포자 | |||||||||||||
| 에스린트 | |||||||||||||
| 자식 | |||||||||||||
| 자식 흐름 | |||||||||||||
| 그런트-cli | |||||||||||||
| 꿀꺽꿀꺽 | |||||||||||||
| jq | |||||||||||||
| jsonlint | |||||||||||||
| laravel 설치 프로그램 | |||||||||||||
| 라 라벨 루멘 | |||||||||||||
| 링크체크 | |||||||||||||
| MDL | |||||||||||||
| mdlint | |||||||||||||
| mupdf 도구 | |||||||||||||
| 네트 도구 | |||||||||||||
| 마디 | |||||||||||||
| npm | |||||||||||||
| NVM | |||||||||||||
| phalcon-devtools | |||||||||||||
| PHP-CS-Fixer | |||||||||||||
| phpcbf | |||||||||||||
| phpcs | |||||||||||||
| phpmd | |||||||||||||
| PHP 단위 | |||||||||||||
| 씨 | |||||||||||||
| 오후 2시 | |||||||||||||
| 폰캣 | |||||||||||||
| 재동기화 | |||||||||||||
| 욕 | |||||||||||||
| 쉘체크 | |||||||||||||
| SSH | |||||||||||||
| 스타일린트 | |||||||||||||
| svn | |||||||||||||
| 심포니-cli | |||||||||||||
| 작업 파일 | |||||||||||||
| 싸움 | |||||||||||||
| 정력 | |||||||||||||
| vue-cli | |||||||||||||
| 웹팩-cli | |||||||||||||
| wkhtmltopdf | |||||||||||||
| wp-cli | |||||||||||||
| wscat | |||||||||||||
| 야믈린트 | |||||||||||||
| 방사 | |||||||||||||
| yq | |||||||||||||
| zsh |
테스트한 한 제한이 없으며 실제 환경에서와 마찬가지로 프레임워크나 CMS를 사용할 수 있습니다. 다음은 광범위하게 테스트된 프레임워크 및 CMS의 몇 가지 예입니다.


















선적 서류 비치:
CakePHP 설정 | CodeIgniter 설정 | Contao 설정 | CraftCMS 설정 | 드루팔 설정 | 줌라 설정 | 라라벨 설정 | 마젠토 2 설정 | PhalconPHP 설정 | PhotonCMS 설정 | PrestaShop 설정 | 프로세스와이어 설정 | 설치 프로그램 | 심포니 설정 | 오타3 설정 | WordPress 설정 | 설정 | 젠드 설정
테스트한 한 제한이 없으며 열린 포트를 생성하는 모든 응용 프로그램을 사용할 수 있습니다. 이러한 포트는 웹 서버에 의해 역방향 프록시되며 유효한 HTTPS를 사용할 수도 있습니다. Devilbox에 내장된 자동 시작 기능을 사용하면 docker-compose up 실행하자마자 애플리케이션이 자동으로 시작되도록 할 수 있습니다.



선적 서류 비치:
역방향 프록시 NodeJ 설정 | 역방향 프록시 설정 Sphinx 설명서
Devilbox에는 http://localhost 및 https://localhost 에 미리 구성된 인트라넷이 함께 제공됩니다. 이는 명시적으로 비활성화하거나 비밀번호로 보호할 수 있습니다. 인트라넷은 선택한 구성을 표시할 뿐만 아니라 DNS 레코드 (호스트 및 컨테이너에)가 있는지와 같은 현재 구성 상태의 유효성을 검사하고 디렉터리가 올바르게 설정되었는지도 확인합니다. 또한 데이터베이스 및 이메일과 상호 작용할 수 있는 외부 도구를 제공합니다.
가상 호스트 개요 (디렉터리 및 DNS 유효성 검사)
명령 및 제어
이메일 개요
데이터베이스 개요 (MySQL, PgSQL, Redis, Memcache, ...)
정보 페이지 (Httpd, MySQL, PgSQL, Redis, Memcache, ...)
그리고 더 많은 것...
Devilbox 인트라넷에서는 기본적으로 다음 배터리를 사용할 수 있습니다.
| 관리자 | phpMyAdmin | phpPgAdmin | phpRedMin | PHP Memcached 관리자 | OpCache GUI | 메일 뷰어 |
문서: Devilbox 인트라넷
내장 인트라넷의 모양에 대한 몇 가지 예입니다.
![]() | ![]() | ![]() |
![]() |
Devilbox는 즉시 사용 가능한 단순한 단일 사용자 개발 환경부터 기업 네트워크를 위한 공유 개발 인프라까지 다양한 기능을 갖추고 있습니다.
모든 기능을 파악하려면 문서를 훑어보고 수행할 수 있는 작업과 일상 생활을 어떻게 단순화할 수 있는지 알 수 있도록 하십시오. 예상치 못한 문제가 발생하면 언제든지 Discord 채팅에 참여하거나 포럼을 방문하여 커뮤니티 지원을 빠르게 받으세요.
문서 | 불화 | 법정 | 화염 |
|---|---|---|---|
| Devilbox.readthedocs.io | 불일치/악마 상자 | Devilbox.discourse.group | github.com/devilbox/flames |
Devilbox는 아직 긴 로드맵을 가지고 있는 초기 프로젝트입니다. 기능은 커뮤니티 에 의해 결정되므로 어떤 종류의 기여도 환영합니다.
이 프로젝트에 별표 표시하기
버그 및 기능 요청에 대한 문제 해결
이 프로젝트를 복제하고 수정 사항이나 기능을 제출하세요.
저는 말 그대로 100개 이상의 프로젝트를 진행하려고 노력합니다. 내 일이 당신의 삶을 더 편하게 만들고 있다면, 커피나 맥주를 보내는 것을 고려해 보세요.
GitHub 후원
패트리온
기여: PyPI: cytopia · Terraform: cytopia · Ansible: cytopia
로고와 배너는 Devilbox/artwork 에서 확인하실 수 있습니다. 라이센스 조건에 따라 자유롭게 사용하거나 수정하십시오.



MIT 라이센스
Copyright (c) 2016 사이 토피아