Releases: cytopia/devilbox
Devilbox Release v3.0.0-beta-0.3
Release v3.0.0-beta-0.3 (2023-01-02)
This release provides the dvl.to
domain to be used with TLD_SUFFIX
(set to default), which eliminates the need to set any entries in /etc/hosts
, as all of its subdomain will point to 127.0.0.1
via official DNS. Domain has been acquired thanks to awesome sponsors!
Fixed
- Intranet: mail.php fixed deprecation warnings #798
Changed
- Use
dvl.to
as defaultTLD_SUFFIX
(it always poits to127.0.0.1
removing the need to create/etc/hosts
entries)
Added
- Intranet: vhost overview shows listening ports
- Intranet: vhost overview now has modals to show httpd and vhost-gen configs
- Docs: Show available tools per version in README.md
- Added
xhprof
PHP extension - Added extra_hosts:
host.docker.internal: host-gateway
(Refs #919, #575)
Screenshots
What's Changed
Full Changelog: v3.0.0-beta-0.2...v3.0.0-beta-03
Devilbox Release v3.0.0-beta-0.2
Release v3.0.0-beta-0.2 (2022-12-27)
See Release v3.0.0-beta-0.1 for other notable changes
The Backend configuration now supports websockets as well:
Please report issues in this PR or reach out in Discord.
file: /shared/httpd/<project>/.devilbox/backend.cfg
# PHP-FPM backend
conf:phpfpm:tcp:php80:9000
# HTTP Reverse Proxy backend
conf:rproxy:http:172.16.238.10:3000
# HTTPS Reverse Proxy backend
conf:rproxy:https:172.16.238.10:3000
# Websocket Reverse Proxy backend
conf:rproxy:ws:172.16.238.10:3000
# SSL Websocket Reverse Proxy backend
conf:rproxy:wss:172.16.238.10:3000
Once you're done with backend.cfg
changes, head over to the Intranet C&C page (http://localhost/cnc.php) and Reload watcherd
.
Fixed
- Intranet: vhost overview: allow HTTP 426 to succeed in vhost page (websocket projects)
- Intranet: vhost overview: Reverse Proxy or Websocket backends do not require a
htdocs/
dir for healthcheck - Fixed reverse proxy template generation for Apache 2.2 and Apache 2.4 vhost-gen #51
- Fixed Nginx hash bucket size length to allow long hostnames
Added
- Reverse Proxy automation for websocket projects (
ws://<host>:<port>
orwss:<host>:<port>
) (Does not work with Apache 2.2) - Added tool
wscat
to be able to test websocket connections - Intranet: vhost overview now also shows websocket projects
Changed
- Do not mount any startup/autostart script directories for multi-php compose as they do not contain tools
Affected Issues / PR's
What's Changed
Full Changelog: v3.0.0-beta-0.1...v3.0.0-beta-0.2
Devilbox Release v3.0.0-beta-0.1
Release v3.0.0-beta-0.1 (2022-12-24) 🎅🎄🎁
-
Run different PHP versions per project
-
Reverse Proxy automation
Please report issues in this PR or reach out in Discord.
This is a beta release, using a completely rewritten set of HTTPD server, based on these changes:
- devilbox/docker-nginx-stable#55
- devilbox/docker-nginx-mainline#57
- devilbox/docker-apache-2.2#53
- devilbox/docker-apache-2.4#54
Once it has been tested by the community, and potential errors have been addressed, a new major version will be released.
IMPORTANT: This release required you to copy env-example
over onto .env
due to some changes in variables.
TL;DR
- Multiple PHP Versions
Here is an example to run one project with a specific PHP version
file:# Enable all PHP versions cp compose/docker-compose.override.yml-php-multi.yml docker-compose.override.yml # Start default set and php80 docker-compose up php httpd bind php80
/shared/httpd/<project>/.devilbox/backend.cfg
conf:phpfpm:tcp:php80:9000
- Automated Reverse Proxy setup
Here is an example to proxy one project to a backend service (e.g. NodeJS or Python application, which runs in the PHP container on port 3000)
file:/shared/httpd/<project>/.devilbox/backend.cfg
conf:rproxy:http:127.0.0.1:3000
PHP hostnames and IP addresses
Note: Use IP addresses instead of hostnames for Nginx
PHP Version | Hostname | IP address |
---|---|---|
5.4 | php54 | 172.16.238.201 |
5.5 | php55 | 172.16.238.202 |
5.6 | php56 | 172.16.238.203 |
7.0 | php70 | 172.16.238.204 |
7.1 | php71 | 172.16.238.205 |
7.2 | php72 | 172.16.238.206 |
7.3 | php73 | 172.16.238.207 |
7.4 | php74 | 172.16.238.208 |
8.0 | php80 | 172.16.238.209 |
8.1 | php81 | 172.16.238.210 |
8.2 | php82 | 172.16.238.211 |
Fixed
- Fixed Protocol substitution bug in Reverse Proxy generation for Apache 2.2 and Apache 2.4 vhost-gen #49 vhost-gen #50
- Fixed missing module
mod_proxy_html
in Apache 2.4 as per requirement fromvhost-gen
for Reverse Proxy setup - Fixed encoding issue with Apache 2.4 Reverse Proxy by enabling
mod_xml2enc
module (Required bymod_proxy_html
) - Allow to run different PHP versions per project. fixes #146
Added
- New HTTPD server capable of auto reverse proxy creation (and different PHP versions per project)
- Intranet: Added Command & Control center to view watcherd logs and retrigger config in case of vhost changes
- Environment variable
DEVILBOX_HTTPD_MGMT_PASS
- Environment variable
DEVILBOX_HTTPD_MGMT_USER
- New Docker Compose Override file
docker-compose.override.yml-php-multi.yml
(allows to run multiple PHP versions). - Update Bind to latest version
Changed
- Disabled
psr
extension by default php-psr #78 - Disabled
phalcon
extension by default - Environment variable
DEBUG_COMPOSE_ENTRYPOINT
renamed toDEBUG_ENTRYPOINT
- Environment variable
HTTPD_TIMEOUT_TO_PHP_FPM
renamed toHTTPD_BACKEND_TIMEOUT
Other notable Changes
- shell.sh to fall back to docker compose (no dash) by @Cleancookie in #920
- Add support for meilisearch by @minhchu in #910
- 🎅🎄🎁 by @cytopia in #942
New Contributors
- @Cleancookie made their first contribution in #920
- @minhchu made their first contribution in #910
Full Changelog: v2.4.0...v3.0.0-beta-0.1
Devilbox Release v2.4.0
Release v2.4.0 (2022-12-18)
This release might be a bit bumpy due to a massive amount of changes in upstream projects. If you encounter issues, please do raise tickets.
General
New PHP-FPM images
This release uses a new set of PHP-FPM images. They have been heavily rewritten and modularized in order to make PHP extension and PHP tool generation more easy. See the following release notes for details:
499 changed files with 29,281 additions and 13,977 deletions.
- https://github.com/devilbox/docker-php-fpm/releases/tag/0.145
- https://github.com/devilbox/docker-php-fpm/releases/tag/0.146
- https://github.com/devilbox/docker-php-fpm/releases/tag/0.147
How to add modules/tools?
Available Tools
You can now also find a detailed overview about what tools are installed in what PHP version image. See here: https://github.com/devilbox/docker-php-fpm/blob/master/doc/available-tools.md
Gitter -> Discord
Additionally I am moving away from Gitter to Discord. See reason and announcement here: https://devilbox.discourse.group/t/migrating-from-gitter-to-discord/716/2
🎮 Discord: https://discord.gg/2wP3V6kBj4
Fixed
- Intranet: Fixed PostgreSQL database overview
- Fixed PATH for all pre-installed composer and node tools
Updated
- Updated PHP versions (#940)
- Updated MySQL versions
- Intranet: Improved installed tools overview (index.php)
Added
- Added tool
mhsendmail
for arm64 images - Added tool
wkhtmltopdf
for arm64 images (#936) - Added tool
taskfile
(#934)
Removed
- Removed tool
drush
(detail: #930 (comment))
Issues / PR's
The following Issues / PR's are addressed in a new tagged release.
Other notable changes
New Contributors
Full Changelog: v2.3.0...v2.4.0
Devilbox Release v2.3.0
Release v2.3.0 (2022-12-04)
Fixed
- Fixed correct permission for
/opt/nvm
in PHP container #499, #PHP-FPM 0.141 - Fixed Debian Jessie repository trust beyond EOL #PHP-FPM 0.140
- Fixed phpPgAdmin to work with PostgreSQL 15
Added
- Added env var to Bind to specify overall memory consumption via
MAX_CACHE_SIZE
#BIND 0.30 - Added PHP extension:
lz4
#PHP-FPM 0.144 - Added PHP extension:
lzf
#PHP-FPM 0.144 - Added PHP extension:
zstd
#PHP-FPM 0.144 - Added serializer to Redis extension:
lz4
,lzf
andzstd
#PHP-FPM 0.144 - Added MariaDB 10.9 and 10.11 #MYSQL 0.19
- Added PGSQL 15
- Added Redis 7.0
Changed
- Switched to
phalcon
5.x extension for PHP 8.0 and PHP 8.1 #913, #PHP-FPM 0.143 - Updated to latest minor versions of Apache 2.2, Apache 2.4, Nginx stable and Nginx mainline
- Updated to latest minor versions of MySQL, MariaDB and Percona DB
- Updated to latest minor versions of PHP #917
- Updated PHP extensions to lastest versions #899
Removed
- Removed Phalcon DevTools for PHP 7.4 due to build error #PHP-FPM 0.142
Issues / Pull Requests
The following Issues / Pull Requests will be resolved by this PR:
Other notable changes
- Add docs about .local on MacOS by @jakeparis in #893
- Update bug_report.yml by @cytopia in #896
- Add custom vhost-gen yml files into gitignore by @ahberg in #897
- Fixing Magento 2 doc link by @rafaelstz in #902
- Fix: Using ${var} in strings is deprecated, use {$var} instead by @vikas5914 in #925
- docs: fix CodeIgniter3 docs link by @kenjis in #928
- fix typo by @boodaah3d in #926
- docs: add "Setup CodeIgniter4" by @kenjis in #927
- Fix rabbit container name typo in docs by @alexaandrov in #931
- Release v2.3.0 by @cytopia in #935
New Contributors
- @jakeparis made their first contribution in #893
- @ahberg made their first contribution in #897
- @rafaelstz made their first contribution in #902
- @vikas5914 made their first contribution in #925
- @kenjis made their first contribution in #928
- @boodaah3d made their first contribution in #926
- @alexaandrov made their first contribution in #931
Full Changelog: v2.2.0...v2.3.0
Devilbox Release v2.2.0
Release v2.2.0 (2022-04-14)
This release adds PHP-FPM Community images via docker-compose.override.yml
, which easily allows you to build upon existing PHP images and customize them for your usecase/workflow.
Added
- Added PHP-FPM Community images: https://github.com/devilbox/docker-php-fpm-community/
Documentation
How to create your own flavoured image
# Clone community repo
git clone https://github.com/devilbox/docker-php-fpm-community
cd docker-php-fpm-community
# Create your flavour
make create-project
# build your flavour
make build FLAVOUR=<FLAVOUR_NAME>
Devilbox Release v2.1.1
Release v2.1.1 (2022-04-07)
The previous v2.1.0 release was using the php docker images from the release branch (as building others takes >9 hours). This one fixes it and uses the git tagged images, which are rebuild every two days.
Changed
- Used tagged PHP images (auto-updating) instead early release branch one.
Devilbox Release v2.1.0
Release v2.1.0 (2022-04-05)
This is now a 100% arm64
compatible release. If you are on an arm64
architecture and have run Devilbox before with amd64
images, the suggestion is to remove those images in order to ensure everything runs smooth for this release.
Fixed
- Fixed PHP image rsyslog error
imklog: cannot open kernel log (/proc/kmsg): Operation not permitted
. - Fixed missing
arm64
support: #855
Added
- Added PHP images with
arm64
support for PHP: https://github.com/devilbox/docker-php-fpm/releases/tag/0.138 - Added PHP images with
arm64
support for PHP: https://github.com/devilbox/docker-php-fpm/releases/tag/0.139 - Added
vips
to PHP 8.0 - Added
vips
to PHP 8.1 - Added
swoole
to PHP 8.1
Removed
- Removed homebrew due to arm64 issues
- Removed Ansible due to arm64 issues
Devilbox Release v2.0.0
Release v2.0.0 (2022-03-28)
The goal of this release is to reduce the overall size of Docker images and bring in latest versions.
Important: This release introduces backwards incompatible changes due to only keeping major versions of PostreSQL and therefore removing old volumes. Additionally the PostgreSQL volume names have changed. In order to guarantee a smooth transition, backup your PostgreSQL databases in the previous version before switching and then re-importing them in this version.
Update your .env
file from env-example
Added
- Added CakePHP integration tests for PHP 8+
- Added
.env
variableHTTPD_FLAVOUR
to decide betweenDebian
orAlpine
for HTTP server
Changed
- Changed default PostgreSQL server from
12.4
to14-alpine
(breaking change) - Changed default Redis server from
6.0
to6.2-alpine
- Changed default Memcached server from
1.6
to1.6-alpine
- Changed default MongoDB server from
4.4
to5.0
- Changed default HTTPD server flavour from
Debian
toAlpine
- Use tiny Alpine version of Bind container
Removed
- Removed CI for MongoDB
2.8
and MongoDB3.0
due to segfault: docker-library/mongo#251