From 4030cc2f2660b3e9e953abf75d9317aa85118189 Mon Sep 17 00:00:00 2001
From: philtrep
Date: Sun, 9 Oct 2016 21:01:49 -0400
Subject: [PATCH 01/55] Added certbot container
---
certbot/Dockerfile | 8 ++++++++
certbot/letsencrypt/.gitkeep | 0
certbot/letsencrypt/.well-known/.gitkeep | 0
certbot/run-certbot.sh | 6 ++++++
docker-compose.yml | 13 +++++++++++++
nginx/nginx.conf | 4 ++++
6 files changed, 31 insertions(+)
create mode 100644 certbot/Dockerfile
create mode 100644 certbot/letsencrypt/.gitkeep
create mode 100644 certbot/letsencrypt/.well-known/.gitkeep
create mode 100644 certbot/run-certbot.sh
diff --git a/certbot/Dockerfile b/certbot/Dockerfile
new file mode 100644
index 0000000..c62405e
--- /dev/null
+++ b/certbot/Dockerfile
@@ -0,0 +1,8 @@
+FROM phusion/baseimage:latest
+
+COPY run-certbot.sh /root/certbot/run-certbot.sh
+
+RUN apt-get update
+RUN apt-get install -y letsencrypt
+
+ENTRYPOINT bash -c "bash /root/certbot/run-certbot.sh && sleep infinity"
diff --git a/certbot/letsencrypt/.gitkeep b/certbot/letsencrypt/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/certbot/letsencrypt/.well-known/.gitkeep b/certbot/letsencrypt/.well-known/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/certbot/run-certbot.sh b/certbot/run-certbot.sh
new file mode 100644
index 0000000..26be75c
--- /dev/null
+++ b/certbot/run-certbot.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+letsencrypt certonly --webroot -w /var/www/letsencrypt -d "$CN" --agree-tos --email "$EMAIL" --non-interactive --text
+
+cp /etc/letsencrypt/archive/"$CN"/cert1.pem /var/certs/cert1.pem
+cp /etc/letsencrypt/archive/"$CN"/privkey1.pem /var/certs/privkey1.pem
diff --git a/docker-compose.yml b/docker-compose.yml
index b7eed65..223d449 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -311,9 +311,22 @@ services:
- "9300:9300"
links:
- php-fpm
+
+### Certbot Container ##################################
+
+ certbot:
+ build:
+ context: ./certbot
+ volumes:
+ - ./data/certbot/certs/:/var/certs
+ - ./certbot/letsencrypt/:/var/www/letsencrypt
+ environment:
+ CN: "fake.domain.com"
+ EMAIL: "fake.email@gmail.com"
### Volumes Setup ###########################################
+
volumes:
mysql:
driver: "local"
diff --git a/nginx/nginx.conf b/nginx/nginx.conf
index 97e5a0e..40cb9d7 100644
--- a/nginx/nginx.conf
+++ b/nginx/nginx.conf
@@ -23,6 +23,10 @@ http {
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
+
+ ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
+ ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
+
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-available/*;
open_file_cache max=100;
From 48f8f3c02da989fd1f13f6f39a2c21a5776faaed Mon Sep 17 00:00:00 2001
From: philtrep
Date: Sat, 15 Oct 2016 10:40:22 -0400
Subject: [PATCH 02/55] Added certbot serving in laravel conf
---
nginx/sites/default.conf | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/nginx/sites/default.conf b/nginx/sites/default.conf
index d5058bd..78f85cb 100644
--- a/nginx/sites/default.conf
+++ b/nginx/sites/default.conf
@@ -22,6 +22,11 @@ server {
location ~ /\.ht {
deny all;
}
+
+ location /.well-known/acme-challenge/ {
+ root /var/www/letsencrypt/;
+ log_not_found off;
+ }
}
From d89a944e224c4246c6ee7da86e90464e7c158ddd Mon Sep 17 00:00:00 2001
From: philtrep
Date: Sat, 15 Oct 2016 10:47:00 -0400
Subject: [PATCH 03/55] Added nginx config for certbot
---
docker-compose.yml | 1 -
nginx/sites/laravel-https.conf | 30 ++++++++++++++++++++++++++++++
2 files changed, 30 insertions(+), 1 deletion(-)
create mode 100644 nginx/sites/laravel-https.conf
diff --git a/docker-compose.yml b/docker-compose.yml
index 223d449..54a3f13 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -326,7 +326,6 @@ services:
### Volumes Setup ###########################################
-
volumes:
mysql:
driver: "local"
diff --git a/nginx/sites/laravel-https.conf b/nginx/sites/laravel-https.conf
new file mode 100644
index 0000000..0704dbf
--- /dev/null
+++ b/nginx/sites/laravel-https.conf
@@ -0,0 +1,30 @@
+server {
+
+ listen 443 default_server;
+ listen [::]:443 default_server ipv6only=on;
+
+ ssl on;
+ ssl_certificate /var/certs/cert1.pem;
+ ssl_certificate_key /var/certs/privkey1.pem;
+
+ server_name laravel;
+ root /var/www/laravel/public;
+ index index.php index.html index.htm;
+
+ location / {
+ try_files $uri $uri/ /index.php$is_args$args;
+ }
+
+ location ~ \.php$ {
+ try_files $uri /index.php =404;
+ fastcgi_pass php-upstream;
+ fastcgi_index index.php;
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+ include fastcgi_params;
+ }
+
+ location ~ /\.ht {
+ deny all;
+ }
+
+}
From b401c517b2fcd1724069ed125ac147d1693acc64 Mon Sep 17 00:00:00 2001
From: Vladimir Kireyko
Date: Thu, 15 Dec 2016 15:05:48 +0200
Subject: [PATCH 04/55] Add dockerfile with php-fpm 7.1
---
php-fpm/Dockerfile-71 | 160 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 160 insertions(+)
create mode 100644 php-fpm/Dockerfile-71
diff --git a/php-fpm/Dockerfile-71 b/php-fpm/Dockerfile-71
new file mode 100644
index 0000000..065a32f
--- /dev/null
+++ b/php-fpm/Dockerfile-71
@@ -0,0 +1,160 @@
+#
+#--------------------------------------------------------------------------
+# Image Setup
+#--------------------------------------------------------------------------
+#
+# To edit the 'php-fpm' base Image, visit its repository on Github
+# https://github.com/LaraDock/php-fpm
+#
+# To change its version, see the available Tags on the Docker Hub:
+# https://hub.docker.com/r/laradock/php-fpm/tags/
+#
+
+FROM laradock/php-fpm:7.1--0.0 # placeholder. Need change after new image would be built.
+
+MAINTAINER Mahmoud Zalt
+
+#
+#--------------------------------------------------------------------------
+# Mandatory Software's Installation
+#--------------------------------------------------------------------------
+#
+# Mandatory Software's such as ("mcrypt", "pdo_mysql", "libssl-dev", ....)
+# are installed on the base image 'laradock/php-fpm' image. If you want
+# to add more Software's or remove existing one, you need to edit the
+# base image (https://github.com/LaraDock/php-fpm).
+#
+
+#
+#--------------------------------------------------------------------------
+# Optional Software's Installation
+#--------------------------------------------------------------------------
+#
+# Optional Software's will only be installed if you set them to `true`
+# in the `docker-compose.yml` before the build.
+# Example:
+# - INSTALL_ZIP_ARCHIVE=true
+# - ...
+#
+
+#####################################
+# xDebug:
+#####################################
+
+ARG INSTALL_XDEBUG=false
+RUN if [ ${INSTALL_XDEBUG} = true ]; then \
+ # Install the xdebug extension
+ pecl install xdebug && \
+ docker-php-ext-enable xdebug \
+;fi
+
+# Copy xdebug configration for remote debugging
+COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
+
+#####################################
+# MongoDB:
+#####################################
+
+ARG INSTALL_MONGO=false
+RUN if [ ${INSTALL_MONGO} = true ]; then \
+ # Install the mongodb extension
+ pecl install mongodb && \
+ docker-php-ext-enable mongodb \
+;fi
+
+#####################################
+# ZipArchive:
+#####################################
+
+ARG INSTALL_ZIP_ARCHIVE=false
+RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
+ # Install the zip extension
+ pecl install zip && \
+ docker-php-ext-enable zip \
+;fi
+
+#####################################
+# PHP Memcached:
+#####################################
+
+ARG INSTALL_MEMCACHED=false
+RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
+ # Install the php memcached extension
+ curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
+ && mkdir -p memcached \
+ && tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \
+ && ( \
+ cd memcached \
+ && phpize \
+ && ./configure \
+ && make -j$(nproc) \
+ && make install \
+ ) \
+ && rm -r memcached \
+ && rm /tmp/memcached.tar.gz \
+ && docker-php-ext-enable memcached \
+;fi
+
+#####################################
+# PHP Aerospike:
+#####################################
+
+ARG INSTALL_AEROSPIKE_EXTENSION=false
+ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
+# Copy aerospike configration for remote debugging
+COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
+RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
+ # Install the php aerospike extension
+ curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
+ && mkdir -p aerospike-client-php \
+ && tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
+ && ( \
+ cd aerospike-client-php/src/aerospike \
+ && phpize \
+ && ./build.sh \
+ && make install \
+ ) \
+ && rm /tmp/aerospike-client-php.tar.gz \
+;fi
+
+#####################################
+# Opcache:
+#####################################
+ARG INSTALL_OPCACHE=false
+RUN if [ ${INSTALL_OPCACHE} = true ]; then \
+ docker-php-ext-install opcache && \
+ docker-php-ext-enable opcache \
+;fi
+
+# Copy opcache configration
+COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
+
+#####################################
+# Codeigniter Modifications:
+#####################################
+
+ARG CODEIGNITER=false
+RUN if [ ${CODEIGNITER} = true ]; then \
+ # Install Codeigniter PHP extentions requirements
+ docker-php-ext-install mysqli && \
+ docker-php-ext-install tokenizer \
+;fi
+
+#
+#--------------------------------------------------------------------------
+# Final Touch
+#--------------------------------------------------------------------------
+#
+
+ADD ./laravel.ini /usr/local/etc/php/conf.d
+ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
+
+RUN rm -r /var/lib/apt/lists/*
+
+RUN usermod -u 1000 www-data
+
+WORKDIR /var/www
+
+CMD ["php-fpm"]
+
+EXPOSE 9000
From aabe504c24c5913896bd8f1930402003ca9f3383 Mon Sep 17 00:00:00 2001
From: Vladimir Kireyko
Date: Thu, 15 Dec 2016 15:13:00 +0200
Subject: [PATCH 05/55] Add dokerfile with php 7.1
---
docker-compose.yml | 1 +
workspace/Dockerfile-71 | 260 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 261 insertions(+)
create mode 100644 workspace/Dockerfile-71
diff --git a/docker-compose.yml b/docker-compose.yml
index 2c4a633..69352bd 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -29,6 +29,7 @@ services:
- PGID=1000
- NODE_VERSION=stable
- TZ=UTC
+ # dockerfile: Dockerfile-71
volumes_from:
- applications
extra_hosts:
diff --git a/workspace/Dockerfile-71 b/workspace/Dockerfile-71
new file mode 100644
index 0000000..1f9fb85
--- /dev/null
+++ b/workspace/Dockerfile-71
@@ -0,0 +1,260 @@
+#
+#--------------------------------------------------------------------------
+# Image Setup
+#--------------------------------------------------------------------------
+#
+# To edit the 'workspace' base Image, visit its repository on Github
+# https://github.com/LaraDock/workspace
+#
+# To change its version, see the available Tags on the Docker Hub:
+# https://hub.docker.com/r/laradock/workspace/tags/
+#
+
+FROM laradock/workspace:1.3 # placeholder. Need change after new image would be built.
+
+MAINTAINER MAINTAINER Mahmoud Zalt
+
+#
+#--------------------------------------------------------------------------
+# Mandatory Software's Installation
+#--------------------------------------------------------------------------
+#
+# Mandatory Software's such as ("php7.1-cli", "git", "vim", ....) are
+# installed on the base image 'laradock/workspace' image. If you want
+# to add more Software's or remove existing one, you need to edit the
+# base image (https://github.com/LaraDock/workspace).
+#
+
+#
+#--------------------------------------------------------------------------
+# Optional Software's Installation
+#--------------------------------------------------------------------------
+#
+# Optional Software's will only be installed if you set them to `true`
+# in the `docker-compose.yml` before the build.
+# Example:
+# - INSTALL_NODE=false
+# - ...
+#
+
+#####################################
+# Non-Root User:
+#####################################
+
+# Add a non-root user to prevent files being created with root permissions on host machine.
+ARG PUID=1000
+ARG PGID=1000
+RUN groupadd -g $PGID laradock && \
+ useradd -u $PUID -g laradock -m laradock
+
+#####################################
+# Set Timezone
+#####################################
+
+ARG TZ=UTC
+ENV TZ ${TZ}
+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
+
+#####################################
+# Composer:
+#####################################
+
+# Add the composer.json
+COPY ./composer.json /home/laradock/.composer/composer.json
+
+# Make sure that ~/.composer belongs to laradock
+RUN chown -R laradock:laradock /home/laradock/.composer
+USER laradock
+
+# Check if global install need to be ran
+ARG COMPOSER_GLOBAL_INSTALL=false
+ENV COMPOSER_GLOBAL_INSTALL ${COMPOSER_GLOBAL_INSTALL}
+RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
+ # run the install
+ composer global install \
+;fi
+
+#####################################
+# Crontab
+#####################################
+USER root
+
+COPY ./crontab /var/spool/cron/crontabs
+
+#####################################
+# xDebug:
+#####################################
+
+ARG INSTALL_XDEBUG=false
+RUN if [ ${INSTALL_XDEBUG} = true ]; then \
+ # Load the xdebug extension only with phpunit commands
+ apt-get update && \
+ apt-get install -y --force-yes php-xdebug && \
+ sed -i 's/^/;/g' /etc/php/7.1/cli/conf.d/20-xdebug.ini && \
+ echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
+;fi
+# ADD for REMOTE debugging
+COPY ./xdebug.ini /etc/php/7.1/cli/conf.d/xdebug.ini
+
+#####################################
+# ssh:
+#####################################
+ARG INSTALL_WORKSPACE_SSH=false
+ENV INSTALL_WORKSPACE_SSH ${INSTALL_WORKSPACE_SSH}
+
+ADD insecure_id_rsa /tmp/id_rsa
+ADD insecure_id_rsa.pub /tmp/id_rsa.pub
+
+RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \
+ rm -f /etc/service/sshd/down && \
+ cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys \
+ && cat /tmp/id_rsa.pub >> /root/.ssh/id_rsa.pub \
+ && cat /tmp/id_rsa >> /root/.ssh/id_rsa \
+ && rm -f /tmp/id_rsa* \
+ && chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
+ && chmod 400 /root/.ssh/id_rsa \
+;fi
+
+#####################################
+# MongoDB:
+#####################################
+
+# Check if Mongo needs to be installed
+ARG INSTALL_MONGO=false
+ENV INSTALL_MONGO ${INSTALL_MONGO}
+RUN if [ ${INSTALL_MONGO} = true ]; then \
+ # Install the mongodb extension
+ pecl install mongodb && \
+ echo "extension=mongodb.so" >> /etc/php/7.1/cli/conf.d/30-mongodb.ini \
+;fi
+
+#####################################
+# Drush:
+#####################################
+USER root
+ENV DRUSH_VERSION 8.1.2
+ARG INSTALL_DRUSH=false
+ENV INSTALL_DRUSH ${INSTALL_DRUSH}
+RUN if [ ${INSTALL_DRUSH} = true ]; then \
+ # Install Drush 8 with the phar file.
+ curl -fsSL -o /usr/local/bin/drush https://github.com/drush-ops/drush/releases/download/$DRUSH_VERSION/drush.phar | bash && \
+ chmod +x /usr/local/bin/drush && \
+ drush core-status \
+;fi
+
+USER laradock
+
+#####################################
+# Node / NVM:
+#####################################
+
+# Check if NVM needs to be installed
+ARG NODE_VERSION=stable
+ENV NODE_VERSION ${NODE_VERSION}
+ARG INSTALL_NODE=false
+ENV INSTALL_NODE ${INSTALL_NODE}
+ENV NVM_DIR /home/laradock/.nvm
+RUN if [ ${INSTALL_NODE} = true ]; then \
+ # Install nvm (A Node Version Manager)
+ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.6/install.sh | bash && \
+ . $NVM_DIR/nvm.sh && \
+ nvm install ${NODE_VERSION} && \
+ nvm use ${NODE_VERSION} && \
+ nvm alias ${NODE_VERSION} && \
+ npm install -g gulp bower vue-cli \
+;fi
+
+# Wouldn't execute when added to the RUN statement in the above block
+# Source NVM when loading bash since ~/.profile isn't loaded on non-login shell
+RUN if [ ${INSTALL_NODE} = true ]; then \
+ echo "" >> ~/.bashrc && \
+ echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc && \
+ echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
+;fi
+
+# Add NVM binaries to root's .bashrc
+USER root
+
+RUN if [ ${INSTALL_NODE} = true ]; then \
+ echo "" >> ~/.bashrc && \
+ echo 'export NVM_DIR="/home/laradock/.nvm"' >> ~/.bashrc && \
+ echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
+;fi
+
+#####################################
+# YARN:
+#####################################
+
+USER laradock
+
+ARG INSTALL_YARN=false
+ENV INSTALL_YARN ${INSTALL_YARN}
+
+RUN if [ ${INSTALL_YARN} = true ]; then \
+ [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \
+ curl -o- -L https://yarnpkg.com/install.sh | bash && \
+ echo "" >> ~/.bashrc && \
+ echo 'export PATH="$HOME/.yarn/bin:$PATH"' >> ~/.bashrc \
+;fi
+
+# Add YARN binaries to root's .bashrc
+USER root
+
+RUN if [ ${INSTALL_YARN} = true ]; then \
+ echo "" >> ~/.bashrc && \
+ echo 'export YARN_DIR="/home/laradock/.yarn"' >> ~/.bashrc && \
+ echo 'export PATH="$YARN_DIR/bin:$PATH"' >> ~/.bashrc \
+;fi
+
+#####################################
+# PHP Aerospike:
+#####################################
+USER root
+
+ARG INSTALL_AEROSPIKE_EXTENSION=true
+ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
+
+# Copy aerospike configration for remote debugging
+COPY ./aerospike.ini /etc/php/7.1/cli/conf.d/aerospike.ini
+
+RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
+ # Install the php aerospike extension
+ curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
+ && mkdir -p aerospike-client-php \
+ && tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
+ && ( \
+ cd aerospike-client-php/src/aerospike \
+ && phpize \
+ && ./build.sh \
+ && make install \
+ ) \
+ && rm /tmp/aerospike-client-php.tar.gz \
+;fi
+
+RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = false ]; then \
+ rm /etc/php/7.1/cli/conf.d/aerospike.ini \
+;fi
+
+#####################################
+# Non-root user : PHPUnit path
+#####################################
+
+# add ./vendor/bin to non-root user's bashrc (needed for phpunit)
+USER laradock
+
+RUN echo "" >> ~/.bashrc && \
+ echo 'export PATH="/var/www/vendor/bin:$PATH"' >> ~/.bashrc
+
+#
+#--------------------------------------------------------------------------
+# Final Touch
+#--------------------------------------------------------------------------
+#
+
+# Clean up
+USER root
+RUN apt-get clean && \
+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+
+# Set default work directory
+WORKDIR /var/www
From 7b542618f0e27f5ec5892b91df01faf46be951df Mon Sep 17 00:00:00 2001
From: alchimik
Date: Sun, 19 Feb 2017 13:26:18 +0800
Subject: [PATCH 06/55] Update opcache.ini
---
php-fpm/opcache.ini | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/php-fpm/opcache.ini b/php-fpm/opcache.ini
index 59683ba..9a3f646 100644
--- a/php-fpm/opcache.ini
+++ b/php-fpm/opcache.ini
@@ -1,4 +1,5 @@
-extension=opcache.so
+; NOTE: The actual opcache.so extention is NOT SET HERE but rather (/usr/local/etc/php/conf.d/docker-php-ext-opcache.ini)
+
opcache.enable="1"
opcache.memory_consumption="256"
opcache.use_cwd="0"
From 4947dfaad1b158529396926e1ae6a606116596c4 Mon Sep 17 00:00:00 2001
From: Riccardo Tribbia
Date: Sat, 25 Feb 2017 21:25:33 +0100
Subject: [PATCH 07/55] - Add apache conf file for specific virtualhost
ServerName
---
apache2/Dockerfile | 3 +++
apache2/apache-config.conf | 16 ++++++++++++++++
2 files changed, 19 insertions(+)
create mode 100644 apache2/apache-config.conf
diff --git a/apache2/Dockerfile b/apache2/Dockerfile
index 569ba9f..21373f5 100644
--- a/apache2/Dockerfile
+++ b/apache2/Dockerfile
@@ -15,3 +15,6 @@ WORKDIR /var/www/public
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["supervisord"]
+
+# Update the default apache site with the config we created.
+ADD apache-config.conf /etc/apache2/sites-enabled/000-default.conf
\ No newline at end of file
diff --git a/apache2/apache-config.conf b/apache2/apache-config.conf
new file mode 100644
index 0000000..801be4e
--- /dev/null
+++ b/apache2/apache-config.conf
@@ -0,0 +1,16 @@
+
+ ServerAdmin me@mydomain.com
+ DocumentRoot /var/www/site
+ ServerName local.mydomain.com
+
+
+ Options Indexes FollowSymLinks MultiViews
+ AllowOverride All
+ Order deny,allow
+ Allow from all
+
+
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ CustomLog ${APACHE_LOG_DIR}/access.log combined
+
+
\ No newline at end of file
From ca45806aaa9b394f62629aaa4b05f167b584c91b Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 12:34:20 +0100
Subject: [PATCH 08/55] Updated gitignore
---
.gitignore | 1 +
1 file changed, 1 insertion(+)
diff --git a/.gitignore b/.gitignore
index 7c6f11b..b3403af 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
.idea
/logs
/data
+.env
\ No newline at end of file
From 474504f1d308250e8d2a5bba4e3a92eb50601d5a Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 12:35:28 +0100
Subject: [PATCH 09/55] Added env-example and adjusted docker-compose yml to
support new env file
---
.env | 5 ++
docker-compose.yml | 3 +-
env-example | 164 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 170 insertions(+), 2 deletions(-)
create mode 100644 env-example
diff --git a/.env b/.env
index accd09a..7eac1a8 100644
--- a/.env
+++ b/.env
@@ -1 +1,6 @@
COMPOSE_CONVERT_WINDOWS_PATHS=1
+
+# APPLICATIONS
+APPLICATIONS_HOST_DIR=../
+APPLICATIONS_IMAGE_NAME=tianon/true
+APPLICATIONS_CONTAINER_NAME=applications
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 67af224..094ed9a 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -7,8 +7,7 @@ services:
applications:
image: tianon/true
volumes:
- - ../:/var/www
-# - ../sample/:/var/www/sample
+ - ${APPLICATIONS_HOST_DIR}:/var/www
### Workspace Utilities Container ###########################
diff --git a/env-example b/env-example
new file mode 100644
index 0000000..5fa13c9
--- /dev/null
+++ b/env-example
@@ -0,0 +1,164 @@
+##################
+# DOCKER COMPOSE #
+# ################
+
+DOCKER_HOST_IP=10.0.75.1
+
+# Switch between PHP and HHVM interpreter
+# PHP_INTERPRETER=hhvm
+PHP_INTERPRETER=php-fpm
+
+# Switch between supported PHP versions... does not apply for HHVM.
+# Please see composer.json in Laravel Framework for the minimum Php Version
+#PHP_VERSION=55
+#PHP_VERSION=56
+PHP_VERSION=70
+
+# APPLICATIONS
+APPLICATIONS_HOST_DIR=../
+APPLICATIONS_IMAGE_NAME=tianon/true
+APPLICATIONS_CONTAINER_NAME=applications
+
+# WORKSPACE
+WORKSPACE_BUILD_PATH=./workspace
+WORKSPACE_CONTAINER_NAME=workspace
+WORKSPACE_INSTALL_XDEBUG=false
+WORKSPACE_INSTALL_MONGO=false
+WORKSPACE_INSTALL_NODE=false
+WORKSPACE_INSTALL_YARN=false
+WORKSPACE_INSTALL_DRUSH=false
+WORKSPACE_INSTALL_AEROSPIKE_EXTENSION=false
+WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
+WORKSPACE_INSTALL_WORKSPACE_SSH=false
+WORKSPACE_PUID=1000
+WORKSPACE_PGID=1000
+WORKSPACE_NODE_VERSION=stable
+WORKSPACE_TIMEZONE=UTC
+WORKSPACE_SSH_PORT=2222
+
+
+# PHP_FPM
+PHP_FPM_BUILD_PATH=./php-fpm
+PHP_FPM_CONTAINER_NAME=php-fpm
+PHP_FPM_DOCKER_FILE=Dockerfile-70
+PHP_FPM_INSTALL_XDEBUG=false
+PHP_FPM_INSTALL_MONGO=false
+PHP_FPM_INSTALL_ZIP_ARCHIVE=false
+PHP_FPM_INSTALL_MEMCACHED=false
+PHP_FPM_INSTALL_OPCACHE=false
+PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
+PHP_FPM_CODEIGNITER=false
+PHP_FPM_IDE_CONFIG=serverName=laravel
+
+
+# NGINX
+NGINX_BUILD_PATH=./nginx
+NGINX_CONTAINER_NAME=nginx
+NGINX_HOST_HTTP_PORT=8080
+NGINX_HOST_HTTPS_PORT=8433
+NGINX_HOST_LOG_PATH=./logs/nginx/
+
+
+# APACHE
+APACHE2_BUILD_PATH=./apache2
+APACHE2_CONTAINER_NAME=apache2
+APACHE_HOST_HTTP_PORT=7080
+APACHE_HOST_HTTPS_PORT=7443
+APACHE2_PHP_SOCKET=php-fpm:9000
+APACHE_HOST_LOG_PATH=./logs/apache2
+
+# HHVM
+HHVM_BUILD_PATH=./hhvm
+HHVM_CONTAINER_NAME=hhvm
+HHVM_HOST_PORT=9000
+
+# MYSQL
+MYSQL_BUILD_PATH=./mysql
+MYSQL_CONTAINER_NAME=mysql
+MYSQL_HOST_PORT=3307
+MYSQL_ROOT_PASSWORD=root
+
+# MEMCACHED
+MEMCACHED_BUILD_PATH=./memcached
+MEMCACHED_CONTAINER_NAME=memcached
+MEMCACHED_HOST_PORT=11211
+
+# BEANSTALKD
+BEANSTALKD_BUILD_PATH=./beanstalkd
+BEANSTALKD_CONTAINER_NAME=beanstalkd
+BEANSTALKD_HOST_PORT=11300
+
+# BEANSTALKD CONSOLE
+BEANSTALKD_CONSOLE_BUILD_PATH=./beanstalkd-console
+BEANSTALKD_CONSOLE_CONTAINER_NAME=beanstalkd-console
+BEANSTALKD_CONSOLE_HOST_PORT=2080
+
+# RABBITMQ
+RABBITMQ_BUILD_PATH=./rabbitmq
+RABBITMQ_CONTAINER_NAME=rabbitmq
+RABBITMQ_NODE_HOST_PORT=5672
+RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
+RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
+RABBITMQ_DEFAULT_USER=guest
+RABBITMQ_DEFAULT_PASS=guest
+
+# ELASTICSEARCH
+ELASTICSEARCH_BUILD_PATH=./elasticsearch/versions/2
+ELASTICSEARCH_CONTAINER_NAME=elasticsearch
+ELASTICSEARCH_HOST_HTTP_PORT=9200
+ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
+
+####################
+# LARAVEL SPECIFIC #
+# ##################
+
+# APP
+APP_ENV=local
+APP_KEY=base64:FeZgPe6Pqm7dOCy7Sx0P/PQ9ICMuwAsHLms7DUOxCkI=
+APP_DEBUG=true
+APP_LOG_LEVEL=debug
+APP_URL=http://localhost
+
+# DATABASE
+DB_CONNECTION=mysql
+
+# Laravel Original: DB_HOST=127.0.0.1
+# must match the service name or container name.
+# so if we want to use mariadb it must look like:
+# DB_HOST=mariadb
+DB_HOST=mysql
+
+# IMPORTANT:
+# - ports are defined in docker-compose.yml like HOST_PORT:CONTAINER_PORT
+# - DB_PORT=3306 represents the CONTAINER_PORT not the HOST_PORT
+#
+# This means that this should not be changed unless you have also tweaked the database image created by
+# docker-compose.yml.
+DB_PORT=3306
+DB_DATABASE=default
+DB_USERNAME=default
+DB_PASSWORD=secret
+
+# DRIVERS
+BROADCAST_DRIVER=log
+CACHE_DRIVER=file
+SESSION_DRIVER=file
+QUEUE_DRIVER=sync
+
+# REDIS
+REDIS_HOST=redis
+REDIS_PASSWORD=null
+REDIS_PORT=6379
+
+# MAIL
+MAIL_DRIVER=smtp
+MAIL_HOST=mailtrap.io
+MAIL_PORT=2525
+MAIL_USERNAME=null
+MAIL_PASSWORD=null
+MAIL_ENCRYPTION=null
+
+# PUSHER
+PUSHER_APP_ID=
+PUSHER_KEY=
+PUSHER_SECRET=
From 3f13aa4f50e3346fea90cdafb9b1cdfdb6ce01de Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 12:36:44 +0100
Subject: [PATCH 10/55] Removed .env file
---
.env | 6 ------
1 file changed, 6 deletions(-)
delete mode 100644 .env
diff --git a/.env b/.env
deleted file mode 100644
index 7eac1a8..0000000
--- a/.env
+++ /dev/null
@@ -1,6 +0,0 @@
-COMPOSE_CONVERT_WINDOWS_PATHS=1
-
-# APPLICATIONS
-APPLICATIONS_HOST_DIR=../
-APPLICATIONS_IMAGE_NAME=tianon/true
-APPLICATIONS_CONTAINER_NAME=applications
\ No newline at end of file
From fa9ac1e471c9521c272cf43b858e2f13ab41a9eb Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 13:53:40 +0100
Subject: [PATCH 11/55] Added workspace from env file and updated env-example
---
docker-compose.yml | 38 +++++++++++++++++++-------------------
env-example | 7 +++++--
2 files changed, 24 insertions(+), 21 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 094ed9a..08f0a95 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -14,25 +14,25 @@ services:
workspace:
build:
context: ./workspace
- args:
- - INSTALL_XDEBUG=false
- - INSTALL_SOAP=false
- - INSTALL_MONGO=false
- - INSTALL_NODE=false
- - INSTALL_YARN=false
- - INSTALL_DRUSH=false
- - INSTALL_AEROSPIKE_EXTENSION=false
- - INSTALL_V8JS_EXTENSION=false
- - COMPOSER_GLOBAL_INSTALL=false
- - INSTALL_WORKSPACE_SSH=false
- - INSTALL_LARAVEL_ENVOY=false
- - INSTALL_DEPLOYER=false
- - INSTALL_LINUXBREW=false
- - PUID=1000
- - PGID=1000
- - NODE_VERSION=stable
- - YARN_VERSION=latest
- - TZ=UTC
+ args:
+ - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
+ - INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
+ - INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
+ - INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
+ - INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
+ - INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
+ - INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
+ - INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION}
+ - COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
+ - INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
+ - INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
+ - INSTALL_DEPLOYER=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
+ - INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
+ - PUID=${WORKSPACE_PUID}
+ - PGID=${WORKSPACE_PGID}
+ - NODE_VERSION=${WORKSPACE_NODE_VERSION}
+ - YARN_VERSION=${WORKSPACE_TIMEZONE}
+ - TZ=${WORKSPACE_TIMEZONE=UTC}
volumes_from:
- applications
extra_hosts:
diff --git a/env-example b/env-example
index 5fa13c9..84c2918 100644
--- a/env-example
+++ b/env-example
@@ -20,16 +20,19 @@ APPLICATIONS_IMAGE_NAME=tianon/true
APPLICATIONS_CONTAINER_NAME=applications
# WORKSPACE
-WORKSPACE_BUILD_PATH=./workspace
-WORKSPACE_CONTAINER_NAME=workspace
WORKSPACE_INSTALL_XDEBUG=false
+WORKSPACE_INSTALL_SOAP=false
WORKSPACE_INSTALL_MONGO=false
WORKSPACE_INSTALL_NODE=false
WORKSPACE_INSTALL_YARN=false
WORKSPACE_INSTALL_DRUSH=false
WORKSPACE_INSTALL_AEROSPIKE_EXTENSION=false
+WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION=false
WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
WORKSPACE_INSTALL_WORKSPACE_SSH=false
+WORKSPACE_INSTALL_LARAVEL_ENVOY=false
+WORKSPACE_INSTALL_DEPLOYER=false
+WORKSPACE_INSTALL_LINUXBREW=false
WORKSPACE_PUID=1000
WORKSPACE_PGID=1000
WORKSPACE_NODE_VERSION=stable
From c112fdffc1598194eb4dcf5283e254c10742ee40 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 14:05:47 +0100
Subject: [PATCH 12/55] Updated PHP-FPM container to accept .env variables
---
docker-compose.yml | 24 ++++++++++++------------
env-example | 10 +++++-----
2 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 08f0a95..49b0f51 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -48,18 +48,18 @@ services:
build:
context: ./php-fpm
args:
- - INSTALL_XDEBUG=false
- - INSTALL_SOAP=false
- - INSTALL_MONGO=false
- - INSTALL_ZIP_ARCHIVE=false
- - INSTALL_BCMATH=false
- - INSTALL_PHPREDIS=false
- - INSTALL_MEMCACHED=false
- - INSTALL_OPCACHE=false
- - INSTALL_EXIF=false
- - INSTALL_AEROSPIKE_EXTENSION=false
- - CODEIGNITER=false
- dockerfile: Dockerfile-70
+ - INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
+ - INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
+ - INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
+ - INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
+ - INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
+ - INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
+ - INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
+ - INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
+ - INSTALL_EXIF=${PHP_FPM_DOCKER_FILE}
+ - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_DOCKER_FILE}
+ - CODEIGNITER=${PHP_FPM_DOCKER_FILE}
+ dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- applications
expose:
diff --git a/env-example b/env-example
index 84c2918..f9e8653 100644
--- a/env-example
+++ b/env-example
@@ -41,18 +41,18 @@ WORKSPACE_SSH_PORT=2222
# PHP_FPM
-PHP_FPM_BUILD_PATH=./php-fpm
-PHP_FPM_CONTAINER_NAME=php-fpm
PHP_FPM_DOCKER_FILE=Dockerfile-70
PHP_FPM_INSTALL_XDEBUG=false
PHP_FPM_INSTALL_MONGO=false
+PHP_FPM_INSTALL_SOAP=false
PHP_FPM_INSTALL_ZIP_ARCHIVE=false
+PHP_FPM_INSTALL_BCMATH=false
+PHP_FPM_INSTALL_PHPREDIS=false
PHP_FPM_INSTALL_MEMCACHED=false
PHP_FPM_INSTALL_OPCACHE=false
+PHP_FPM_INSTALL_EXIF=false
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
-PHP_FPM_CODEIGNITER=false
-PHP_FPM_IDE_CONFIG=serverName=laravel
-
+PHP_FPM_CODEIGNITER=falses
# NGINX
NGINX_BUILD_PATH=./nginx
From 356dc36fd57802e67b5f669b602943056ca8ca02 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 14:11:16 +0100
Subject: [PATCH 13/55] Added NGINX from env file and updated env-example
---
docker-compose.yml | 6 +++---
env-example | 5 ++---
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 49b0f51..e3a9c96 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -82,9 +82,9 @@ services:
- PHP_UPSTREAM=php-fpm
volumes_from:
- applications
- volumes:
- - ./logs/nginx/:/var/log/nginx
- - ./nginx/sites/:/etc/nginx/sites-available
+ volumes:
+ - ${NGINX_HOST_LOG_PATH}:/var/log/nginx
+ - ${NGINX_SITES_PATH}:/etc/nginx/sites-available
ports:
- "80:80"
- "443:443"
diff --git a/env-example b/env-example
index f9e8653..aa2a731 100644
--- a/env-example
+++ b/env-example
@@ -39,7 +39,6 @@ WORKSPACE_NODE_VERSION=stable
WORKSPACE_TIMEZONE=UTC
WORKSPACE_SSH_PORT=2222
-
# PHP_FPM
PHP_FPM_DOCKER_FILE=Dockerfile-70
PHP_FPM_INSTALL_XDEBUG=false
@@ -55,11 +54,11 @@ PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
PHP_FPM_CODEIGNITER=falses
# NGINX
-NGINX_BUILD_PATH=./nginx
-NGINX_CONTAINER_NAME=nginx
NGINX_HOST_HTTP_PORT=8080
NGINX_HOST_HTTPS_PORT=8433
NGINX_HOST_LOG_PATH=./logs/nginx/
+NGINX_SITES_PATH=./nginx/sites/
+
# APACHE
From 966a84fa39dce4074c082b6be160d5f3af779b8b Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 14:49:43 +0100
Subject: [PATCH 14/55] Fixed timezone issue in docker-compose.yml
---
docker-compose.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index e3a9c96..073b0ff 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -32,7 +32,7 @@ services:
- PGID=${WORKSPACE_PGID}
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
- YARN_VERSION=${WORKSPACE_TIMEZONE}
- - TZ=${WORKSPACE_TIMEZONE=UTC}
+ - TZ=${WORKSPACE_TIMEZONE}
volumes_from:
- applications
extra_hosts:
From f610aa63d16617f817c1b0015e3debb0b6426c28 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 27 Feb 2017 15:58:38 +0100
Subject: [PATCH 15/55] Removed reference to homestead
---
docker-compose.yml | 4 ++--
mysql/Dockerfile | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 073b0ff..ba7df27 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -125,8 +125,8 @@ services:
build:
context: ./mysql
args:
- - MYSQL_DATABASE=homestead
- - MYSQL_USER=homestead
+ - MYSQL_DATABASE=default
+ - MYSQL_USER=default
- MYSQL_PASSWORD=secret
- MYSQL_ROOT_PASSWORD=root
volumes:
diff --git a/mysql/Dockerfile b/mysql/Dockerfile
index 420ddfa..b483cc2 100644
--- a/mysql/Dockerfile
+++ b/mysql/Dockerfile
@@ -6,8 +6,8 @@ ADD startup /etc/mysql/startup
RUN chown -R mysql:root /var/lib/mysql/
-ARG MYSQL_DATABASE=homestead
-ARG MYSQL_USER=homestead
+ARG MYSQL_DATABASE=default
+ARG MYSQL_USER=default
ARG MYSQL_PASSWORD=secret
ARG MYSQL_ROOT_PASSWORD=root
From a6e0338245b6a4b69eda9c00d49268f3f59f7ff8 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Wed, 1 Mar 2017 08:08:20 +0100
Subject: [PATCH 16/55] Removed Homestead reference in all DB containers
---
docker-compose.yml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index ba7df27..48bb0e2 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -143,8 +143,8 @@ services:
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE: homestead
- MYSQL_USER: homestead
+ MYSQL_DATABASE: default
+ MYSQL_USER: default
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
@@ -157,8 +157,8 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: homestead
- POSTGRES_USER: homestead
+ POSTGRES_DB: default
+ POSTGRES_USER: default
POSTGRES_PASSWORD: secret
### PostgreSQL PostGis Container ############################
@@ -170,8 +170,8 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: homestead
- POSTGRES_USER: homestead
+ POSTGRES_DB: default
+ POSTGRES_USER: default
POSTGRES_PASSWORD: secret
### Neo4j Container #########################################
From 59dfacee13072c22a121bea4593b991d0c9d8c3c Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Wed, 1 Mar 2017 08:17:34 +0100
Subject: [PATCH 17/55] Removed homestead entirely this time
---
docker-compose.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 48bb0e2..8111bc5 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -296,7 +296,7 @@ services:
build: ./phpmyadmin
environment:
PMA_ARBITRARY: 1
- MYSQL_USER: homestead
+ MYSQL_USER: default
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
ports:
From b45f39599643002305584beaa400d3cf649872e5 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Wed, 1 Mar 2017 08:29:17 +0100
Subject: [PATCH 18/55] Removed homestead entirely this time
---
docker-compose.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 8111bc5..49f598f 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -182,7 +182,7 @@ services:
- "7474:7474"
- "1337:1337"
environment:
- - NEO4J_AUTH=homestead:secret
+ - NEO4J_AUTH=default:secret
volumes:
- neo4j:/var/lib/neo4j/data
From 8317fbde5ce16544a5686f26f19f1005867c77ae Mon Sep 17 00:00:00 2001
From: Riccardo Tribbia
Date: Wed, 1 Mar 2017 15:55:33 +0100
Subject: [PATCH 19/55] - Eliminato .env dal repo git per poterlo linkare nel
progetto locale - Impostata configurazione dinamica porte per apache
---
.env | 1 -
.gitignore | 1 +
apache2/apache-config.conf | 8 ++++----
docker-compose.yml | 34 +++++++++++++++++-----------------
4 files changed, 22 insertions(+), 22 deletions(-)
delete mode 100644 .env
diff --git a/.env b/.env
deleted file mode 100644
index accd09a..0000000
--- a/.env
+++ /dev/null
@@ -1 +0,0 @@
-COMPOSE_CONVERT_WINDOWS_PATHS=1
diff --git a/.gitignore b/.gitignore
index 7c6f11b..00571d7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
.idea
/logs
/data
+.env
diff --git a/apache2/apache-config.conf b/apache2/apache-config.conf
index 801be4e..aede94e 100644
--- a/apache2/apache-config.conf
+++ b/apache2/apache-config.conf
@@ -1,9 +1,9 @@
-
+
ServerAdmin me@mydomain.com
- DocumentRoot /var/www/site
- ServerName local.mydomain.com
+ DocumentRoot ${WEB_DOCUMENT_ROOT}
+ ServerName ${SERVER_ALIAS}
-
+
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order deny,allow
diff --git a/docker-compose.yml b/docker-compose.yml
index 67af224..53dd717 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -104,8 +104,8 @@ services:
volumes:
- ./logs/apache2:/var/log/apache2
ports:
- - "80:80"
- - "443:443"
+ - "$SERVER_PORT:80"
+ - "$SERVER_SSL_PORT:443"
links:
- php-fpm
@@ -126,14 +126,14 @@ services:
build:
context: ./mysql
args:
- - MYSQL_DATABASE=homestead
- - MYSQL_USER=homestead
- - MYSQL_PASSWORD=secret
+ - MYSQL_DATABASE=$DB_DATABASE
+ - MYSQL_USER=$DB_USERNAME
+ - MYSQL_PASSWORD=$DB_PASSWORD
- MYSQL_ROOT_PASSWORD=root
volumes:
- mysql:/var/lib/mysql
ports:
- - "3306:3306"
+ - "$DB_PORT:3306"
### MariaDB Container #######################################
@@ -144,9 +144,9 @@ services:
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE: homestead
- MYSQL_USER: homestead
- MYSQL_PASSWORD: secret
+ MYSQL_DATABASE: $DB_DATABASE
+ MYSQL_USER: $DB_USERNAME
+ MYSQL_PASSWORD: $DB_PASSWORD
MYSQL_ROOT_PASSWORD: root
### PostgreSQL Container ####################################
@@ -158,9 +158,9 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: homestead
- POSTGRES_USER: homestead
- POSTGRES_PASSWORD: secret
+ POSTGRES_DB: $DB_DATABASE
+ POSTGRES_USER: $DB_USERNAME
+ POSTGRES_PASSWORD: $DB_PASSWORD
### PostgreSQL PostGis Container ############################
@@ -171,9 +171,9 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: homestead
- POSTGRES_USER: homestead
- POSTGRES_PASSWORD: secret
+ POSTGRES_DB: $DB_DATABASE
+ POSTGRES_USER: $DB_USERNAME
+ POSTGRES_PASSWORD: $DB_PASSWORD
### Neo4j Container #########################################
@@ -297,8 +297,8 @@ services:
build: ./phpmyadmin
environment:
PMA_ARBITRARY: 1
- MYSQL_USER: homestead
- MYSQL_PASSWORD: secret
+ MYSQL_USER: $DB_USERNAME
+ MYSQL_PASSWORD: $DB_PASSWORD
MYSQL_ROOT_PASSWORD: root
ports:
- "8080:80"
From 6be81f05c2a781faec04554402a58fd94759ae98 Mon Sep 17 00:00:00 2001
From: Riccardo Tribbia
Date: Thu, 2 Mar 2017 12:14:38 +0100
Subject: [PATCH 20/55] - Aggiunto servizio php-worker per avviamento queue
---
docker-compose.yml | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/docker-compose.yml b/docker-compose.yml
index 53dd717..a74b57c 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -74,6 +74,16 @@ services:
# IMPORTANT: Set the Remote Interpreter entry matching name to `laravel`
- PHP_IDE_CONFIG=serverName=laravel
+### PHP-WORKER Container #######################################
+
+ php-worker:
+ build:
+ context: ./php-fpm
+ dockerfile: Dockerfile-70 # or Dockerfile-56, choose your PHP-FPM container setting
+ volumes_from:
+ - applications
+ command: php artisan queue:work
+
### Nginx Server Container ##################################
nginx:
From 0983cc98fee38947baa94f84deaf19f02a45f24e Mon Sep 17 00:00:00 2001
From: Wayan Jimmy
Date: Sat, 4 Mar 2017 02:07:29 +0800
Subject: [PATCH 21/55] Setup mailhog
---
docker-compose.yml | 6 ++++++
mailhog/Dockerfile | 7 +++++++
2 files changed, 13 insertions(+)
create mode 100644 mailhog/Dockerfile
diff --git a/docker-compose.yml b/docker-compose.yml
index 3840966..dd73145 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -299,6 +299,12 @@ services:
links:
- php-fpm
+ mailhog:
+ build: ./mailhog
+ ports:
+ - "1025:1025"
+ - "8025:8025"
+
### Volumes Setup ###########################################
volumes:
diff --git a/mailhog/Dockerfile b/mailhog/Dockerfile
new file mode 100644
index 0000000..9fd31e4
--- /dev/null
+++ b/mailhog/Dockerfile
@@ -0,0 +1,7 @@
+FROM mailhog/mailhog
+
+Maintainer Mahmoud Zalt
+
+CMD ["Mailhog"]
+
+EXPOSE 1025 8025
From 603010cbd50853826fda09639e4ccbf491111eac Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 6 Mar 2017 09:03:12 +0100
Subject: [PATCH 22/55] Split up mysqli and tokenizer
---
docker-compose.yml | 7 ++++---
env-example | 3 ++-
php-fpm/Dockerfile-56 | 19 ++++++++++++++-----
php-fpm/Dockerfile-70 | 19 ++++++++++++++-----
4 files changed, 34 insertions(+), 14 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 49f598f..f9d0777 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -56,9 +56,10 @@ services:
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
- - INSTALL_EXIF=${PHP_FPM_DOCKER_FILE}
- - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_DOCKER_FILE}
- - CODEIGNITER=${PHP_FPM_DOCKER_FILE}
+ - INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
+ - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
+ - INSTALL_MYSQLI=${PHP_FPM_MYSQLI}
+ - INSTALL_TOKENIZER=${PHP_FPM_TOKENIZER}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- applications
diff --git a/env-example b/env-example
index aa2a731..d95f208 100644
--- a/env-example
+++ b/env-example
@@ -51,7 +51,8 @@ PHP_FPM_INSTALL_MEMCACHED=false
PHP_FPM_INSTALL_OPCACHE=false
PHP_FPM_INSTALL_EXIF=false
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
-PHP_FPM_CODEIGNITER=falses
+PHP_FPM_MYSQLI=false
+PHP_FPM_TOKENIZER=false
# NGINX
NGINX_HOST_HTTP_PORT=8080
diff --git a/php-fpm/Dockerfile-56 b/php-fpm/Dockerfile-56
index acd02b8..bb80842 100644
--- a/php-fpm/Dockerfile-56
+++ b/php-fpm/Dockerfile-56
@@ -142,13 +142,22 @@ RUN if [ ${INSTALL_OPCACHE} = true ]; then \
COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
#####################################
-# Codeigniter Modifications:
+# Mysqli Modifications:
#####################################
-ARG CODEIGNITER=false
-RUN if [ ${CODEIGNITER} = true ]; then \
- # Install Codeigniter PHP extentions requirements
- docker-php-ext-install mysqli && \
+ARG INSTALL_MYSQLI=false
+RUN if [ ${INSTALL_MYSQLI} = true ]; then \
+ # Install mysqli PHP extentions requirements
+ docker-php-ext-install mysqli && \
+;fi
+
+#####################################
+# Tokenizer Modifications:
+#####################################
+
+ARG INSTALL_TOKENIZER=false
+RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
+ # Install tokenizer PHP extentions requirements
docker-php-ext-install tokenizer \
;fi
diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70
index 20aaf5a..c529fbb 100644
--- a/php-fpm/Dockerfile-70
+++ b/php-fpm/Dockerfile-70
@@ -176,13 +176,22 @@ RUN if [ ${INSTALL_OPCACHE} = true ]; then \
COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
#####################################
-# Codeigniter Modifications:
+# Mysqli Modifications:
#####################################
-ARG CODEIGNITER=false
-RUN if [ ${CODEIGNITER} = true ]; then \
- # Install Codeigniter PHP extentions requirements
- docker-php-ext-install mysqli && \
+ARG INSTALL_MYSQLI=false
+RUN if [ ${INSTALL_MYSQLI} = true ]; then \
+ # Install mysqli PHP extentions requirements
+ docker-php-ext-install mysqli && \
+;fi
+
+#####################################
+# Tokenizer Modifications:
+#####################################
+
+ARG INSTALL_TOKENIZER=false
+RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
+ # Install tokenizer PHP extentions requirements
docker-php-ext-install tokenizer \
;fi
From 46fcb9e09c22592f8dcbc449de063dad829a6a0d Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 6 Mar 2017 09:31:11 +0100
Subject: [PATCH 23/55] Fixed php-fpm variables and example
---
docker-compose.yml | 6 +++---
env-example | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 49f598f..e5fa043 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -56,9 +56,9 @@ services:
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
- - INSTALL_EXIF=${PHP_FPM_DOCKER_FILE}
- - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_DOCKER_FILE}
- - CODEIGNITER=${PHP_FPM_DOCKER_FILE}
+ - INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
+ - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
+ - CODEIGNITER=${PHP_FPM_CODEIGNITER}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- applications
diff --git a/env-example b/env-example
index aa2a731..6c60812 100644
--- a/env-example
+++ b/env-example
@@ -51,7 +51,7 @@ PHP_FPM_INSTALL_MEMCACHED=false
PHP_FPM_INSTALL_OPCACHE=false
PHP_FPM_INSTALL_EXIF=false
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
-PHP_FPM_CODEIGNITER=falses
+PHP_FPM_CODEIGNITER=false
# NGINX
NGINX_HOST_HTTP_PORT=8080
From 1d918a71d8e5765bfe7a127d3e59d8e99af75209 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 6 Mar 2017 22:20:31 +0100
Subject: [PATCH 24/55] fixed example and docker-compose.yml
---
docker-compose.yml | 4 ++--
env-example | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index f9d0777..51101e8 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -58,8 +58,8 @@ services:
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
- INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
- INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
- - INSTALL_MYSQLI=${PHP_FPM_MYSQLI}
- - INSTALL_TOKENIZER=${PHP_FPM_TOKENIZER}
+ - INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
+ - INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- applications
diff --git a/env-example b/env-example
index d95f208..3ecca97 100644
--- a/env-example
+++ b/env-example
@@ -51,8 +51,8 @@ PHP_FPM_INSTALL_MEMCACHED=false
PHP_FPM_INSTALL_OPCACHE=false
PHP_FPM_INSTALL_EXIF=false
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
-PHP_FPM_MYSQLI=false
-PHP_FPM_TOKENIZER=false
+PHP_FPM_INSTALL_MYSQLI=false
+PHP_FPM_INSTALL_TOKENIZER=false
# NGINX
NGINX_HOST_HTTP_PORT=8080
From 25c27685577388885fa1f50faad311d3c828dcf3 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Mon, 6 Mar 2017 22:26:17 +0100
Subject: [PATCH 25/55] Apache should just go to /var/www not /var/www/public
when supporting multiple projects
---
apache2/Dockerfile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apache2/Dockerfile b/apache2/Dockerfile
index 569ba9f..97636ed 100644
--- a/apache2/Dockerfile
+++ b/apache2/Dockerfile
@@ -6,11 +6,11 @@ ARG PHP_SOCKET=php-fpm:9000
ENV WEB_PHP_SOCKET=$PHP_SOCKET
-ENV WEB_DOCUMENT_ROOT=/var/www/public
+ENV WEB_DOCUMENT_ROOT=/var/www/
EXPOSE 80 443
-WORKDIR /var/www/public
+WORKDIR /var/www/
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
From 048b55186e0a52c3aeabcf301bdb0d6fdbb4e068 Mon Sep 17 00:00:00 2001
From: Thor Erik Lie
Date: Wed, 8 Mar 2017 09:26:08 +0100
Subject: [PATCH 26/55] Fix issue 619
---
nginx/nginx.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/nginx/nginx.conf b/nginx/nginx.conf
index 97e5a0e..88bc760 100644
--- a/nginx/nginx.conf
+++ b/nginx/nginx.conf
@@ -25,6 +25,6 @@ http {
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-available/*;
- open_file_cache max=100;
+ open_file_cache off; # Disabled for issue 619
charset UTF-8;
}
From 37ed904f1a588de09993d76ddeee8447bcc9a767 Mon Sep 17 00:00:00 2001
From: hchs
Date: Thu, 9 Mar 2017 10:26:47 +0800
Subject: [PATCH 27/55] add vhost example
---
apache2/Dockerfile | 2 ++
apache2/sites/.gitignore | 3 +++
apache2/sites/default.apache.conf | 16 ++++++++++++++++
apache2/sites/sample.conf.example | 16 ++++++++++++++++
apache2/vhost.conf | 1 +
docker-compose.yml | 1 +
6 files changed, 39 insertions(+)
create mode 100644 apache2/sites/.gitignore
create mode 100644 apache2/sites/default.apache.conf
create mode 100644 apache2/sites/sample.conf.example
create mode 100644 apache2/vhost.conf
diff --git a/apache2/Dockerfile b/apache2/Dockerfile
index 569ba9f..09cc63e 100644
--- a/apache2/Dockerfile
+++ b/apache2/Dockerfile
@@ -12,6 +12,8 @@ EXPOSE 80 443
WORKDIR /var/www/public
+ADD vhost.conf /etc/apache2/sites-enabled/vhost.conf
+
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["supervisord"]
diff --git a/apache2/sites/.gitignore b/apache2/sites/.gitignore
new file mode 100644
index 0000000..f1f9322
--- /dev/null
+++ b/apache2/sites/.gitignore
@@ -0,0 +1,3 @@
+*.conf
+!default.conf
+!default.apache.conf
diff --git a/apache2/sites/default.apache.conf b/apache2/sites/default.apache.conf
new file mode 100644
index 0000000..2d15daf
--- /dev/null
+++ b/apache2/sites/default.apache.conf
@@ -0,0 +1,16 @@
+
+ ServerName laradock.dev
+ DocumentRoot /var/www/html/
+ Options Indexes FollowSymLinks
+
+
+ AllowOverride All
+
+ Allow from all
+
+ = 2.4>
+ Require all granted
+
+
+
+
diff --git a/apache2/sites/sample.conf.example b/apache2/sites/sample.conf.example
new file mode 100644
index 0000000..48a132e
--- /dev/null
+++ b/apache2/sites/sample.conf.example
@@ -0,0 +1,16 @@
+
+ ServerName sample.dev
+ DocumentRoot /var/www/sample/public/
+ Options Indexes FollowSymLinks
+
+
+ AllowOverride All
+
+ Allow from all
+
+ = 2.4>
+ Require all granted
+
+
+
+
diff --git a/apache2/vhost.conf b/apache2/vhost.conf
new file mode 100644
index 0000000..2352bf8
--- /dev/null
+++ b/apache2/vhost.conf
@@ -0,0 +1 @@
+Include /etc/apache2/sites-available/*.conf
diff --git a/docker-compose.yml b/docker-compose.yml
index 283d777..38a5209 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -104,6 +104,7 @@ services:
- applications
volumes:
- ./logs/apache2:/var/log/apache2
+ - ./apache2/sites:/etc/apache2/sites-available
ports:
- "80:80"
- "443:443"
From 36fcc6674e88ca98ada6d0e94e1bc329e4d3bdfd Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Thu, 9 Mar 2017 09:29:07 +0100
Subject: [PATCH 28/55] Seperated mysqli and tokenizer as seperate options
without putting them under code igniter
---
docker-compose.yml | 2 +-
php-fpm/Dockerfile-56 | 6 ++----
php-fpm/Dockerfile-70 | 7 ++-----
3 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 27ae21b..e925478 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -7,7 +7,7 @@ services:
applications:
image: tianon/true
volumes:
- - ${APPLICATIONS_HOST_DIR}:/var/www
+ - ${APPLICATIONS_HOST_DIR}:/var/www
### Workspace Utilities Container ###########################
diff --git a/php-fpm/Dockerfile-56 b/php-fpm/Dockerfile-56
index 1775cf6..6c63d72 100644
--- a/php-fpm/Dockerfile-56
+++ b/php-fpm/Dockerfile-56
@@ -149,9 +149,8 @@ COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
#####################################
ARG INSTALL_MYSQLI=false
-RUN if [ ${INSTALL_MYSQLI} = true ]; then \
- # Install mysqli PHP extentions requirements
- docker-php-ext-install mysqli && \
+RUN if [ ${INSTALL_MYSQLI} = true ]; then \
+ docker-php-ext-install mysqli \
;fi
#####################################
@@ -160,7 +159,6 @@ RUN if [ ${INSTALL_MYSQLI} = true ]; then \
ARG INSTALL_TOKENIZER=false
RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
- # Install tokenizer PHP extentions requirements
docker-php-ext-install tokenizer \
;fi
diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70
index c529fbb..d0ddaf0 100644
--- a/php-fpm/Dockerfile-70
+++ b/php-fpm/Dockerfile-70
@@ -178,11 +178,9 @@ COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
#####################################
# Mysqli Modifications:
#####################################
-
ARG INSTALL_MYSQLI=false
-RUN if [ ${INSTALL_MYSQLI} = true ]; then \
- # Install mysqli PHP extentions requirements
- docker-php-ext-install mysqli && \
+RUN if [ ${INSTALL_MYSQLI} = true ]; then \
+ docker-php-ext-install mysqli \
;fi
#####################################
@@ -191,7 +189,6 @@ RUN if [ ${INSTALL_MYSQLI} = true ]; then \
ARG INSTALL_TOKENIZER=false
RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
- # Install tokenizer PHP extentions requirements
docker-php-ext-install tokenizer \
;fi
From ab1d5bae95acdf59ed779bff37d8f7efbb7c0e99 Mon Sep 17 00:00:00 2001
From: Mahmoud Zalt
Date: Mon, 13 Mar 2017 21:03:31 -0400
Subject: [PATCH 29/55] complete missings
---
.env.example | 124 +++++++++++++++++++++++++++++++++++++++++++++
docker-compose.yml | 91 ++++++++++++++++-----------------
2 files changed, 168 insertions(+), 47 deletions(-)
create mode 100644 .env.example
diff --git a/.env.example b/.env.example
new file mode 100644
index 0000000..9176264
--- /dev/null
+++ b/.env.example
@@ -0,0 +1,124 @@
+### Application
+# Point to your application code, wish should be available at `/var/www`
+APPLICATIONS_HOST_DIR=../
+
+### PHP version (Does not apply for HHVM)
+# PHP_VERSION=55
+# PHP_VERSION=56
+PHP_VERSION=70
+
+### PHP interpreter
+# PHP_INTERPRETER=hhvm
+PHP_INTERPRETER=php-fpm
+
+### WORKSPACE Container
+WORKSPACE_INSTALL_XDEBUG=false
+WORKSPACE_INSTALL_SOAP=false
+WORKSPACE_INSTALL_MONGO=false
+WORKSPACE_INSTALL_NODE=false
+WORKSPACE_INSTALL_YARN=false
+WORKSPACE_INSTALL_DRUSH=false
+WORKSPACE_INSTALL_AEROSPIKE_EXTENSION=false
+WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION=false
+WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
+WORKSPACE_INSTALL_WORKSPACE_SSH=false
+WORKSPACE_INSTALL_LARAVEL_ENVOY=false
+WORKSPACE_INSTALL_DEPLOYER=false
+WORKSPACE_INSTALL_LINUXBREW=false
+WORKSPACE_PUID=1000
+WORKSPACE_PGID=1000
+WORKSPACE_NODE_VERSION=stable
+WORKSPACE_TIMEZONE=UTC
+WORKSPACE_SSH_PORT=2222
+
+### PHP_FPM Container
+PHP_FPM_DOCKER_FILE=Dockerfile-70
+PHP_FPM_INSTALL_XDEBUG=false
+PHP_FPM_INSTALL_MONGO=false
+PHP_FPM_INSTALL_SOAP=false
+PHP_FPM_INSTALL_ZIP_ARCHIVE=false
+PHP_FPM_INSTALL_BCMATH=false
+PHP_FPM_INSTALL_PHPREDIS=false
+PHP_FPM_INSTALL_MEMCACHED=false
+PHP_FPM_INSTALL_OPCACHE=false
+PHP_FPM_INSTALL_EXIF=false
+PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
+PHP_FPM_INSTALL_MYSQLI=false
+PHP_FPM_INSTALL_TOKENIZER=false
+
+### NGINX Container
+NGINX_HOST_HTTP_PORT=80
+NGINX_HOST_HTTPS_PORT=433
+NGINX_HOST_LOG_PATH=./logs/nginx/
+NGINX_SITES_PATH=./nginx/sites/
+
+### APACHE Container
+APACHE_HOST_HTTP_PORT=80
+APACHE_HOST_HTTPS_PORT=443
+APACHE2_PHP_SOCKET=php-fpm:9000
+APACHE_HOST_LOG_PATH=./logs/apache2
+PHP_SOCKET=php-fpm:9000
+
+### MYSQL Container
+MYSQL_DATABASE=default
+MYSQL_USER=default
+MYSQL_PASSWORD=secret
+MYSQL_PORT=3306
+MYSQL_ROOT_PASSWORD=root
+
+### MARIADB Container
+MARIADB_DATABASE=default
+MARIADB_USER=default
+MARIADB_PASSWORD=secret
+MARIADB_PORT=3306
+
+
+### POSTGRES Container
+POSTGRES_DB=default
+POSTGRES_USER=default
+POSTGRES_PASSWORD=secret
+POSTGRES_PORT=5432
+
+### RABBITMQ Container
+RABBITMQ_NODE_HOST_PORT=5672
+RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
+RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
+RABBITMQ_DEFAULT_USER=guest
+RABBITMQ_DEFAULT_PASS=guest
+
+### ELASTICSEARCH Container
+ELASTICSEARCH_HOST_HTTP_PORT=9200
+ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
+
+### MEMCACHED Container
+MEMCACHED_HOST_PORT=11211
+
+### BEANSTALKD CONSOLE
+BEANSTALKD_CONSOLE_BUILD_PATH=./beanstalkd-console
+BEANSTALKD_CONSOLE_CONTAINER_NAME=beanstalkd-console
+BEANSTALKD_CONSOLE_HOST_PORT=2080
+
+### BEANSTALKD Container
+BEANSTALKD_HOST_PORT=11300
+
+### SELENIUM Container
+SELENIUM_PORT=4444
+
+### MINIO Container
+MINIO_PORT=9000
+
+### PHP MY ADMIN Container
+# PMA_DB_ENGINE=mariadb
+PMA_DB_ENGINE=mysql
+PMA_USER=default
+PMA_PASSWORD=secret
+PMA_ROOT_PASSWORD=secret
+PMA_PORT=88
+
+### MISC
+# Replace with your Docker Host IP (will be appended to /etc/hosts)
+DOCKER_HOST_IP=10.0.75.1
+# The Remote Interpreter entry matching name `laradock`
+PHP_IDE_CONFIG=serverName=laradock
+
+### to be continue neo4j mongo rethinkdb redis aerospike pgadmin ...
diff --git a/docker-compose.yml b/docker-compose.yml
index e925478..51235b7 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -36,10 +36,9 @@ services:
volumes_from:
- applications
extra_hosts:
- # IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
- - "dockerhost:10.0.75.1"
+ - "dockerhost:${DOCKER_HOST_IP}"
ports:
- - "2222:22"
+ - "${WORKSPACE_SSH_PORT}:22"
tty: true
### PHP-FPM Container #######################################
@@ -68,11 +67,9 @@ services:
links:
- workspace
extra_hosts:
- # IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
- - "dockerhost:10.0.75.1"
+ - "dockerhost:${DOCKER_HOST_IP}"
environment:
- # IMPORTANT: Set the Remote Interpreter entry matching name to `laravel`
- - PHP_IDE_CONFIG=serverName=laravel
+ - PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
### Nginx Server Container ##################################
@@ -87,8 +84,8 @@ services:
- ${NGINX_HOST_LOG_PATH}:/var/log/nginx
- ${NGINX_SITES_PATH}:/etc/nginx/sites-available
ports:
- - "80:80"
- - "443:443"
+ - "${NGINX_HOST_HTTP_PORT}:80"
+ - "${NGINX_HOST_HTTPS_PORT}:443"
links:
- php-fpm
@@ -98,14 +95,14 @@ services:
build:
context: ./apache2
args:
- - PHP_SOCKET=php-fpm:9000
+ - PHP_SOCKET=${PHP_SOCKET}
volumes_from:
- applications
volumes:
- - ./logs/apache2:/var/log/apache2
+ - ${APACHE_HOST_LOG_PATH}:/var/log/apache2
ports:
- - "80:80"
- - "443:443"
+ - "${APACHE_HOST_HTTP_PORT}:80"
+ - "${APACHE_HOST_HTTPS_PORT}:443"
links:
- php-fpm
@@ -127,7 +124,7 @@ services:
volumes:
- minio:/export
ports:
- - "9000:9000"
+ - "${MINIO_PORT}:9000"
environment:
MINIO_ACCESS_KEY: access
MINIO_SECRET_KEY: secretkey
@@ -138,14 +135,14 @@ services:
build:
context: ./mysql
args:
- - MYSQL_DATABASE=default
- - MYSQL_USER=default
- - MYSQL_PASSWORD=secret
- - MYSQL_ROOT_PASSWORD=root
+ - MYSQL_DATABASE=${MYSQL_DATABASE}
+ - MYSQL_USER=${MYSQL_USER}
+ - MYSQL_PASSWORD=${MYSQL_PASSWORD}
+ - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- mysql:/var/lib/mysql
ports:
- - "3306:3306"
+ - "${MYSQL_PORT}:3306"
### MariaDB Container #######################################
@@ -154,12 +151,12 @@ services:
volumes:
- mariadb:/var/lib/mysql
ports:
- - "3306:3306"
+ - "${MARIADB_PORT}:3306"
environment:
- MYSQL_DATABASE: default
- MYSQL_USER: default
- MYSQL_PASSWORD: secret
- MYSQL_ROOT_PASSWORD: root
+ MYSQL_DATABASE: ${MARIADB_DATABASE}
+ MYSQL_USER: ${MARIADB_USER}
+ MYSQL_PASSWORD: ${MARIADB_PASSWORD}
+ MYSQL_ROOT_PASSWORD: ${MARIADB_PORT}
### PostgreSQL Container ####################################
@@ -168,11 +165,11 @@ services:
volumes:
- postgres:/var/lib/postgresql/data
ports:
- - "5432:5432"
+ - "${POSTGRES_PORT}:5432"
environment:
- POSTGRES_DB: default
- POSTGRES_USER: default
- POSTGRES_PASSWORD: secret
+ POSTGRES_DB: ${POSTGRES_DB}
+ POSTGRES_USER: ${POSTGRES_USER}
+ POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
### PostgreSQL PostGis Container ############################
@@ -181,11 +178,11 @@ services:
volumes:
- postgres:/var/lib/postgresql/data
ports:
- - "5432:5432"
+ - "${POSTGRES_PORT}:5432"
environment:
- POSTGRES_DB: default
- POSTGRES_USER: default
- POSTGRES_PASSWORD: secret
+ POSTGRES_DB: ${POSTGRES_DB}
+ POSTGRES_USER: ${POSTGRES_USER}
+ POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
### Neo4j Container #########################################
@@ -248,7 +245,7 @@ services:
volumes:
- memcached:/var/lib/memcached
ports:
- - "11211:11211"
+ - "${MEMCACHED_HOST_PORT}:11211"
links:
- php-fpm
@@ -257,7 +254,7 @@ services:
beanstalkd:
build: ./beanstalkd
ports:
- - "11300:11300"
+ - "${BEANSTALKD_HOST_PORT}:11300"
privileged: true
links:
- php-fpm
@@ -267,13 +264,13 @@ services:
rabbitmq:
build: ./rabbitmq
ports:
- - "5672:5672"
- - "15671:15671"
- - "8080:15672"
+ - "${RABBITMQ_NODE_HOST_PORT}:5672"
+ - "${RABBITMQ_MANAGEMENT_HTTP_HOST_PORT}:15672"
+ - "${RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT}:15671"
privileged: true
environment:
- RABBITMQ_DEFAULT_USER: guest
- RABBITMQ_DEFAULT_PASS: guest
+ RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER}
+ RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS}
links:
- php-fpm
@@ -309,14 +306,14 @@ services:
build: ./phpmyadmin
environment:
PMA_ARBITRARY: 1
- MYSQL_USER: default
- MYSQL_PASSWORD: secret
- MYSQL_ROOT_PASSWORD: root
+ MYSQL_USER: ${PMA_USER}
+ MYSQL_PASSWORD: ${PMA_PASSWORD}
+ MYSQL_ROOT_PASSWORD: ${PMA_ROOT_PASSWORD}
ports:
- - "8080:80"
+ - "${PMA_PORT}:80"
links:
# for mysql container
- - "mysql:db"
+ - "${PMA_DB_ENGINE}:db"
# for mariadb container
# - "mariadb:db"
@@ -337,8 +334,8 @@ services:
- elasticsearch-data:/usr/share/elasticsearch/data
- elasticsearch-plugins:/usr/share/elasticsearch/data
ports:
- - "9200:9200"
- - "9300:9300"
+ - "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
+ - "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
links:
- php-fpm
@@ -347,7 +344,7 @@ services:
selenium:
build: ./selenium
ports:
- - "4444:4444"
+ - "${SELENIUM_PORT}:4444"
volumes:
# see https://github.com/SeleniumHQ/docker-selenium#running-the-images
- /dev/shm:/dev/shm
From fd0cbff16cb5df9c0039bb00d6a20c647b036de2 Mon Sep 17 00:00:00 2001
From: Ignacio Cabrera
Date: Tue, 14 Mar 2017 10:58:35 -0300
Subject: [PATCH 30/55] Adding ARG to docker-compose
---
docker-compose.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/docker-compose.yml b/docker-compose.yml
index 283d777..b1944ec 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -61,6 +61,7 @@ services:
- INSTALL_EXIF=false
- INSTALL_AEROSPIKE_EXTENSION=false
- CODEIGNITER=false
+ - GHOSTSCRIPT=false
dockerfile: Dockerfile-70
volumes_from:
- applications
From 9c14954ff4c2f96acf96b4161c0a8e8676cc2420 Mon Sep 17 00:00:00 2001
From: Ignacio Cabrera
Date: Tue, 14 Mar 2017 10:59:38 -0300
Subject: [PATCH 31/55] Adding GHOSTSCRIPT support
---
php-fpm/Dockerfile-70 | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70
index 20aaf5a..2aa584c 100644
--- a/php-fpm/Dockerfile-70
+++ b/php-fpm/Dockerfile-70
@@ -186,6 +186,20 @@ RUN if [ ${CODEIGNITER} = true ]; then \
docker-php-ext-install tokenizer \
;fi
+#####################################
+# GHOSTSCRIPT:
+#####################################
+
+ARG GHOSTSCRIPT=false
+RUN if [ ${GHOSTSCRIPT} = true ]; then \
+ # Install the ghostscript extension
+ # for PDF editing
+ apt-get -y update \
+ && apt-get install -y \
+ poppler-utils \
+ ghostscript \
+;fi
+
#
#--------------------------------------------------------------------------
# Final Touch
From d505871faffe89e35a7e89eeb2b2b6069c962202 Mon Sep 17 00:00:00 2001
From: Ignacio Cabrera
Date: Tue, 14 Mar 2017 11:05:22 -0300
Subject: [PATCH 32/55] Adding php-worker for Laravel
---
php-worker/Dockerfile | 39 +++++++++++++++++++++++++++++++++++++
php-worker/supervisord.conf | 9 +++++++++
2 files changed, 48 insertions(+)
create mode 100644 php-worker/Dockerfile
create mode 100644 php-worker/supervisord.conf
diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile
new file mode 100644
index 0000000..c588b3d
--- /dev/null
+++ b/php-worker/Dockerfile
@@ -0,0 +1,39 @@
+#
+#--------------------------------------------------------------------------
+# Image Setup
+#--------------------------------------------------------------------------
+#
+# To take a look at the'php-worker' base Image, visit its DockerHub page
+# https://hub.docker.com/r/nielsvdoorn/laravel-supervisor/
+#
+
+FROM nielsvdoorn/laravel-supervisor
+
+#
+#--------------------------------------------------------------------------
+# Optional Supervisord Configuration
+#--------------------------------------------------------------------------
+#
+# Modify the ./supervisor.conf file to match your App's requirements.
+# Make sure you rebuild your container with every change.
+#
+COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
+
+#
+#--------------------------------------------------------------------------
+# Optional Software's Installation
+#--------------------------------------------------------------------------
+#
+# If you need to modify this image, feel free to do it right here.
+#
+ # -- Your awesome modifications go here -- #
+
+
+#
+#--------------------------------------------------------------------------
+# Final Touch
+#--------------------------------------------------------------------------
+#
+
+RUN rm -r /var/lib/apt/lists/*
+WORKDIR /etc/supervisor/conf.d/supervisord.conf
\ No newline at end of file
diff --git a/php-worker/supervisord.conf b/php-worker/supervisord.conf
new file mode 100644
index 0000000..7815675
--- /dev/null
+++ b/php-worker/supervisord.conf
@@ -0,0 +1,9 @@
+[supervisord]
+nodaemon=true
+[program:laravel-worker]
+process_name=%(program_name)s_%(process_num)02d
+command=php /var/www/laravel/artisan queue:work --sleep=3 --tries=3 --daemon
+autostart=true
+autorestart=true
+numprocs=8
+redirect_stderr=true
\ No newline at end of file
From cbd3cf7c20f25d058d9f11d7daa03d5210a8a9c0 Mon Sep 17 00:00:00 2001
From: Ignacio Cabrera
Date: Tue, 14 Mar 2017 11:06:45 -0300
Subject: [PATCH 33/55] Adding php-worker container to docker-compose
---
docker-compose.yml | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/docker-compose.yml b/docker-compose.yml
index 283d777..10eee55 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -74,6 +74,15 @@ services:
environment:
# IMPORTANT: Set the Remote Interpreter entry matching name to `laravel`
- PHP_IDE_CONFIG=serverName=laravel
+
+### PHP Worker Container #################################
+ php-worker:
+ build:
+ context: ./php-worker
+ volumes:
+ - ../:/var/www/laravel
+ links:
+ - workspace
### Nginx Server Container ##################################
From 0d41c3d65eb91b207bb85903ba9581a5c9d2ea99 Mon Sep 17 00:00:00 2001
From: Marius van Zundert
Date: Wed, 15 Mar 2017 09:12:07 +0100
Subject: [PATCH 34/55] updated env-example and removed .env.example
---
.env.example | 124 ------------------------------------
env-example | 177 +++++++++++++++++++--------------------------------
2 files changed, 67 insertions(+), 234 deletions(-)
delete mode 100644 .env.example
diff --git a/.env.example b/.env.example
deleted file mode 100644
index 9176264..0000000
--- a/.env.example
+++ /dev/null
@@ -1,124 +0,0 @@
-### Application
-# Point to your application code, wish should be available at `/var/www`
-APPLICATIONS_HOST_DIR=../
-
-### PHP version (Does not apply for HHVM)
-# PHP_VERSION=55
-# PHP_VERSION=56
-PHP_VERSION=70
-
-### PHP interpreter
-# PHP_INTERPRETER=hhvm
-PHP_INTERPRETER=php-fpm
-
-### WORKSPACE Container
-WORKSPACE_INSTALL_XDEBUG=false
-WORKSPACE_INSTALL_SOAP=false
-WORKSPACE_INSTALL_MONGO=false
-WORKSPACE_INSTALL_NODE=false
-WORKSPACE_INSTALL_YARN=false
-WORKSPACE_INSTALL_DRUSH=false
-WORKSPACE_INSTALL_AEROSPIKE_EXTENSION=false
-WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION=false
-WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
-WORKSPACE_INSTALL_WORKSPACE_SSH=false
-WORKSPACE_INSTALL_LARAVEL_ENVOY=false
-WORKSPACE_INSTALL_DEPLOYER=false
-WORKSPACE_INSTALL_LINUXBREW=false
-WORKSPACE_PUID=1000
-WORKSPACE_PGID=1000
-WORKSPACE_NODE_VERSION=stable
-WORKSPACE_TIMEZONE=UTC
-WORKSPACE_SSH_PORT=2222
-
-### PHP_FPM Container
-PHP_FPM_DOCKER_FILE=Dockerfile-70
-PHP_FPM_INSTALL_XDEBUG=false
-PHP_FPM_INSTALL_MONGO=false
-PHP_FPM_INSTALL_SOAP=false
-PHP_FPM_INSTALL_ZIP_ARCHIVE=false
-PHP_FPM_INSTALL_BCMATH=false
-PHP_FPM_INSTALL_PHPREDIS=false
-PHP_FPM_INSTALL_MEMCACHED=false
-PHP_FPM_INSTALL_OPCACHE=false
-PHP_FPM_INSTALL_EXIF=false
-PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
-PHP_FPM_INSTALL_MYSQLI=false
-PHP_FPM_INSTALL_TOKENIZER=false
-
-### NGINX Container
-NGINX_HOST_HTTP_PORT=80
-NGINX_HOST_HTTPS_PORT=433
-NGINX_HOST_LOG_PATH=./logs/nginx/
-NGINX_SITES_PATH=./nginx/sites/
-
-### APACHE Container
-APACHE_HOST_HTTP_PORT=80
-APACHE_HOST_HTTPS_PORT=443
-APACHE2_PHP_SOCKET=php-fpm:9000
-APACHE_HOST_LOG_PATH=./logs/apache2
-PHP_SOCKET=php-fpm:9000
-
-### MYSQL Container
-MYSQL_DATABASE=default
-MYSQL_USER=default
-MYSQL_PASSWORD=secret
-MYSQL_PORT=3306
-MYSQL_ROOT_PASSWORD=root
-
-### MARIADB Container
-MARIADB_DATABASE=default
-MARIADB_USER=default
-MARIADB_PASSWORD=secret
-MARIADB_PORT=3306
-
-
-### POSTGRES Container
-POSTGRES_DB=default
-POSTGRES_USER=default
-POSTGRES_PASSWORD=secret
-POSTGRES_PORT=5432
-
-### RABBITMQ Container
-RABBITMQ_NODE_HOST_PORT=5672
-RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
-RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
-RABBITMQ_DEFAULT_USER=guest
-RABBITMQ_DEFAULT_PASS=guest
-
-### ELASTICSEARCH Container
-ELASTICSEARCH_HOST_HTTP_PORT=9200
-ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
-
-### MEMCACHED Container
-MEMCACHED_HOST_PORT=11211
-
-### BEANSTALKD CONSOLE
-BEANSTALKD_CONSOLE_BUILD_PATH=./beanstalkd-console
-BEANSTALKD_CONSOLE_CONTAINER_NAME=beanstalkd-console
-BEANSTALKD_CONSOLE_HOST_PORT=2080
-
-### BEANSTALKD Container
-BEANSTALKD_HOST_PORT=11300
-
-### SELENIUM Container
-SELENIUM_PORT=4444
-
-### MINIO Container
-MINIO_PORT=9000
-
-### PHP MY ADMIN Container
-# PMA_DB_ENGINE=mariadb
-PMA_DB_ENGINE=mysql
-PMA_USER=default
-PMA_PASSWORD=secret
-PMA_ROOT_PASSWORD=secret
-PMA_PORT=88
-
-### MISC
-# Replace with your Docker Host IP (will be appended to /etc/hosts)
-DOCKER_HOST_IP=10.0.75.1
-# The Remote Interpreter entry matching name `laradock`
-PHP_IDE_CONFIG=serverName=laradock
-
-### to be continue neo4j mongo rethinkdb redis aerospike pgadmin ...
diff --git a/env-example b/env-example
index 3ecca97..9176264 100644
--- a/env-example
+++ b/env-example
@@ -1,25 +1,17 @@
-##################
-# DOCKER COMPOSE #
-# ################
+### Application
+# Point to your application code, wish should be available at `/var/www`
+APPLICATIONS_HOST_DIR=../
-DOCKER_HOST_IP=10.0.75.1
+### PHP version (Does not apply for HHVM)
+# PHP_VERSION=55
+# PHP_VERSION=56
+PHP_VERSION=70
-# Switch between PHP and HHVM interpreter
+### PHP interpreter
# PHP_INTERPRETER=hhvm
PHP_INTERPRETER=php-fpm
-# Switch between supported PHP versions... does not apply for HHVM.
-# Please see composer.json in Laravel Framework for the minimum Php Version
-#PHP_VERSION=55
-#PHP_VERSION=56
-PHP_VERSION=70
-
-# APPLICATIONS
-APPLICATIONS_HOST_DIR=../
-APPLICATIONS_IMAGE_NAME=tianon/true
-APPLICATIONS_CONTAINER_NAME=applications
-
-# WORKSPACE
+### WORKSPACE Container
WORKSPACE_INSTALL_XDEBUG=false
WORKSPACE_INSTALL_SOAP=false
WORKSPACE_INSTALL_MONGO=false
@@ -39,7 +31,7 @@ WORKSPACE_NODE_VERSION=stable
WORKSPACE_TIMEZONE=UTC
WORKSPACE_SSH_PORT=2222
-# PHP_FPM
+### PHP_FPM Container
PHP_FPM_DOCKER_FILE=Dockerfile-70
PHP_FPM_INSTALL_XDEBUG=false
PHP_FPM_INSTALL_MONGO=false
@@ -54,114 +46,79 @@ PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
PHP_FPM_INSTALL_MYSQLI=false
PHP_FPM_INSTALL_TOKENIZER=false
-# NGINX
-NGINX_HOST_HTTP_PORT=8080
-NGINX_HOST_HTTPS_PORT=8433
+### NGINX Container
+NGINX_HOST_HTTP_PORT=80
+NGINX_HOST_HTTPS_PORT=433
NGINX_HOST_LOG_PATH=./logs/nginx/
NGINX_SITES_PATH=./nginx/sites/
-
-
-# APACHE
-APACHE2_BUILD_PATH=./apache2
-APACHE2_CONTAINER_NAME=apache2
-APACHE_HOST_HTTP_PORT=7080
-APACHE_HOST_HTTPS_PORT=7443
+### APACHE Container
+APACHE_HOST_HTTP_PORT=80
+APACHE_HOST_HTTPS_PORT=443
APACHE2_PHP_SOCKET=php-fpm:9000
APACHE_HOST_LOG_PATH=./logs/apache2
+PHP_SOCKET=php-fpm:9000
-# HHVM
-HHVM_BUILD_PATH=./hhvm
-HHVM_CONTAINER_NAME=hhvm
-HHVM_HOST_PORT=9000
-
-# MYSQL
-MYSQL_BUILD_PATH=./mysql
-MYSQL_CONTAINER_NAME=mysql
-MYSQL_HOST_PORT=3307
+### MYSQL Container
+MYSQL_DATABASE=default
+MYSQL_USER=default
+MYSQL_PASSWORD=secret
+MYSQL_PORT=3306
MYSQL_ROOT_PASSWORD=root
-# MEMCACHED
-MEMCACHED_BUILD_PATH=./memcached
-MEMCACHED_CONTAINER_NAME=memcached
+### MARIADB Container
+MARIADB_DATABASE=default
+MARIADB_USER=default
+MARIADB_PASSWORD=secret
+MARIADB_PORT=3306
+
+
+### POSTGRES Container
+POSTGRES_DB=default
+POSTGRES_USER=default
+POSTGRES_PASSWORD=secret
+POSTGRES_PORT=5432
+
+### RABBITMQ Container
+RABBITMQ_NODE_HOST_PORT=5672
+RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
+RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
+RABBITMQ_DEFAULT_USER=guest
+RABBITMQ_DEFAULT_PASS=guest
+
+### ELASTICSEARCH Container
+ELASTICSEARCH_HOST_HTTP_PORT=9200
+ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
+
+### MEMCACHED Container
MEMCACHED_HOST_PORT=11211
-# BEANSTALKD
-BEANSTALKD_BUILD_PATH=./beanstalkd
-BEANSTALKD_CONTAINER_NAME=beanstalkd
-BEANSTALKD_HOST_PORT=11300
-
-# BEANSTALKD CONSOLE
+### BEANSTALKD CONSOLE
BEANSTALKD_CONSOLE_BUILD_PATH=./beanstalkd-console
BEANSTALKD_CONSOLE_CONTAINER_NAME=beanstalkd-console
BEANSTALKD_CONSOLE_HOST_PORT=2080
-# RABBITMQ
-RABBITMQ_BUILD_PATH=./rabbitmq
-RABBITMQ_CONTAINER_NAME=rabbitmq
-RABBITMQ_NODE_HOST_PORT=5672
-RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
-RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
-RABBITMQ_DEFAULT_USER=guest
-RABBITMQ_DEFAULT_PASS=guest
+### BEANSTALKD Container
+BEANSTALKD_HOST_PORT=11300
-# ELASTICSEARCH
-ELASTICSEARCH_BUILD_PATH=./elasticsearch/versions/2
-ELASTICSEARCH_CONTAINER_NAME=elasticsearch
-ELASTICSEARCH_HOST_HTTP_PORT=9200
-ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
+### SELENIUM Container
+SELENIUM_PORT=4444
-####################
-# LARAVEL SPECIFIC #
-# ##################
+### MINIO Container
+MINIO_PORT=9000
-# APP
-APP_ENV=local
-APP_KEY=base64:FeZgPe6Pqm7dOCy7Sx0P/PQ9ICMuwAsHLms7DUOxCkI=
-APP_DEBUG=true
-APP_LOG_LEVEL=debug
-APP_URL=http://localhost
+### PHP MY ADMIN Container
+# PMA_DB_ENGINE=mariadb
+PMA_DB_ENGINE=mysql
+PMA_USER=default
+PMA_PASSWORD=secret
+PMA_ROOT_PASSWORD=secret
+PMA_PORT=88
-# DATABASE
-DB_CONNECTION=mysql
+### MISC
+# Replace with your Docker Host IP (will be appended to /etc/hosts)
+DOCKER_HOST_IP=10.0.75.1
+# The Remote Interpreter entry matching name `laradock`
+PHP_IDE_CONFIG=serverName=laradock
-# Laravel Original: DB_HOST=127.0.0.1
-# must match the service name or container name.
-# so if we want to use mariadb it must look like:
-# DB_HOST=mariadb
-DB_HOST=mysql
-
-# IMPORTANT:
-# - ports are defined in docker-compose.yml like HOST_PORT:CONTAINER_PORT
-# - DB_PORT=3306 represents the CONTAINER_PORT not the HOST_PORT
-#
-# This means that this should not be changed unless you have also tweaked the database image created by
-# docker-compose.yml.
-DB_PORT=3306
-DB_DATABASE=default
-DB_USERNAME=default
-DB_PASSWORD=secret
-
-# DRIVERS
-BROADCAST_DRIVER=log
-CACHE_DRIVER=file
-SESSION_DRIVER=file
-QUEUE_DRIVER=sync
-
-# REDIS
-REDIS_HOST=redis
-REDIS_PASSWORD=null
-REDIS_PORT=6379
-
-# MAIL
-MAIL_DRIVER=smtp
-MAIL_HOST=mailtrap.io
-MAIL_PORT=2525
-MAIL_USERNAME=null
-MAIL_PASSWORD=null
-MAIL_ENCRYPTION=null
-
-# PUSHER
-PUSHER_APP_ID=
-PUSHER_KEY=
-PUSHER_SECRET=
+### to be continue neo4j mongo rethinkdb redis aerospike pgadmin ...
From 735647bdf7408e5db253c67c9f3ba6cc48b1fd7b Mon Sep 17 00:00:00 2001
From: David Leung
Date: Wed, 15 Mar 2017 13:51:54 -1000
Subject: [PATCH 35/55] Refine container definition
Changed to `docker ps` because this one word wraps. `docker-compose ps` will create a newline if text is too long in a small terminal window. Also `awk` represents tokens better than ones created with a " " delimiter.
---
xdebugPhpFpm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xdebugPhpFpm b/xdebugPhpFpm
index 5af6eac..9fb9e75 100755
--- a/xdebugPhpFpm
+++ b/xdebugPhpFpm
@@ -4,7 +4,7 @@
# Grab full name of php-fpm container
-PHP_FPM_CONTAINER=$(docker-compose ps | grep php-fpm | cut -d " " -f 1)
+PHP_FPM_CONTAINER=$(docker ps | grep php-fpm | awk '{print $1}')
# Grab OS type
From 8ee2229c849b9556e08be4d4bd53f3f1bca24ab0 Mon Sep 17 00:00:00 2001
From: Max Mekenya
Date: Thu, 16 Mar 2017 09:59:05 +1000
Subject: [PATCH 36/55] intl support
---
php-fpm/Dockerfile-70 | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70
index f607123..14256de 100644
--- a/php-fpm/Dockerfile-70
+++ b/php-fpm/Dockerfile-70
@@ -185,6 +185,18 @@ RUN if [ ${CODEIGNITER} = true ]; then \
docker-php-ext-install tokenizer \
;fi
+#####################################
+# Human Language and Character Encoding Support:
+#####################################
+
+ARG INTL=false
+RUN if [ ${INTL} = true ]; then \
+ # Install intl and requirements
+ apt-get install -y zlib1g-dev libicu-dev g++ && \
+ docker-php-ext-configure intl && \
+ docker-php-ext-install intl \
+;fi
+
#
#--------------------------------------------------------------------------
# Final Touch
From c62ce7d36fc578fe1e30bb6271f599b48844125f Mon Sep 17 00:00:00 2001
From: Max Mekenya
Date: Thu, 16 Mar 2017 09:59:52 +1000
Subject: [PATCH 37/55] Update docker-compose.yml
---
docker-compose.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/docker-compose.yml b/docker-compose.yml
index 3199a3f..b6627b5 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -59,6 +59,7 @@ services:
- INSTALL_EXIF=false
- INSTALL_AEROSPIKE_EXTENSION=false
- CODEIGNITER=false
+ - INTL=false
dockerfile: Dockerfile-70
volumes_from:
- applications
From bed0fd9bdba90d54aef3f3d795511a53a9f31cf9 Mon Sep 17 00:00:00 2001
From: MauricioTRS
Date: Thu, 16 Mar 2017 14:24:56 -0300
Subject: [PATCH 38/55] Elasticsearch - Fix plugins directory
---
docker-compose.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index b1944ec..8ff9bd8 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -337,7 +337,7 @@ services:
build: ./elasticsearch
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
- - elasticsearch-plugins:/usr/share/elasticsearch/data
+ - elasticsearch-plugins:/usr/share/elasticsearch/plugins
ports:
- "9200:9200"
- "9300:9300"
From 1d6583e97e556778b475486e0cbc3a22903a9190 Mon Sep 17 00:00:00 2001
From: Mahmoud Zalt
Date: Thu, 16 Mar 2017 14:40:45 -0400
Subject: [PATCH 39/55] Revert "Add apache conf file for specific virtualhost
ServerName"
---
.env | 1 +
.gitignore | 1 -
apache2/Dockerfile | 3 ---
apache2/apache-config.conf | 16 --------------
docker-compose.yml | 44 +++++++++++++++-----------------------
5 files changed, 18 insertions(+), 47 deletions(-)
create mode 100644 .env
delete mode 100644 apache2/apache-config.conf
diff --git a/.env b/.env
new file mode 100644
index 0000000..accd09a
--- /dev/null
+++ b/.env
@@ -0,0 +1 @@
+COMPOSE_CONVERT_WINDOWS_PATHS=1
diff --git a/.gitignore b/.gitignore
index 00571d7..7c6f11b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,3 @@
.idea
/logs
/data
-.env
diff --git a/apache2/Dockerfile b/apache2/Dockerfile
index 21373f5..569ba9f 100644
--- a/apache2/Dockerfile
+++ b/apache2/Dockerfile
@@ -15,6 +15,3 @@ WORKDIR /var/www/public
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["supervisord"]
-
-# Update the default apache site with the config we created.
-ADD apache-config.conf /etc/apache2/sites-enabled/000-default.conf
\ No newline at end of file
diff --git a/apache2/apache-config.conf b/apache2/apache-config.conf
deleted file mode 100644
index aede94e..0000000
--- a/apache2/apache-config.conf
+++ /dev/null
@@ -1,16 +0,0 @@
-
- ServerAdmin me@mydomain.com
- DocumentRoot ${WEB_DOCUMENT_ROOT}
- ServerName ${SERVER_ALIAS}
-
-
- Options Indexes FollowSymLinks MultiViews
- AllowOverride All
- Order deny,allow
- Allow from all
-
-
- ErrorLog ${APACHE_LOG_DIR}/error.log
- CustomLog ${APACHE_LOG_DIR}/access.log combined
-
-
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 477a74c..f5e1c24 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -77,16 +77,6 @@ services:
# IMPORTANT: Set the Remote Interpreter entry matching name to `laravel`
- PHP_IDE_CONFIG=serverName=laravel
-### PHP-WORKER Container #######################################
-
- php-worker:
- build:
- context: ./php-fpm
- dockerfile: Dockerfile-70 # or Dockerfile-56, choose your PHP-FPM container setting
- volumes_from:
- - applications
- command: php artisan queue:work
-
### Nginx Server Container ##################################
nginx:
@@ -117,8 +107,8 @@ services:
volumes:
- ./logs/apache2:/var/log/apache2
ports:
- - "$SERVER_PORT:80"
- - "$SERVER_SSL_PORT:443"
+ - "80:80"
+ - "443:443"
links:
- php-fpm
@@ -151,14 +141,14 @@ services:
build:
context: ./mysql
args:
- - MYSQL_DATABASE=$DB_DATABASE
- - MYSQL_USER=$DB_USERNAME
- - MYSQL_PASSWORD=$DB_PASSWORD
+ - MYSQL_DATABASE=homestead
+ - MYSQL_USER=homestead
+ - MYSQL_PASSWORD=secret
- MYSQL_ROOT_PASSWORD=root
volumes:
- mysql:/var/lib/mysql
ports:
- - "$DB_PORT:3306"
+ - "3306:3306"
### MariaDB Container #######################################
@@ -169,9 +159,9 @@ services:
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE: $DB_DATABASE
- MYSQL_USER: $DB_USERNAME
- MYSQL_PASSWORD: $DB_PASSWORD
+ MYSQL_DATABASE: homestead
+ MYSQL_USER: homestead
+ MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
### PostgreSQL Container ####################################
@@ -183,9 +173,9 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: $DB_DATABASE
- POSTGRES_USER: $DB_USERNAME
- POSTGRES_PASSWORD: $DB_PASSWORD
+ POSTGRES_DB: homestead
+ POSTGRES_USER: homestead
+ POSTGRES_PASSWORD: secret
### PostgreSQL PostGis Container ############################
@@ -196,9 +186,9 @@ services:
ports:
- "5432:5432"
environment:
- POSTGRES_DB: $DB_DATABASE
- POSTGRES_USER: $DB_USERNAME
- POSTGRES_PASSWORD: $DB_PASSWORD
+ POSTGRES_DB: homestead
+ POSTGRES_USER: homestead
+ POSTGRES_PASSWORD: secret
### Neo4j Container #########################################
@@ -322,8 +312,8 @@ services:
build: ./phpmyadmin
environment:
PMA_ARBITRARY: 1
- MYSQL_USER: $DB_USERNAME
- MYSQL_PASSWORD: $DB_PASSWORD
+ MYSQL_USER: homestead
+ MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
ports:
- "8080:80"
From dcec8a46a8f75fb1783928827dabdf20bec954f8 Mon Sep 17 00:00:00 2001
From: Mahmoud Zalt
Date: Thu, 16 Mar 2017 15:11:04 -0400
Subject: [PATCH 40/55] replace the links with depends_on in the docker-compose
file
closes #636
---
docker-compose.yml | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index f5e1c24..5d24aff 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -68,7 +68,7 @@ services:
- applications
expose:
- "9000"
- links:
+ depends_on:
- workspace
extra_hosts:
# IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
@@ -92,7 +92,7 @@ services:
ports:
- "80:80"
- "443:443"
- links:
+ depends_on:
- php-fpm
### Apache Server Container #################################
@@ -109,7 +109,7 @@ services:
ports:
- "80:80"
- "443:443"
- links:
+ depends_on:
- php-fpm
### HHVM Container ##########################################
@@ -120,7 +120,7 @@ services:
- applications
expose:
- "9000"
- links:
+ depends_on:
- workspace
### Minio Container #########################################
@@ -252,7 +252,7 @@ services:
- memcached:/var/lib/memcached
ports:
- "11211:11211"
- links:
+ depends_on:
- php-fpm
### Beanstalkd Container ####################################
@@ -262,7 +262,7 @@ services:
ports:
- "11300:11300"
privileged: true
- links:
+ depends_on:
- php-fpm
### RabbitMQ Container ######################################
@@ -277,7 +277,7 @@ services:
environment:
RABBITMQ_DEFAULT_USER: guest
RABBITMQ_DEFAULT_PASS: guest
- links:
+ depends_on:
- php-fpm
### Beanstalkd Console Container ############################
@@ -286,7 +286,7 @@ services:
build: ./beanstalkd-console
ports:
- "2080:2080"
- links:
+ depends_on:
- beanstalkd
### Caddy Server Container ##################################
@@ -303,7 +303,7 @@ services:
- ./caddy/Caddyfile:/etc/Caddyfile
- ./logs/caddy:/var/log/caddy
- caddy:/root/.caddy
- links:
+ depends_on:
- php-fpm
### phpMyAdmin Container ####################################
@@ -317,11 +317,11 @@ services:
MYSQL_ROOT_PASSWORD: root
ports:
- "8080:80"
- links:
+ depends_on:
# for mysql container
- - "mysql:db"
+ - "mysql"
# for mariadb container
- # - "mariadb:db"
+ # - "mariadb"
### pgAdmin Container #######################################
@@ -329,7 +329,7 @@ services:
build: ./pgadmin
ports:
- "5050:5050"
- links:
+ depends_on:
- postgres
### ElasticSearch Container #################################
@@ -342,7 +342,7 @@ services:
ports:
- "9200:9200"
- "9300:9300"
- links:
+ depends_on:
- php-fpm
### Certbot Container ##################################
From 30cf27e011eb2d2c4f47f67fa783b00d63f208b5 Mon Sep 17 00:00:00 2001
From: Mahmoud Zalt
Date: Thu, 16 Mar 2017 15:56:37 -0400
Subject: [PATCH 41/55] Fix `nginx: [emerg]
BIO_new_file("/var/certs/cert1.pem") failed (SSL: error:02001002:system
library:fopen:No such file or directory:fopen('/var/certs/cert1.pem','r')
error:2006D080:BIO routines:BIO_new_file:no such file)`
---
nginx/sites/laravel-https.conf | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/nginx/sites/laravel-https.conf b/nginx/sites/laravel-https.conf
index 0704dbf..2c0b0bf 100644
--- a/nginx/sites/laravel-https.conf
+++ b/nginx/sites/laravel-https.conf
@@ -3,9 +3,9 @@ server {
listen 443 default_server;
listen [::]:443 default_server ipv6only=on;
- ssl on;
- ssl_certificate /var/certs/cert1.pem;
- ssl_certificate_key /var/certs/privkey1.pem;
+ #ssl on;
+ #ssl_certificate /var/certs/cert1.pem;
+ #ssl_certificate_key /var/certs/privkey1.pem;
server_name laravel;
root /var/www/laravel/public;
From e0e4616ae0b38322776c1b5432e13d5aa9da7197 Mon Sep 17 00:00:00 2001
From: Mahmoud Zalt
Date: Thu, 16 Mar 2017 17:03:05 -0400
Subject: [PATCH 42/55] update installation steps in the docs (.env)
---
docker-compose.yml | 2 +-
docs/_settings/content/contributing/index.md | 4 +-
docs/_settings/content/documentation/index.md | 34 ++--
.../content/getting-started/index.md | 70 ++++---
docs/_settings/content/help/index.md | 4 +-
docs/_settings/content/introduction/index.md | 41 +++--
.../content/related-projects/index.md | 6 +-
docs/contributing/index.html | 4 +-
docs/contributing/index.xml | 4 +-
docs/documentation/index.html | 34 ++--
docs/documentation/index.xml | 34 ++--
docs/getting-started/index.html | 83 ++++++---
docs/getting-started/index.xml | 83 ++++++---
docs/help/index.html | 4 +-
docs/help/index.xml | 4 +-
docs/index.html | 171 +++++++++++-------
docs/index.xml | 171 +++++++++++-------
docs/introduction/index.html | 40 ++--
docs/introduction/index.xml | 40 ++--
docs/related-projects/index.html | 6 +-
docs/related-projects/index.xml | 6 +-
env-example | 2 +-
22 files changed, 519 insertions(+), 328 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index 0bad674..4bda231 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -7,7 +7,7 @@ services:
applications:
image: tianon/true
volumes:
- - ${APPLICATIONS_HOST_DIR}:/var/www
+ - ${APPLICATION_1}:/var/www
### Workspace Utilities Container ###########################
diff --git a/docs/_settings/content/contributing/index.md b/docs/_settings/content/contributing/index.md
index 4631aa7..14d0110 100644
--- a/docs/_settings/content/contributing/index.md
+++ b/docs/_settings/content/contributing/index.md
@@ -9,7 +9,7 @@ Your contribution is more than welcome.
## Got a Question or Problem?
-If you have questions about how to use LaraDock, please direct your questions to the discussion on [Gitter](https://gitter.im/LaraDock/laradock). If you believe your question could help others, then consider opening an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as Question).
+If you have questions about how to use Laradock, please direct your questions to the discussion on [Gitter](https://gitter.im/Laradock/laradock). If you believe your question could help others, then consider opening an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as Question).
## Found an Issue?
If you find a bug in the source code or a mistake in the documentation, you can help us by
@@ -62,7 +62,7 @@ Laradock uses [Hugo](https://gohugo.io/) as website generator tool, with the [Ma
* Edit the files you want to update.
* **Note:** If you want to edit the base image of the `Workspace` or the `php-fpm` Containers,
-you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the LaraDock repository.
+you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.
* Make sure to update the `Readme` in case you made any changes.
diff --git a/docs/_settings/content/documentation/index.md b/docs/_settings/content/documentation/index.md
index f8785f8..ee2e5d7 100644
--- a/docs/_settings/content/documentation/index.md
+++ b/docs/_settings/content/documentation/index.md
@@ -329,7 +329,7 @@ For information on how to configure xDebug with your IDE and work it out, check
By installing xDebug, you are enabling it to run on startup by default.
-To control the behavior of xDebug (in the `php-fpm` Container), you can run the following commands from the LaraDock root folder, (at the same prompt where you run docker-compose):
+To control the behavior of xDebug (in the `php-fpm` Container), you can run the following commands from the Laradock root folder, (at the same prompt where you run docker-compose):
- Stop xDebug from running by default: `./xdebugPhpFpm stop`.
- Start xDebug by default: `./xdebugPhpFpm start`.
@@ -381,10 +381,10 @@ It should be like this:
-
-## Prepare LaraDock for Production
+
+## Prepare Laradock for Production
-It's recommended for production to create a custom `docker-compose.yml` file. For that reason, LaraDock is shipped with `production-docker-compose.yml` which should contain only the containers you are planning to run on production (usage example: `docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...`).
+It's recommended for production to create a custom `docker-compose.yml` file. For that reason, Laradock is shipped with `production-docker-compose.yml` which should contain only the containers you are planning to run on production (usage example: `docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...`).
Note: The Database (MySQL/MariaDB/...) ports should not be forwarded on production, because Docker will automatically publish the port on the host, which is quite insecure, unless specifically told not to. So make sure to remove these lines:
@@ -439,7 +439,7 @@ For more about the Laravel installation click [here](https://laravel.com/docs/ma
3 - Edit `docker-compose.yml` to Map the new application path:
-By default, LaraDock assumes the Laravel application is living in the parent directory of the laradock folder.
+By default, Laradock assumes the Laravel application is living in the parent directory of the laradock folder.
Since the new Laravel application is in the `my-cool-app` folder, we need to replace `../:/var/www` with `../my-cool-app/:/var/www`, as follow:
@@ -456,7 +456,7 @@ Since the new Laravel application is in the `my-cool-app` folder, we need to rep
cd my-cool-app
```
-5 - Go back to the LaraDock installation steps to see how to edit the `.env` file.
+5 - Go back to the Laradock installation steps to see how to edit the `.env` file.
@@ -581,7 +581,7 @@ composer require predis/predis:^1.0
5 - You can manually test it from Laravel with this code:
```php
-\Cache::store('redis')->put('LaraDock', 'Awesome', 10);
+\Cache::store('redis')->put('Laradock', 'Awesome', 10);
```
@@ -893,7 +893,7 @@ docker-compose up -d minio
## Install CodeIgniter
-To install CodeIgniter 3 on LaraDock all you have to do is the following simple steps:
+To install CodeIgniter 3 on Laradock all you have to do is the following simple steps:
1 - Open the `docker-compose.yml` file.
@@ -1198,7 +1198,7 @@ It should be like this:
## Common Terminal Aliases
-When you start your docker container, LaraDock will copy the `aliases.sh` file located in the `laradock/workspace` directory and add sourcing to the container `~/.bashrc` file.
+When you start your docker container, Laradock will copy the `aliases.sh` file located in the `laradock/workspace` directory and add sourcing to the container `~/.bashrc` file.
You are free to modify the `aliases.sh` as you see fit, adding your own aliases (or function macros) to suit your requirements.
@@ -1292,10 +1292,10 @@ Remote debug Laravel web and phpunit tests.
-
-## Keep track of your LaraDock changes
+
+## Keep track of your Laradock changes
-1. Fork the LaraDock repository.
+1. Fork the Laradock repository.
2. Use that fork as a submodule.
3. Commit all your changes to your fork.
4. Pull new stuff from the main repository from time to time.
@@ -1308,14 +1308,14 @@ Remote debug Laravel web and phpunit tests.
-## Upgrading LaraDock
+## Upgrading Laradock
-Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requires upgrading LaraDock from v3.* to v4.*:
+Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requires upgrading Laradock from v3.* to v4.*:
1. Stop the docker VM `docker-machine stop {default}`
2. Install Docker for [Mac](https://docs.docker.com/docker-for-mac/) or [Windows](https://docs.docker.com/docker-for-windows/).
-3. Upgrade LaraDock to `v4.*.*` (`git pull origin master`)
-4. Use LaraDock as you used to do: `docker-compose up -d nginx mysql`.
+3. Upgrade Laradock to `v4.*.*` (`git pull origin master`)
+4. Use Laradock as you used to do: `docker-compose up -d nginx mysql`.
**Note:** If you face any problem with the last step above: rebuild all your containers
`docker-compose build --no-cache`
@@ -1454,4 +1454,4 @@ This error sometimes happens because your Laravel application isn't running on t
1. Check your running Laravel application IP by dumping `Request::ip()` variable using `dd(Request::ip())` anywhere on your application. The result is the IP of your Laravel container.
2. Change the `DB_HOST` variable on env with the IP that you received from previous step.
* Option B
- 1. Change the `DB_HOST` value to the same name as the MySQL docker container. The LaraDock docker-compose file currently has this as `mysql`
+ 1. Change the `DB_HOST` value to the same name as the MySQL docker container. The Laradock docker-compose file currently has this as `mysql`
diff --git a/docs/_settings/content/getting-started/index.md b/docs/_settings/content/getting-started/index.md
index 858f95b..f767d38 100644
--- a/docs/_settings/content/getting-started/index.md
+++ b/docs/_settings/content/getting-started/index.md
@@ -19,23 +19,35 @@ weight: 2
Choose the setup the best suits your needs.
-#### A) Setup for Single Project:
-*(In case you want a Docker environment for each project)*
+- [A) Setup for Single Project](#A)
+ - [A.1) Already have a PHP project](#A1)
+ - [A.2) Don't have a PHP project yet](#A2)
+- [B) Setup for Multiple Projects](#B)
-##### A.1) Setup environment in existing Project:
-*(In case you already have a project, and you want to setup an environment to run it)*
-1 - Clone this repository on your project root directory:
+
+#### A) Setup for Single Project
+> (Follow these steps if you want a separate Docker environment for each project)
+
+
+
+##### A.1) Already have a PHP project:
+> (Follow these steps if you already have a PHP project, and all you need is an environment to run it)
+
+1 - Clone laradock on your project root directory:
```bash
git submodule add https://github.com/Laradock/laradock.git
```
-*Note 1: If you are not yet using Git for your PHP project, you can use `git clone https://github.com/Laradock/laradock.git` instead.*
+**Notes:**
-*Note 2: To keep track of your LaraDock changes, between your projects and also keep LaraDock updated. [Check this](#keep-tracking-LaraDock)*
+- If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
-*Note 3: In this case the folder structure will be like this:*
+- Note 2: To keep track of your Laradock changes, between your projects and also keep Laradock updated. [Check this](#keep-tracking-Laradock)
+
+
+Your folder structure should look like this:
```
- project1
@@ -44,15 +56,18 @@ git submodule add https://github.com/Laradock/laradock.git
- laradock
```
-##### A.2) Setup environment first then create project:
-*(In case you don't have a project, and you want to create your project inside the Docker environment)*
+
+
+##### A.2) Don't have a PHP project yet:
+> (Follow these steps if you don't have a PHP project yet, and you need an environment to create the project)
1 - Clone this repository anywhere on your machine:
```bash
git clone https://github.com/laradock/laradock.git
```
-Note: In this case the folder structure will be like this:
+
+Your folder structure should look like this:
```
- projects
@@ -68,8 +83,9 @@ Note: In this case the folder structure will be like this:
docker-compose stop && docker-compose up -d XXXX YYYY ZZZZ ....
```
-
+
#### B) Setup for Multiple Projects:
+> (Follow these steps if you want a single Docker environment for all project)
1 - Clone this repository anywhere on your machine:
@@ -77,11 +93,10 @@ docker-compose stop && docker-compose up -d XXXX YYYY ZZZZ ....
git clone https://github.com/laradock/laradock.git
```
-2 - Edit the `docker-compose.yml` file to map to your projects directories:
+2 - Edit the `docker-compose.yml` (or the `.env`) file to map to your projects directories:
```
applications:
- image: tianon/true
volumes:
- ../project1/:/var/www/project1
- ../project2/:/var/www/project2
@@ -120,12 +135,12 @@ Do the same for each project `project2.conf`, `project3.conf`,...
If you are using **Docker Toolbox** (VM), do one of the following:
-- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading LaraDock](#upgrading-laradock)
-- Use LaraDock v3.* (Visit the `LaraDock-ToolBox` [Branch](https://github.com/laradock/laradock/tree/LaraDock-ToolBox)).
+- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading Laradock](#upgrading-laradock)
+- Use Laradock v3.* (Visit the `Laradock-ToolBox` [Branch](https://github.com/laradock/laradock/tree/Laradock-ToolBox)).
->**Warning:** If you used an older version of LaraDock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent errors as much as possible.
+>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
@@ -143,7 +158,9 @@ docker-compose up -d nginx mysql
You can select your own combination of Containers form the list below:
-`nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `rabbitmq`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`, `elasticsearch`, `rethinkdb`.
+`nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `rabbitmq`, `beanstalkd-console`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`, `elasticsearch`, `rethinkdb`, `postgres-postgis`, `certbot`, `mailhog`, `minio` and more...!
+
+*(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers).*
@@ -159,7 +176,13 @@ Alternatively, for Windows PowerShell users: execute the following command to en
docker exec -it {workspace-container-id} bash
```
-**Note:** You can add `--user=laradock` (example `docker-compose exec --user=laradock workspace bash`) to have files created as your host's user. (you can change the PUID (User id) and PGID (group id) variables from the `docker-compose.yml`).
+**Note:** You can add `--user=laradock` to have files created as your host's user. Example:
+
+```shell
+docker-compose exec --user=laradock workspace bash
+```
+
+*You can change the PUID (User id) and PGID (group id) variables from the `docker-compose.yml` or the `.env`)*
3 - Edit your project configurations.
@@ -170,12 +193,7 @@ Open your `.env` file and set the `DB_HOST` to `mysql`:
DB_HOST=mysql
```
-*If you want to use Laravel and you don't have it installed yet, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
+*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
-4 - Open your browser and visit your localhost address (`http://localhost/`).
-
-
-**Debugging**: if you are facing any problem here check the [Debugging](#debugging) section.
-
-If you need a special support. Contact me, more details in the [Help & Questions](#Help) section.
+4 - Open your browser and visit your localhost address `http://localhost/`.
diff --git a/docs/_settings/content/help/index.md b/docs/_settings/content/help/index.md
index db758fd..3f2342d 100644
--- a/docs/_settings/content/help/index.md
+++ b/docs/_settings/content/help/index.md
@@ -4,6 +4,6 @@ type: index
weight: 5
---
-Join the chat room on [Gitter](https://gitter.im/LaraDock/laradock) and get help and support from the community.
+Join the chat room on [Gitter](https://gitter.im/Laradock/laradock) and get help and support from the community.
-You can as well can open an [issue](https://github.com/laradock/laradock/issues) on Github (will be labeled as Question) and discuss it with people on [Gitter](https://gitter.im/LaraDock/laradock).
+You can as well can open an [issue](https://github.com/laradock/laradock/issues) on Github (will be labeled as Question) and discuss it with people on [Gitter](https://gitter.im/Laradock/laradock).
diff --git a/docs/_settings/content/introduction/index.md b/docs/_settings/content/introduction/index.md
index 463bf0b..44ae7a7 100644
--- a/docs/_settings/content/introduction/index.md
+++ b/docs/_settings/content/introduction/index.md
@@ -4,11 +4,11 @@ type: index
weight: 1
---
-LaraDock strives to make the PHP development experience easier and faster.
+Laradock strives to make the PHP development experience easier and faster.
It contains pre-packaged Docker Images that provides you a wonderful *development* environment without requiring you to install PHP, NGINX, MySQL, Redis, and any other software on your machines.
-LaraDock is configured to run Laravel Apps by default, and it can be modified to run all kinds of PHP Apps (Symfony, CodeIgniter, WordPress, Drupal...).
+Laradock is configured to run Laravel Apps by default, and it can be modified to run all kinds of PHP Apps (Symfony, CodeIgniter, WordPress, Drupal...).
@@ -17,19 +17,25 @@ LaraDock is configured to run Laravel Apps by default, and it can be modified to
Let's see how easy it is to install `NGINX`, `PHP`, `Composer`, `MySQL`, `Redis` and `beanstalkd`:
-1 - Clone LaraDock inside your PHP project:
+1 - Clone Laradock inside your PHP project:
```shell
git clone https://github.com/Laradock/laradock.git
```
-2 - Enter the laradock folder and run this command:
+2 - Enter the laradock folder and rename `env-example` to `.env`.
+
+```shell
+cp env-example .env
+```
+
+3 - Run your containers:
```shell
docker-compose up -d nginx mysql redis beanstalkd
```
-3 - Open your `.env` file and set the following:
+3 - Open your project's `.env` file and set the following:
```shell
DB_HOST=mysql
@@ -76,17 +82,17 @@ Most importantly Docker can run on Development and on Production (same environme
-## LaraDock VS Homestead (For Laravel Developers)
+## Laradock VS Homestead (For Laravel Developers)
-> LaraDock It's like Laravel Homestead but for Docker instead of Vagrant.
+> Laradock It's like Laravel Homestead but for Docker instead of Vagrant.
-LaraDock and [Homestead](https://laravel.com/docs/master/homestead) both give you complete virtual development environments. (Without the need to install and configure every single software on your own Operating System).
+Laradock and [Homestead](https://laravel.com/docs/master/homestead) both give you complete virtual development environments. (Without the need to install and configure every single software on your own Operating System).
- Homestead is a tool that controls Vagrant for you (using Homestead special commands). And Vagrant manages your Virtual Machine.
-- LaraDock is a tool that controls Docker for you (using Docker & Docker Compose official commands). And Docker manages your Virtual Containers.
+- Laradock is a tool that controls Docker for you (using Docker & Docker Compose official commands). And Docker manages your Virtual Containers.
-Running a virtual container is much faster than running a full virtual Machine. Thus **LaraDock is much faster than Homestead**.
+Running a virtual container is much faster than running a full virtual Machine. Thus **Laradock is much faster than Homestead**.
@@ -100,10 +106,10 @@ Running a virtual container is much faster than running a full virtual Machine.
What's better than a **Demo Video**:
-- LaraDock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
-- LaraDock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
-- LaraDock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
-- LaraDock [v0.1](https://www.youtube.com/watch?v=3YQsHe6oF80)
+- Laradock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
+- Laradock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
+- Laradock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
+- Laradock [v0.1](https://www.youtube.com/watch?v=3YQsHe6oF80)
@@ -139,11 +145,12 @@ What's better than a **Demo Video**:
- **Database Engines:**
- MySQL
- - PostgreSQL
- MariaDB
- MongoDB
- Neo4j
- RethinkDB
+ - PostgreSQL
+ - Postgres Postgis
- **Cache Engines:**
- Redis
- Memcached
@@ -165,6 +172,8 @@ What's better than a **Demo Video**:
- PgAdmin
- ElasticSearch
- Selenium
+ - Certbot
+ - Mailhog
- Minio
- Workspace
- PHP7-CLI
@@ -194,4 +203,4 @@ What's better than a **Demo Video**:
You are welcome to join our chat room on Gitter.
-[![Gitter](https://badges.gitter.im/LaraDock/laradock.svg)](https://gitter.im/LaraDock/laradock?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
+[![Gitter](https://badges.gitter.im/Laradock/laradock.svg)](https://gitter.im/Laradock/laradock?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
diff --git a/docs/_settings/content/related-projects/index.md b/docs/_settings/content/related-projects/index.md
index f4b4a42..b5c3095 100644
--- a/docs/_settings/content/related-projects/index.md
+++ b/docs/_settings/content/related-projects/index.md
@@ -4,10 +4,10 @@ type: index
weight: 4
---
-LaraDock related projects:
+Laradock related projects:
-* [LaraDock CLI](https://github.com/lorinlee/laradock-cli) by [LorinLee](https://github.com/lorinlee)
-* [LaraDock Env](https://github.com/bagart/laradock_env) by [BAGArt](https://github.com/bagart)
+* [Laradock CLI](https://github.com/lorinlee/laradock-cli) by [LorinLee](https://github.com/lorinlee)
+* [Laradock Env](https://github.com/bagart/laradock_env) by [BAGArt](https://github.com/bagart)
* [Klaradock](https://github.com/poyhsiao/Klaradock) by [Kim Hsiao](https://github.com/poyhsiao)
* [Ansible Laradock Kubernetes](https://github.com/sifat-rahim/ansible-laradock-kubernetes) by [Sifat Rahim](https://github.com/sifat-rahim)
These Docker Compose projects have piqued our interest:
diff --git a/docs/contributing/index.html b/docs/contributing/index.html
index 19bc73a..b40742f 100644
--- a/docs/contributing/index.html
+++ b/docs/contributing/index.html
@@ -317,7 +317,7 @@
Got a Question or Problem?
-
If you have questions about how to use LaraDock, please direct your questions to the discussion on Gitter. If you believe your question could help others, then consider opening an Issue (it will be labeled as Question).
+
If you have questions about how to use Laradock, please direct your questions to the discussion on Gitter. If you believe your question could help others, then consider opening an Issue (it will be labeled as Question).
Note: If you want to edit the base image of the Workspace or the php-fpm Containers,
-you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the LaraDock repository.
+you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.
Make sure to update the Readme in case you made any changes.
diff --git a/docs/contributing/index.xml b/docs/contributing/index.xml
index 94bad44..934ec39 100644
--- a/docs/contributing/index.xml
+++ b/docs/contributing/index.xml
@@ -20,7 +20,7 @@
<h2 id="got-a-question-or-problem">Got a Question or Problem?</h2>
-<p>If you have questions about how to use LaraDock, please direct your questions to the discussion on <a href="https://gitter.im/LaraDock/laradock">Gitter</a>. If you believe your question could help others, then consider opening an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as Question).</p>
+<p>If you have questions about how to use Laradock, please direct your questions to the discussion on <a href="https://gitter.im/Laradock/laradock">Gitter</a>. If you believe your question could help others, then consider opening an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as Question).</p>
<h2 id="found-an-issue">Found an Issue?</h2>
@@ -74,7 +74,7 @@ submitting an <a href="https://github.com/laradock/laradock/issues"&g
<li><p>Edit the files you want to update.</p></li>
<li><p><strong>Note:</strong> If you want to edit the base image of the <code>Workspace</code> or the <code>php-fpm</code> Containers,
-you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the LaraDock repository.</p></li>
+you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.</p></li>
<li><p>Make sure to update the <code>Readme</code> in case you made any changes.</p></li>
</ul>
diff --git a/docs/documentation/index.html b/docs/documentation/index.html
index 6f6830a..e43cb4e 100644
--- a/docs/documentation/index.html
+++ b/docs/documentation/index.html
@@ -577,7 +577,7 @@ xdebug.remote_connect_back=1
By installing xDebug, you are enabling it to run on startup by default.
-
To control the behavior of xDebug (in the php-fpm Container), you can run the following commands from the LaraDock root folder, (at the same prompt where you run docker-compose):
+
To control the behavior of xDebug (in the php-fpm Container), you can run the following commands from the Laradock root folder, (at the same prompt where you run docker-compose):
Stop xDebug from running by default: ./xdebugPhpFpm stop.
It’s recommended for production to create a custom docker-compose.yml file. For that reason, LaraDock is shipped with production-docker-compose.yml which should contain only the containers you are planning to run on production (usage example: docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...).
+
It’s recommended for production to create a custom docker-compose.yml file. For that reason, Laradock is shipped with production-docker-compose.yml which should contain only the containers you are planning to run on production (usage example: docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...).
Note: The Database (MySQL/MariaDB/…) ports should not be forwarded on production, because Docker will automatically publish the port on the host, which is quite insecure, unless specifically told not to. So make sure to remove these lines:
@@ -662,7 +662,7 @@ xdebug.remote_connect_back=1
3 - Edit docker-compose.yml to Map the new application path:
-
By default, LaraDock assumes the Laravel application is living in the parent directory of the laradock folder.
+
By default, Laradock assumes the Laravel application is living in the parent directory of the laradock folder.
Since the new Laravel application is in the my-cool-app folder, we need to replace ../:/var/www with ../my-cool-app/:/var/www, as follow:
@@ -678,7 +678,7 @@ xdebug.remote_connect_back=1
cd my-cool-app
-
5 - Go back to the LaraDock installation steps to see how to edit the .env file.
+
5 - Go back to the Laradock installation steps to see how to edit the .env file.
@@ -780,7 +780,7 @@ SESSION_DRIVER=redis
5 - You can manually test it from Laravel with this code:
Upgrade LaraDock to v4.*.* (git pull origin master)
-
Use LaraDock as you used to do: docker-compose up -d nginx mysql.
+
Upgrade Laradock to v4.*.* (git pull origin master)
+
Use Laradock as you used to do: docker-compose up -d nginx mysql.
Note: If you face any problem with the last step above: rebuild all your containers
@@ -1500,7 +1500,7 @@ e) set it to true
Option B
-
Change the DB_HOST value to the same name as the MySQL docker container. The LaraDock docker-compose file currently has this as mysql
+
Change the DB_HOST value to the same name as the MySQL docker container. The Laradock docker-compose file currently has this as mysql
diff --git a/docs/documentation/index.xml b/docs/documentation/index.xml
index 6eb19dd..29310c5 100644
--- a/docs/documentation/index.xml
+++ b/docs/documentation/index.xml
@@ -280,7 +280,7 @@ xdebug.remote_connect_back=1
<p>By installing xDebug, you are enabling it to run on startup by default.</p>
-<p>To control the behavior of xDebug (in the <code>php-fpm</code> Container), you can run the following commands from the LaraDock root folder, (at the same prompt where you run docker-compose):</p>
+<p>To control the behavior of xDebug (in the <code>php-fpm</code> Container), you can run the following commands from the Laradock root folder, (at the same prompt where you run docker-compose):</p>
<ul>
<li>Stop xDebug from running by default: <code>./xdebugPhpFpm stop</code>.</li>
@@ -320,11 +320,11 @@ xdebug.remote_connect_back=1
<a name="Production"></a></p>
<p><br>
-<a name="LaraDock-for-Production"></a></p>
+<a name="Laradock-for-Production"></a></p>
-<h2 id="prepare-laradock-for-production">Prepare LaraDock for Production</h2>
+<h2 id="prepare-laradock-for-production">Prepare Laradock for Production</h2>
-<p>It’s recommended for production to create a custom <code>docker-compose.yml</code> file. For that reason, LaraDock is shipped with <code>production-docker-compose.yml</code> which should contain only the containers you are planning to run on production (usage example: <code>docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...</code>).</p>
+<p>It’s recommended for production to create a custom <code>docker-compose.yml</code> file. For that reason, Laradock is shipped with <code>production-docker-compose.yml</code> which should contain only the containers you are planning to run on production (usage example: <code>docker-compose -f production-docker-compose.yml up -d nginx mysql redis ...</code>).</p>
<p>Note: The Database (MySQL/MariaDB/…) ports should not be forwarded on production, because Docker will automatically publish the port on the host, which is quite insecure, unless specifically told not to. So make sure to remove these lines:</p>
@@ -365,7 +365,7 @@ xdebug.remote_connect_back=1
<p>3 - Edit <code>docker-compose.yml</code> to Map the new application path:</p>
-<p>By default, LaraDock assumes the Laravel application is living in the parent directory of the laradock folder.</p>
+<p>By default, Laradock assumes the Laravel application is living in the parent directory of the laradock folder.</p>
<p>Since the new Laravel application is in the <code>my-cool-app</code> folder, we need to replace <code>../:/var/www</code> with <code>../my-cool-app/:/var/www</code>, as follow:</p>
@@ -381,7 +381,7 @@ xdebug.remote_connect_back=1
<pre><code class="language-bash">cd my-cool-app
</code></pre>
-<p>5 - Go back to the LaraDock installation steps to see how to edit the <code>.env</code> file.</p>
+<p>5 - Go back to the Laradock installation steps to see how to edit the <code>.env</code> file.</p>
<p><br>
<a name="Run-Artisan-Commands"></a></p>
@@ -483,7 +483,7 @@ SESSION_DRIVER=redis
<p>5 - You can manually test it from Laravel with this code:</p>
-<pre><code class="language-php">\Cache::store('redis')->put('LaraDock', 'Awesome', 10);
+<pre><code class="language-php">\Cache::store('redis')->put('Laradock', 'Awesome', 10);
</code></pre>
<p><br>
@@ -750,7 +750,7 @@ A package (<a href="https://github.com/duxet/laravel-rethinkdb">La
<h2 id="install-codeigniter">Install CodeIgniter</h2>
-<p>To install CodeIgniter 3 on LaraDock all you have to do is the following simple steps:</p>
+<p>To install CodeIgniter 3 on Laradock all you have to do is the following simple steps:</p>
<p>1 - Open the <code>docker-compose.yml</code> file.</p>
@@ -990,7 +990,7 @@ port=1234
<h2 id="common-terminal-aliases">Common Terminal Aliases</h2>
-<p>When you start your docker container, LaraDock will copy the <code>aliases.sh</code> file located in the <code>laradock/workspace</code> directory and add sourcing to the container <code>~/.bashrc</code> file.</p>
+<p>When you start your docker container, Laradock will copy the <code>aliases.sh</code> file located in the <code>laradock/workspace</code> directory and add sourcing to the container <code>~/.bashrc</code> file.</p>
<p>You are free to modify the <code>aliases.sh</code> as you see fit, adding your own aliases (or function macros) to suit your requirements.</p>
@@ -1065,12 +1065,12 @@ e) set it to <code>true</code></p>
<p><a href="https://github.com/laradock/laradock/blob/master/_guides/phpstorm.md"><strong>Debugging Guide Here</strong></a></p>
<p><br>
-<a name="keep-tracking-LaraDock"></a></p>
+<a name="keep-tracking-Laradock"></a></p>
-<h2 id="keep-track-of-your-laradock-changes">Keep track of your LaraDock changes</h2>
+<h2 id="keep-track-of-your-laradock-changes">Keep track of your Laradock changes</h2>
<ol>
-<li>Fork the LaraDock repository.</li>
+<li>Fork the Laradock repository.</li>
<li>Use that fork as a submodule.</li>
<li>Commit all your changes to your fork.</li>
<li>Pull new stuff from the main repository from time to time.</li>
@@ -1079,15 +1079,15 @@ e) set it to <code>true</code></p>
<p><br>
<a name="upgrading-laradock"></a></p>
-<h2 id="upgrading-laradock">Upgrading LaraDock</h2>
+<h2 id="upgrading-laradock">Upgrading Laradock</h2>
-<p>Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requires upgrading LaraDock from v3.* to v4.*:</p>
+<p>Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requires upgrading Laradock from v3.* to v4.*:</p>
<ol>
<li>Stop the docker VM <code>docker-machine stop {default}</code></li>
<li>Install Docker for <a href="https://docs.docker.com/docker-for-mac/">Mac</a> or <a href="https://docs.docker.com/docker-for-windows/">Windows</a>.</li>
-<li>Upgrade LaraDock to <code>v4.*.*</code> (<code>git pull origin master</code>)</li>
-<li>Use LaraDock as you used to do: <code>docker-compose up -d nginx mysql</code>.</li>
+<li>Upgrade Laradock to <code>v4.*.*</code> (<code>git pull origin master</code>)</li>
+<li>Use Laradock as you used to do: <code>docker-compose up -d nginx mysql</code>.</li>
</ol>
<p><strong>Note:</strong> If you face any problem with the last step above: rebuild all your containers
@@ -1203,7 +1203,7 @@ e) set it to <code>true</code></p>
<li>Option B
<ol>
-<li>Change the <code>DB_HOST</code> value to the same name as the MySQL docker container. The LaraDock docker-compose file currently has this as <code>mysql</code></li>
+<li>Change the <code>DB_HOST</code> value to the same name as the MySQL docker container. The Laradock docker-compose file currently has this as <code>mysql</code></li>
</ol></li>
</ul>
diff --git a/docs/getting-started/index.html b/docs/getting-started/index.html
index 9285ff2..a93294d 100644
--- a/docs/getting-started/index.html
+++ b/docs/getting-started/index.html
@@ -324,24 +324,46 @@
Use Laradock v3.* (Visit the Laradock-ToolBoxBranch).
-
Warning: If you used an older version of LaraDock it’s highly recommended to rebuild the containers you need to use see how you rebuild a container in order to prevent errors as much as possible.
+
Warning: If you used an older version of Laradock it’s highly recommended to rebuild the containers you need to use see how you rebuild a container in order to prevent as much errors as possible.
@@ -437,7 +468,9 @@
You can select your own combination of Containers form the list below:
(Please note that sometimes we forget to update the docs, so check the docker-compose.yml file to see an updated list of all available containers).
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, …).
@@ -450,7 +483,12 @@
docker exec -it {workspace-container-id} bash
-
Note: You can add --user=laradock (example docker-compose exec --user=laradock workspace bash) to have files created as your host’s user. (you can change the PUID (User id) and PGID (group id) variables from the docker-compose.yml).
+
Note: You can add --user=laradock to have files created as your host’s user. Example: