diff --git a/apache2/Dockerfile b/apache2/Dockerfile index 97636ed9..e2b4ce41 100644 --- a/apache2/Dockerfile +++ b/apache2/Dockerfile @@ -12,6 +12,8 @@ EXPOSE 80 443 WORKDIR /var/www/ +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 00000000..f1f9322e --- /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 00000000..2d15dafc --- /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 00000000..48a132e0 --- /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 00000000..2352bf82 --- /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 3a8b901b..37462df7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -57,7 +57,7 @@ services: - INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED} - INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE} - INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF} - - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION} + - INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION} - INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI} - INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER} - INSTALL_INTL=${PHP_FPM_INSTALL_INTL} @@ -72,6 +72,15 @@ services: - "dockerhost:${DOCKER_HOST_IP}" environment: - PHP_IDE_CONFIG=${PHP_IDE_CONFIG} + +### PHP Worker Container ##################################### + php-worker: + build: + context: ./php-worker + volumes_from: + - applications + depends_on: + - workspace ### Nginx Server Container ################################## @@ -102,6 +111,7 @@ services: - applications volumes: - ${APACHE_HOST_LOG_PATH}:/var/log/apache2 + - ./apache2/sites:/etc/apache2/sites-available ports: - "${APACHE_HOST_HTTP_PORT}:80" - "${APACHE_HOST_HTTPS_PORT}:443" @@ -128,8 +138,8 @@ services: ports: - "${MINIO_PORT}:9000" environment: - MINIO_ACCESS_KEY: access - MINIO_SECRET_KEY: secretkey + - MINIO_ACCESS_KEY=access + - MINIO_SECRET_KEY=secretkey ### MySQL Container ######################################### diff --git a/env-example b/env-example index dfa47aae..56b82351 100644 --- a/env-example +++ b/env-example @@ -50,7 +50,7 @@ PHP_FPM_INSTALL_INTL=false ### NGINX Container NGINX_HOST_HTTP_PORT=80 -NGINX_HOST_HTTPS_PORT=433 +NGINX_HOST_HTTPS_PORT=443 NGINX_HOST_LOG_PATH=./logs/nginx/ NGINX_SITES_PATH=./nginx/sites/ diff --git a/nginx/sites/.gitignore b/nginx/sites/.gitignore new file mode 100644 index 00000000..f5d67af0 --- /dev/null +++ b/nginx/sites/.gitignore @@ -0,0 +1,2 @@ +*.conf +!default.conf \ No newline at end of file diff --git a/php-fpm/Dockerfile-71 b/php-fpm/Dockerfile-71 index 065a32fb..001816c3 100644 --- a/php-fpm/Dockerfile-71 +++ b/php-fpm/Dockerfile-71 @@ -10,7 +10,7 @@ # 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. +FROM laradock/php-fpm:7.1--1.3 MAINTAINER Mahmoud Zalt @@ -140,6 +140,32 @@ 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 + +##################################### +# 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 diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile new file mode 100644 index 00000000..13c6d95f --- /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/ diff --git a/php-worker/supervisord.conf b/php-worker/supervisord.conf new file mode 100644 index 00000000..78156750 --- /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