Docker for PHP Laravel (Dockerfile and docker-compose.yaml) Dockerfile123456789101112131415161718192021222324252627282930313233343536373839FROM php:7-apacheWORKDIR /var/www/html# git: for php package barryvdh/laravel-debugbar# zip, unzip: for composer download from dist# libmagickwand-dev: for intervention/image and php7-imagick# ssh: ssh client for git-sshRUN apt-get update && apt-get install -y \ $PHPIZE_DEPS \ ca-certificates \ curl \ xz-utils \ git \ zip unzip\ libzip-dev \ libmagickwand-dev \ ssh \ --no-install-recommends && rm -r /var/lib/apt/lists/*# imagick: for intervention/imageRUN pecl install imagick# pdo_mysql, bcmath: officail laravel requirement# fileinfo, imagick: for php package intervention/imageRUN docker-php-ext-install pdo_mysql bcmath zipRUN docker-php-ext-enable imagickRUN a2enmod rewriteCOPY apache2.000-default.conf /etc/apache2/sites-enabled/000-default.conf# xdebug#RUN apt-get update &&\# apt-get install --no-install-recommends --assume-yes --quiet ca-certificates curl git &&\# rm -rf /var/lib/apt/lists/*##RUN pecl install xdebug && docker-php-ext-enable xdebug docker-compose.yaml1234567891011121314151617181920212223242526272829version: '3'services: # docker run --rm -it --net myNetwork -v $(pwd):/var/www/html -p 10080:80 --name localhost-cms-backend-v2 localhost/cms_backend_v2 api: # container_name: localhost-cms-backend-v2 build: . ports: - "10080:80" volumes: - .:/var/www/html - ~/.ssh:/root/.ssh db: # container_name: db image: mariadb:10.3.15-bionic ports: - "13306:3306" # volumes: # - ../../Storage/mysql:/var/lib/mysql environment: - MYSQL_DATABASE=my_db - MYSQL_ROOT_PASSWORD=123456! # docker run --name redis --net myNetwork -d -t -p 6379:6379 redis redis: # container_name: redis image: redis:5.0.5-stretch ports: - "6379:6379" apache2.000-default.conf123456<VirtualHost *:80> ServerName localhost DocumentRoot /var/www/html/public # set default doccument root to `/var/www/html/public` ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined</VirtualHost> Newer How to use telnet to test your web server Older Real World - Web Scraper