Releases: serversideup/docker-php
v3.0.0-beta3
What's Changed
- Improve release process by @jaydrogers in #282
- Install opcache extension by default by @josiasmontag in #294
- Improve Laravel Migration support for SQLite & Laravel 11 by @jaydrogers in #302
- Set default NGINX values for "fastcgi_buffers" and "fastcgi_buffer_size" by @jaydrogers in #305
⚠️ Potential Breaking Changes Coming
Caution
There may be a breaking change coming up for fpm-nginx and fpm-apache images.
In order to dramatically improve container security and preventing "file permission hell" with new users, we may be changing the default ports for Apache and NGINX so we can run this as the www-data
user by default. See this post for more details (open for comment): #179 (comment)
Be sure to chime in and subscribe to releases for the latest news.
New Contributors
- @josiasmontag made their first contribution in #294
Full Changelog: v3.0.0-beta2...v3.0.0-beta3
v3.0.0-beta2
😅 Getting ready for the upgrade
Caution
If you're not already aware, there are MAJOR improvements coming in v3
over v2
. Unfortunately this required some breaking changes. Read more about the beta here →
Make sure you're aware of what's coming up soon. If you fail to take action, you will have issues if your application automatically updates.
In short make sure you understand this guide BEFORE the new v3 gets launched:
Migration guide from v2 to v3 →
🚀 New Features (from beta1 → beta2)
fpm-apache
is now available
⚠️ Breaking Change (from beta1 → beta2)
LOG_LEVEL
conflicted with Laravel (#277), so we changed it toLOG_OUTPUT_LEVEL
- The
release-v3-0.docker-php.pages.dev
preview site has been merged into main. Everything is now located at https://serversideup.net/open-source/docker-php/
🛠️ Dependency updates
- Bumped
docker-php-extension-installer
to2.2.1
v2.2.1
🧼 Cleanup
- An explicit S6 Overlay version can now be set in
src/cli/Dockerfile
v2.2.0
🤩 New Documentation Site
Our biggest focus of this release was creating a Documentation Site that is managed directly in GitHub.
👉 The site is available at: https://serversideup.net/open-source/docker-php/
How it works
- The documentation site is run with Nuxt Content v2
- All documentation site items are located under
/docs
- It is very easy for someone to run this locally with
yarn install
&yarn dev
Deployment
- When someone opens a PR, a documentation preview URL is created with CloudFlare pages as a preview
- When that PR is merged to
main
, the site is deployed to CloudFlare pages in the production environment - We use a CloudFlare Worker to proxy https://serversideup.net/open-source/docker-php/ to CloudFlare pages
Full Project Detail
You can see the full project detail here. This was created and managed by Bugflow.
✨ Docker Image Enhancements
- Silence start up banner if S6_LOGGING is set to 1 (#126)
- Isolate migrations to allow multiple containers to preform Laravel migrations correctly (#129)
🙌 First Time Contributor(s)
v2.1.0
✨ Enhancements
- Added
php-redis
package in PHP 8.2
🐛 Fixes
- Fixed simple typo in container startup
v2.0.2
(This version contains a minor fix in the tagging process from v2.0.1 -- no changes to the docker images have been made)
✨ Enhancements
- There we no changes to the Docker images from
v2.0.0
. This is only a cleanup release on how Docker images are built & tagged
🧼 Cleanup
- Adjusted CI workflow to have beta images reference the
main
branch - Configured production Docker images to only be built on "release"
Related PRs
- See this PR for more detail: #91
v2.0.1
(This release had a minor tagging error on production release. No changes were made to the Docker images. See v2.0.2 for latest details)
v2.0.0
✨ Enhancements
- Added PHP 8.2 support
- Added Multi-arch docker image support 💪
- Use Ubuntu 22.04 as base image
- Added healthchecks on initialization (#75)
- Upgrade all scripts and init structures to use S6 Overlay 3.x standards
- Allow
openbase_dir
to be controlled by an environment variable - Added
php_intl
package (#56) - Added
bcmath
package (#58) - Allow SSL to be configured with
SSL_MODE
(#79)
🧼 Cleanup
- Eliminated all development dependencies (other than having Docker installed)
- Reorganized repository to have all source code in
/src
directory - Improved Verbosity to be less noisy, but configurable by the
S6_VERBOSITY
variable - Improved build script to accept arguments on which versions to build
🐛 Fixes
- Prevent PHP flags from being too strict (#45)
- Fixed initialization order of PHP-FPM services (https://community.serversideup.net/t/502-bad-gateway-on-google-cloud-run/700)
- Fixed GPG signing issue with Ondrej repos
- Fixed "laravel-automations" script where it was not passing environment variables set via
docker run
(View Related Discussion →)
😅 Migrating from V1
- There are no breaking changes if you did not make any major customization to the image 🎉. If you made a lot of custom scripts with S6 Overlay, check out their migration guide from S6 Overlay V2 → V3.
v1.5.0
New Features
- Added a
v1.5.0
tag so users can reference images prior to the2.0
release if needed
More detail
If you need to reference the legacy images, you can find them here: https://hub.docker.com/r/serversideup/php/tags?name=v1.5.0&page=1&ordering=-name
v1.4.0
What's new
- We adjusted how Laravel automations work
- Database migrations are disabled by default and managed by
AUTORUN_LARAVEL_MIGRATION
- Storage links are still enabled by default, but can be disabled with
AUTORUN_LARAVEL_STORAGE_LINK
See the README for more details.
⚠️ Important note
RUN_LARAVEL_AUTOMATIONS
is deprecated and has been removed.
If you want database migrations to automatically run:
- Make sure your Laravel env files has
APP_ENV
to something other thanlocal
- Set your container to have
AUTORUN_LARAVEL_MIGRATION=true
Referenced PR
See #43 for all the nitty-gritty details 🤓