Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gremo/symfony-docker
https://github.com/gremo/symfony-docker
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/gremo/symfony-docker
- Owner: gremo
- Created: 2024-09-04T16:29:46.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-09-04T18:14:21.000Z (4 months ago)
- Last Synced: 2024-09-05T23:22:10.981Z (4 months ago)
- Language: Dockerfile
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Symfony Docker
A simple archive that provides a development and production container for Symfony applications based on Docker. Uses FrankenPHP, MariaDB, phpMyAdmin and Mailpit.
## 🚀 Quick start
1. Download the [**latest release**](https://github.com/gremo/symfony-docker/releases/download/latest/symfony-docker.zip) and unzip the archive.
2. Open Visual Studio Code and reopen the project in the **Dev Container**.
3. Download the **Symfony Skeleton**:
```bash
curl -O https://raw.githubusercontent.com/symfony/skeleton/refs/heads/7.1/composer.json
```
4. Add Dev Container **extensions dependencies**:
```bash
composer require --dev --no-update friendsofphp/php-cs-fixer phpstan/phpstan
```
5. Install **Symfony**:
```bash
composer install
```> [!IMPORTANT]
> PHPStan **will fail** if the `tests` folder is missing and you haven't installed either the `webapp` or `symfony/test-pack` packages. To resolve this, you can either install these packages or modify the `phpstan.dist.neon` configuration file.## ⚙️ Configuration
```yaml
# compose.yaml
services:
php:
build:
args:
# Set the FrankenPHP version (default latest).
FRANKENPHP_TAG: php8
# Install Node.js with npm and Yarn (default empty).
NODE_VERSION: currentdb:
# Set the MariaDB version (default latest)
image: mariadb:latest
```## 📡 Endpoints
> [!NOTE]
> In development, the database `app` is created and accessible by the user `app` with the password `!ChangeMe!` (same password for `root`). In production, you are forced to set the `DATABASE_URL` AND `MARIADB_*` variables in the `.env.prod.local` file.| URL | Servizio |
|------------------------------------------------|-------------|
| [https://localhost](https://localhost) | App |
| [http://localhost:8080](http://localhost:8080) | phpMyAdmin |
| [http://localhost:8025](http://localhost:8025) | Mailpit |
| localhost:3306 | MariaDB |## ❤️ Contributing
All types of contributions are encouraged and valued. See the [contributing](.github/CONTRIBUTING.md) guidelines, the community looks forward to your contributions!
## 📘 License
Released under the terms of the [ISC License](LICENSE).