Skip to content

Commit 6b433bb

Browse files
committed
Restructured README to have better examples for getting started
1 parent f7cd1d7 commit 6b433bb

File tree

1 file changed

+81
-33
lines changed

1 file changed

+81
-33
lines changed

README.md

Lines changed: 81 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,18 @@
1111
</p>
1212

1313
## Introduction
14-
`serversideup/php` is an optimized set of Docker Images for running PHP applications in production. Everything is designed around improving the developer experience with PHP and Docker. Gone are the days of configuring each environment differently, and gone are the days of trying to figure out why your code works in one environment and not the other.
14+
Production-ready PHP Docker images built on official PHP. Optimized for Laravel, WordPress, and modern PHP applications.
1515

16-
These images are highly optimized to run modern PHP applications, no matter where you want your application to run.
16+
### What Makes These Images Different?
1717

18-
Experience the ***true difference*** of using these images vs the other options out there.
18+
**serversideup/php** takes the official PHP Docker images and adds everything you need for real-world production use:
1919

20-
[Read more about the key differences with these images →](https://serversideup.net/open-source/docker-php/docs/getting-started/these-images-vs-others)
20+
-**Secure by Default** - Runs as unprivileged user, not root
21+
-**Zero Config Required** - Production-ready defaults, customize with environment variables
22+
-**Batteries Included** - Composer, common extensions, and helpful utilities pre-installed
23+
-**Framework Optimized** - Special automations for Laravel (migrations, queues, Horizon, etc.)
24+
-**Multiple Variations** - CLI, FPM, FPM+NGINX, FPM+Apache, FrankenPHP
25+
-**Modern Architecture** - Native health checks, S6 Overlay, unified logging
2126

2227
<details open>
2328
<summary>
@@ -27,31 +32,75 @@ Experience the ***true difference*** of using these images vs the other options
2732
|<picture><img width="100%" alt="Production-Ready" src="https://serversideup.net/wp-content/uploads/2023/08/production-ready.png"></picture>|<picture><img width="100%" alt="Native Health Checks" src="https://serversideup.net/wp-content/uploads/2023/08/native-health-checks.png"></picture>|<picture><img width="100%" alt="High Performance" src="https://serversideup.net/wp-content/uploads/2023/11/high-performance.png"></picture>|
2833
|:---:|:---:|:---:|
2934
|<picture><img width="100%" alt="Customizable and Flexible" src="https://serversideup.net/wp-content/uploads/2023/08/customizable-flexible.png"></picture>|<picture><img width="100%" alt="Native CloudFlare Support" src="https://serversideup.net/wp-content/uploads/2023/11/cloudflare.png"></picture>|<picture><img width="100%" alt="Base on Official PHP" src="https://serversideup.net/wp-content/uploads/2023/11/official-php.png"></picture>|
30-
|<picture><img width="100%" alt="NGINX Unit" src="https://serversideup.net/wp-content/uploads/2023/11/nginx-unit.png"></picture>|<picture><img width="100%" alt="Unified Logging" src="https://serversideup.net/wp-content/uploads/2023/11/unified-logging.png"></picture>|<picture><img width="100%" alt="FPM + S6 Overlay" src="https://serversideup.net/wp-content/uploads/2023/11/fpm-s6.png"></picture>|
35+
|<picture><img width="100%" alt="FrankenPHP" src="https://serversideup.net/wp-content/uploads/2023/11/frankenphp.png"></picture>|<picture><img width="100%" alt="Unified Logging" src="https://serversideup.net/wp-content/uploads/2023/11/unified-logging.png"></picture>|<picture><img width="100%" alt="FPM + S6 Overlay" src="https://serversideup.net/wp-content/uploads/2023/11/fpm-s6.png"></picture>|
3136

3237
</details>
3338

34-
## Professionally Supported
35-
Are you looking for help on integreating Docker with your PHP application? We have multiple options to help your team out:
39+
## Getting Started
3640

37-
- [Get Managed Hosting](https://serversideup.net/hire-us/): CI/CD design and engineering, managed hosting, guaranteed uptime, any host, any server.
38-
- [Get Professional Help](https://schedule.serversideup.net/team/serversideup/quick-chat-with-jay): Get video + screen-sharing help directly from the core contributors.
39-
- [Get a Full-Stack Development Team](https://serversideup.net/hire-us/): We can build your app from the ground up, or help you with your existing codebase.
41+
### Try it in 2 minutes ⚡
4042

41-
## Usage
42-
This repository creates a number of Docker image variations, allowing you to choose exactly what you need.
43+
Want to see how easy it is? Our installation guide walks you through creating your first PHP app with Docker:
44+
45+
1. ✅ Run `phpinfo()` in your browser
46+
2. ✅ Upgrade PHP versions by changing one line
47+
3. ✅ Switch between variations (FPM, FrankenPHP, etc.)
48+
4. ✅ See environment variables in action
49+
50+
**[👉 Follow the quick start guide](https://serversideup.net/open-source/docker-php/docs/getting-started/installation)**
51+
52+
### Quick Example
53+
54+
Here's what a complete Laravel setup with NGINX + PHP 8.4 looks like:
55+
56+
```yml
57+
services:
58+
php:
59+
image: serversideup/php:8.4-fpm-nginx
60+
ports:
61+
- "80:8080"
62+
environment:
63+
# Customize PHP with environment variables
64+
PHP_OPCACHE_ENABLE: "1"
65+
PHP_MEMORY_LIMIT: "512M"
66+
67+
# Laravel automations (migrations, storage link, etc.)
68+
AUTORUN_ENABLED: "true"
69+
volumes:
70+
- .:/var/www/html
71+
```
72+
73+
That's it. No complex configs. Just environment variables.
74+
75+
**Ready to try it?** [Get started with our tutorial →](https://serversideup.net/open-source/docker-php/docs/getting-started/installation)
76+
77+
## Available Image Variations
78+
79+
Choose the variation that fits your needs. All images follow the pattern:
4380
44-
Simply use this image name pattern in any of your projects:
45-
```sh
46-
serversideup/php:{{version}}-{{variation-name}}
4781
```
48-
For example... If I wanted to run **PHP 8.2** with **FPM + NGINX**, I would use this image:
49-
```sh
50-
serversideup/php:8.2-fpm-nginx
82+
serversideup/php:{{version}}-{{variation-name}}
5183
```
5284

85+
### Popular Variations
86+
87+
| Variation | Best For | Example |
88+
|-----------|----------|---------|
89+
| **fpm-nginx** | Production web apps | `serversideup/php:8.4-fpm-nginx` |
90+
| **fpm-apache** | Apache-based deployments | `serversideup/php:8.4-fpm-apache` |
91+
| **cli** | CLI scripts, cron jobs, queues | `serversideup/php:8.4-cli` |
92+
| **frankenphp** | Modern, high-performance apps | `serversideup/php:8.4-frankenphp` |
93+
| **fpm** | Custom web server setup | `serversideup/php:8.4-fpm` |
94+
95+
### Supported PHP Versions & Platforms
96+
5397
> [!NOTE]
54-
> All our images are available on [**Docker Hub**](https://hub.docker.com/r/serversideup/php/) and [**GitHub Packages**](https://github.com/serversideup/docker-php/pkgs/container/php). 🥳
98+
> All images are available on [**Docker Hub**](https://hub.docker.com/r/serversideup/php/) and [**GitHub Packages**](https://github.com/serversideup/docker-php/pkgs/container/php).
99+
100+
We support **PHP 7.4 through 8.4** with both **Debian** and **Alpine** base images.
101+
102+
[Learn More About Choosing an Image →](https://serversideup.net/open-source/docker-php/docs/getting-started/choosing-an-image)
103+
55104

56105
| ⚙️ Variation | 🚀 Version |
57106
| ------------ | ---------- |
@@ -62,6 +111,13 @@ serversideup/php:8.2-fpm-nginx
62111
| frankenphp | **Debian Based**<br>[![serversideup/php:8.4-frankenphp](https://img.shields.io/docker/image-size/serversideup/php/8.4-frankenphp?label=serversideup%2Fphp%3A8.4-frankenphp)](https://hub.docker.com/r/serversideup/php/tags?name=8.4-frankenphp&page=1&ordering=-name)<br>[![serversideup/php:8.3-frankenphp](https://img.shields.io/docker/image-size/serversideup/php/8.3-frankenphp?label=serversideup%2Fphp%3A8.3-frankenphp)](https://hub.docker.com/r/serversideup/php/tags?name=8.3-frankenphp&page=1&ordering=-name)<br>**Alpine Based**<br>[![serversideup/php:8.4-frankenphp-alpine](https://img.shields.io/docker/image-size/serversideup/php/8.4-frankenphp-alpine?label=serversideup%2Fphp%3A8.4-frankenphp-alpine)](https://hub.docker.com/r/serversideup/php/tags?name=8.4-frankenphp-alpine&page=1&ordering=-name)<br>[![serversideup/php:8.3-frankenphp-alpine](https://img.shields.io/docker/image-size/serversideup/php/8.3-frankenphp-alpine?label=serversideup%2Fphp%3A8.3-frankenphp-alpine)](https://hub.docker.com/r/serversideup/php/tags?name=8.3-frankenphp-alpine&page=1&ordering=-name) |
63112
| unit (deprecated) | ⚠️ NGINX is no longer maintaining NGINX Unit. It will eventually be removed from this project. [Learn more →](https://serversideup.net/open-source/docker-php/docs/image-variations/unit) |
64113

114+
## Professional Support
115+
Need help integrating Docker with your PHP application?
116+
117+
- **[Managed Hosting](https://serversideup.net/hire-us/)** - CI/CD design, managed hosting, guaranteed uptime
118+
- **[Professional Help](https://schedule.serversideup.net/team/serversideup/quick-chat-with-jay)** - Video + screen-sharing with core contributors
119+
- **[Development Team](https://serversideup.net/hire-us/)** - From ground-up builds to existing codebases
120+
65121
## Resources
66122
- **[Website](https://serversideup.net/open-source/docker-php/)** overview of the product.
67123
- **[Docs](https://serversideup.net/open-source/docker-php/docs)** for a deep-dive on how to use the product.
@@ -83,7 +139,7 @@ Need help getting started? Join our Discord community and we'll help you out!
83139
<a href="https://serversideup.net/discord"><img src="https://serversideup.net/wp-content/themes/serversideup/images/open-source/join-discord.svg" title="Join Discord"></a>
84140

85141
## Our Sponsors
86-
All of our software is free an open to the world. None of this can be brought to you without the financial backing of our sponsors.
142+
All of our software is free and open to the world. None of this can be brought to you without the financial backing of our sponsors.
87143

88144
<p align="center"><a href="https://github.com/sponsors/serversideup"><img src="https://521public.s3.amazonaws.com/serversideup/sponsors/sponsor-box.png" alt="Sponsors"></a></p>
89145

@@ -93,24 +149,16 @@ All of our software is free an open to the world. None of this can be brought to
93149
#### Bronze Sponsors
94150
<!-- bronze -->No bronze sponsors yet. <a href="https://github.com/sponsors/serversideup">Become a sponsor →</a><!-- bronze -->
95151

96-
#### Special Infrastructure Sponsors
97-
This project takes an incredible amount of computing power to build and maintain over 8,000 different docker image tags. We're extremely grateful for the following sponsors who help bring the power to ship more PHP.
152+
#### Infrastructure Sponsors
153+
This project requires significant computing power to build and maintain over 8,000 different Docker image tags. We're extremely grateful for the following sponsors:
98154

99155
<a href="https://depot.dev/"><img src="https://serversideup.net/sponsors/depot.png" alt="Depot" width="250px"></a>&nbsp;&nbsp;<a href="https://hub.docker.com/u/serversideup"><img src="https://serversideup.net/sponsors/docker.png" alt="Docker" width="250px"></a>
100156

101157
#### Individual Supporters
102158
<!-- supporters --><a href="https://github.com/aagjalpankaj"><img src="https://github.com/aagjalpankaj.png" width="40px" alt="aagjalpankaj" /></a>&nbsp;&nbsp;<!-- supporters -->
103159

104-
#### Special thanks
105-
We'd like to specifically thank a few folks for taking the time for being a sound board that deeply influenced the direction of this project.
106-
107-
Please check out their work:
108-
- [Chris Fidao](https://x.com/fideloper)
109-
- [Joel Clermont](https://x.com/jclermont)
110-
- [Patricio](https://x.com/PatricioOnCode)
111-
112160
## About Us
113-
We're [Dan](https://x.com/danpastori) and [Jay](https://x.com/jaydrogers) - a two person team with a passion for open source products. We created [Server Side Up](https://serversideup.net) to help share what we learn.
161+
We're [Dan](https://x.com/danpastori) and [Jay](https://x.com/jaydrogers) - a two-person team with a passion for open source products. We created [Server Side Up](https://serversideup.net) to help share what we learn.
114162

115163
<div align="center">
116164

@@ -130,7 +178,7 @@ We're [Dan](https://x.com/danpastori) and [Jay](https://x.com/jaydrogers) - a tw
130178
* **🐥 [Twitter](https://x.com/serversideup)** - You can also follow [Dan](https://x.com/danpastori) and [Jay](https://x.com/jaydrogers).
131179
* **❤️ [Sponsor Us](https://github.com/sponsors/serversideup)** - Please consider sponsoring us so we can create more helpful resources.
132180

133-
## Our products
181+
## Our Products
134182
If you appreciate this project, be sure to check out our other projects.
135183

136184
### 📚 Books
@@ -144,4 +192,4 @@ If you appreciate this project, be sure to check out our other projects.
144192
### 🌍 Open Source
145193
- **[AmplitudeJS](https://521dimensions.com/open-source/amplitudejs)**: Open-source HTML5 & JavaScript Web Audio Library.
146194
- **[Spin](https://serversideup.net/open-source/spin/)**: Laravel Sail alternative for running Docker from development → production.
147-
- **[Financial Freedom](https://github.com/serversideup/financial-freedom)**: Open source alternative to Mint, YNAB, & Monarch Money.
195+
- **[Financial Freedom](https://github.com/serversideup/financial-freedom)**: Open source alternative to Mint, YNAB, & Monarch Money.

0 commit comments

Comments
 (0)