Skip to content

Instantly share code, notes, and snippets.

@ChewySalmon
ChewySalmon / web.dockerfile
Created July 11, 2021 09:21
Nginx web dockerfile
FROM nginx:1.21
COPY vhost.conf /etc/nginx/conf.d/default.conf
RUN ln -sf /dev/stdout /var/log/nginx/access.log \
&& ln -sf /dev/stderr /var/log/nginx/error.log
@ChewySalmon
ChewySalmon / Dockerfile
Created July 11, 2021 08:50
Laravel development Docker setup using PHP 8+, Apache, MySql 8+, PhpMyAdmin and Mailhog. Includes relevant application Dockerfile and the Compose file. [GD edition]
FROM php:8.0-apache
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg-dev \
libpng-dev \
libwebp-dev \
--no-install-recommends \
&& docker-php-ext-enable opcache \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
@ChewySalmon
ChewySalmon / Dockerfile
Created July 11, 2021 08:48
Laravel development Docker setup using PHP 8+, Apache, MySql 8+, PhpMyAdmin and Mailhog. Includes relevant application Dockerfile and the Compose file. [Imagick edition]
FROM php:8.0-apache
RUN apt-get update && apt-get install -y \
libmagickwand-dev \
--no-install-recommends \
&& pecl install imagick \
&& docker-php-ext-enable imagick opcache \
&& docker-php-ext-install pdo_mysql \
&& apt-get autoclean -y \
&& rm -rf /var/lib/apt/lists/*
@ChewySalmon
ChewySalmon / app.dockerfile
Last active March 8, 2024 14:00
Laravel development docker setup using PHP 8+, Nginx, MySql 8+, PhpMyAdmin and Mailhog. Includes all relevant service Dockerfiles and the Compose file. [GD edition]
FROM php:8.0-fpm
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg-dev \
libpng-dev \
libwebp-dev \
--no-install-recommends \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install pdo_mysql -j$(nproc) gd
@ChewySalmon
ChewySalmon / app.dockerfile
Last active March 27, 2023 18:00
Laravel development docker setup using PHP 8+, Nginx, MySql 8+, PhpMyAdmin and Mailhog. Includes all relevant service Dockerfiles and the Compose file. [Imagick edition]
FROM php:8.0-fpm
RUN apt-get update && apt-get install -y \
libmagickwand-dev \
--no-install-recommends \
&& pecl install imagick \
&& docker-php-ext-enable imagick \
&& docker-php-ext-install pdo_mysql
@ChewySalmon
ChewySalmon / app.dockerfile
Created July 10, 2021 14:12
Dockerfile for php-fpm app using ImageMagick image processor
FROM php:8.0-fpm
RUN apt-get update && apt-get install -y \
libmagickwand-dev \
--no-install-recommends \
&& pecl install imagick \
&& docker-php-ext-enable imagick \
&& docker-php-ext-install pdo_mysql
@ChewySalmon
ChewySalmon / app.dockerfile
Created July 10, 2021 14:11
Dockerfile for php-fpm app using GD image processor
FROM php:8.0-fpm
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg-dev \
libpng-dev \
libwebp-dev \
--no-install-recommends \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install pdo_mysql -j$(nproc) gd
@ChewySalmon
ChewySalmon / docker-compose.yaml
Last active July 11, 2021 09:11
Complete docker-compose.yaml for a Laravel project
version: '3.8'
services:
# Application
app:
build:
context: .
dockerfile: app.dockerfile
working_dir: /var/www
volumes:
@ChewySalmon
ChewySalmon / vhost.conf
Created July 10, 2021 06:25
Basic vhost file for Nginx
server {
listen 80;
index index.php index.html;
root /var/www/public;
location / {
try_files $uri /index.php?$args;
}
location ~ \.php$ {
@ChewySalmon
ChewySalmon / docker-compose.yaml
Last active June 20, 2021 10:31
Database management
pma:
image: phpmyadmin:5.1
environment:
- PMA_ARBITRARY=1
- PMA_HOST=${DB_HOST}
- PMA_USER=${DB_USERNAME}
- PMA_PASSWORD=${DB_PASSWORD}
- PMA_PORT=${DB_PORT}
depends_on:
- database