Compare commits

..

26 Commits

Author SHA1 Message Date
3e61554625 Merge pull request #687 from jefhar/jefhar-patch-1
Jefhar patch 1
2017-03-17 11:09:45 -04:00
6054c2d250 Merge pull request #686 from cjmaxik/patch-3
Update Dockerfile-71
2017-03-17 11:08:29 -04:00
5589a12b9d Merge pull request #691 from davidtaboas/patch-1
Fix Dockerfile-70
2017-03-17 11:07:36 -04:00
e2384e2722 Merge pull request #689 from picospuch/patch-1
Update env-example
2017-03-17 11:07:21 -04:00
d077085595 Merge pull request #688 from Mvzundert/master
re-added .gitignore for nginx dir, still do not want configs in git
2017-03-17 11:07:06 -04:00
53f1032975 Merge pull request #673 from cabrerabywaters/PHP_WORKER
Php worker
2017-03-17 11:05:53 -04:00
875ec23ade Merge pull request #661 from g9308370/add_apache_vhost_conf
Add apache2 vhost & example
2017-03-17 11:01:10 -04:00
cee9de7ed1 Fix Dockerfile-70
Add ;fi to end if INSTALL_INTL block
2017-03-17 10:10:32 +01:00
badad156e1 Merge branch 'master' into add_apache_vhost_conf 2017-03-17 16:37:59 +08:00
8e89725381 Update env-example 2017-03-17 16:37:42 +08:00
baf29b1223 re-added .gitignore for nginx dir, still do not want configs in git 2017-03-17 08:48:47 +01:00
9ae6e45dda Merge branch 'master' of https://github.com/Laradock/laradock
* 'master' of https://github.com/Laradock/laradock:
  Update docker-compose.yml
  intl support
2017-03-17 02:46:35 -04:00
94d88e91c5 add missing steps to the docs 2017-03-17 02:46:19 -04:00
8b4901ce57 Closed if
Closed if [] ;fi in Human Language and Character Encoding Support:
2017-03-16 23:28:29 -07:00
08086be4c5 PHP_FPM_INSTALL_INTL env-example
added PHP_FPM_INSTALL_INTL=false to PHP_FPM_INSTALL_INTL=false
2017-03-16 23:26:54 -07:00
f2805bca52 Update docker-compose.yml 2017-03-16 22:21:26 -03:00
033e1b8721 Merge branch 'master' into PHP_WORKER 2017-03-16 21:59:28 -03:00
9e290ffddb Merge pull request #680 from cjmaxik/feature-intl
Adding intl support to php-fpm container
2017-03-16 20:57:47 -04:00
c6e393f5ce Update Dockerfile-71
We have already 7.1 image builded. + intl and ghostscript support 
https://github.com/laradock/laradock/pull/672
https://github.com/laradock/laradock/pull/680
2017-03-17 10:32:04 +10:00
4e443cec09 Merge branch 'master' into feature-intl 2017-03-17 10:08:21 +10:00
528b60eb17 fixing Volumes and Workdir 2017-03-16 21:03:04 -03:00
c62ce7d36f Update docker-compose.yml 2017-03-16 09:59:52 +10:00
8ee2229c84 intl support 2017-03-16 09:59:05 +10:00
cbd3cf7c20 Adding php-worker container to docker-compose 2017-03-14 11:06:45 -03:00
d505871faf Adding php-worker for Laravel 2017-03-14 11:05:22 -03:00
37ed904f1a add vhost example 2017-03-09 10:26:47 +08:00
17 changed files with 301 additions and 112 deletions

View File

@ -32,7 +32,6 @@ Choose the setup the best suits your needs.
<a name="A1"></a>
### 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:
@ -56,11 +55,12 @@ Your folder structure should look like this:
+ laradock-b
```
(It's important to rename the folders differently in each project)
(It's important to rename the folders differently in each project.)
> **Now jump to the [Usage](#Usage) section.**
<a name="A2"></a>
### 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:
@ -82,10 +82,10 @@ Your folder structure should look like this:
*Or you can keep `default.conf` as it is, and create a separate config `my-site.conf` file for it.*
**In case of Apache:** :P
<br>
3 - Run your `docker-compose up` command and you're ready to go.
*Note: if you already had your containers up, you might need to take them down first and rebuild them for the changes to take effect.*
> **Now jump to the [Usage](#Usage) section.**
<a name="B"></a>
@ -121,9 +121,7 @@ You can rename the config files, project folders and domains as you like, just m
127.0.0.1 project-2.dev
```
5 - Visit `http://project-1.dev/` and `http://project-2.dev/`.
> **Now jump to the [Usage](#Usage) section.**
@ -131,6 +129,7 @@ You can rename the config files, project folders and domains as you like, just m
<a name="Usage"></a>
## Usage
**Read Before starting:**
@ -146,10 +145,18 @@ If you are using **Docker Toolbox** (VM), do one of the following:
<br>
1 - Run Containers: *(Make sure you are in the `laradock` folder before running the `docker-compose` commands).*
1 - Enter the laradock folder and rename `env-example` to `.env`
```shell
cp env-example .env
```
You can edit the `.env` file to chose which software's you want to be installed in your environment. You can always refer to the `docker-compose.yml` file to see how those variables are been used.
**Example:** Running NGINX and MySQL:
2 - Build the enviroment and run it using `docker-compose`
In this example we'll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:
```bash
docker-compose up -d nginx mysql
@ -158,21 +165,21 @@ docker-compose up -d nginx mysql
**Note**: The `workspace` and `php-fpm` will run automatically in most of the cases, so no need to specify them in the `up` command. If you couldn't find them running then you need specify them as follow: `docker-compose up -d nginx php-fpm mysql workspace`.
You can select your own combination of Containers form the list below:
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`, `beanstalkd-console`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`, `elasticsearch`, `rethinkdb`, `postgres-postgis`, `certbot`, `mailhog`, `minio` and more...!
> `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).*
<br>
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...).
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...)
```bash
docker-compose exec workspace bash
```
Alternatively, for Windows PowerShell users: execute the following command to enter any running container:
*Alternatively, for Windows PowerShell users: execute the following command to enter any running container:*
```bash
docker exec -it {workspace-container-id} bash
@ -184,12 +191,12 @@ docker exec -it {workspace-container-id} bash
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`)*
*You can change the PUID (User id) and PGID (group id) variables from the `.env` file)*
<br>
3 - Edit your project configurations.
4 - Update your project configurations to use the database host
Open your `.env` file and set the `DB_HOST` to `mysql`:
Open your PHP project's `.env` file or whichever configuration file you are reading from, and set the database host `DB_HOST` to `mysql`:
```env
DB_HOST=mysql
@ -198,4 +205,6 @@ DB_HOST=mysql
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
<br>
4 - Open your browser and visit your localhost address `http://localhost/`.
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`. But first don't

View File

@ -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"]

3
apache2/sites/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*.conf
!default.conf
!default.apache.conf

View File

@ -0,0 +1,16 @@
<VirtualHost *:80>
ServerName laradock.dev
DocumentRoot /var/www/html/
Options Indexes FollowSymLinks
<Directory "/var/www/html/">
AllowOverride All
<IfVersion < 2.4>
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
</VirtualHost>

View File

@ -0,0 +1,16 @@
<VirtualHost *:80>
ServerName sample.dev
DocumentRoot /var/www/sample/public/
Options Indexes FollowSymLinks
<Directory "/var/www/sample/public/">
AllowOverride All
<IfVersion < 2.4>
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
</VirtualHost>

1
apache2/vhost.conf Normal file
View File

@ -0,0 +1 @@
Include /etc/apache2/sites-available/*.conf

View File

@ -60,6 +60,7 @@ services:
- 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}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- applications
@ -71,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 ##################################
@ -101,6 +111,9 @@ 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"

View File

@ -346,10 +346,6 @@
<h3 id="a-1-already-have-a-php-project">A.1) Already have a PHP project:</h3>
<blockquote>
<p>(Follow these steps if you already have a PHP project, and all you need is an environment to run it)</p>
</blockquote>
<p>1 - Clone laradock on your project root directory:</p>
<pre><code class="language-bash">git submodule add https://github.com/Laradock/laradock.git
@ -371,16 +367,16 @@
+ laradock-b
</code></pre>
<p>(It&rsquo;s important to rename the folders differently in each project)</p>
<p>(It&rsquo;s important to rename the folders differently in each project.)</p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="A2"></a></p>
<h3 id="a-2-don-t-have-a-php-project-yet">A.2) Don&rsquo;t have a PHP project yet:</h3>
<blockquote>
<p>(Follow these steps if you don&rsquo;t have a PHP project yet, and you need an environment to create the project)</p>
</blockquote>
<p>1 - Clone this repository anywhere on your machine:</p>
<pre><code class="language-bash">git clone https://github.com/laradock/laradock.git
@ -398,11 +394,12 @@
<p><em>Or you can keep <code>default.conf</code> as it is, and create a separate config <code>my-site.conf</code> file for it.</em></p>
<p><strong>In case of Apache:</strong> :P</p>
<p><strong>In case of Apache:</strong> :P
<br></p>
<p>3 - Run your <code>docker-compose up</code> command and you&rsquo;re ready to go.</p>
<p><em>Note: if you already had your containers up, you might need to take them down first and rebuild them for the changes to take effect.</em></p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="B"></a></p>
@ -438,7 +435,11 @@
127.0.0.1 project-2.dev
</code></pre>
<p>5 - Visit <code>http://project-1.dev/</code> and <code>http://project-2.dev/</code>.</p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="Usage"></a></p>
<h2 id="usage">Usage</h2>
@ -459,28 +460,37 @@
<p><br></p>
<p>1 - Run Containers: <em>(Make sure you are in the <code>laradock</code> folder before running the <code>docker-compose</code> commands).</em></p>
<p>1 - Enter the laradock folder and rename <code>env-example</code> to <code>.env</code></p>
<p><strong>Example:</strong> Running NGINX and MySQL:</p>
<pre><code class="language-shell">cp env-example .env
</code></pre>
<p>You can edit the <code>.env</code> file to chose which software&rsquo;s you want to be installed in your environment. You can always refer to the <code>docker-compose.yml</code> file to see how those variables are been used.</p>
<p>2 - Build the enviroment and run it using <code>docker-compose</code></p>
<p>In this example we&rsquo;ll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:</p>
<pre><code class="language-bash">docker-compose up -d nginx mysql
</code></pre>
<p><strong>Note</strong>: The <code>workspace</code> and <code>php-fpm</code> will run automatically in most of the cases, so no need to specify them in the <code>up</code> command. If you couldn&rsquo;t find them running then you need specify them as follow: <code>docker-compose up -d nginx php-fpm mysql workspace</code>.</p>
<p>You can select your own combination of Containers form the list below:</p>
<p>You can select your own combination of containers form the list below:</p>
<blockquote>
<p><code>nginx</code>, <code>hhvm</code>, <code>php-fpm</code>, <code>mysql</code>, <code>redis</code>, <code>postgres</code>, <code>mariadb</code>, <code>neo4j</code>, <code>mongo</code>, <code>apache2</code>, <code>caddy</code>, <code>memcached</code>, <code>beanstalkd</code>, <code>beanstalkd-console</code>, <code>rabbitmq</code>, <code>beanstalkd-console</code>, <code>workspace</code>, <code>phpmyadmin</code>, <code>aerospike</code>, <code>pgadmin</code>, <code>elasticsearch</code>, <code>rethinkdb</code>, <code>postgres-postgis</code>, <code>certbot</code>, <code>mailhog</code>, <code>minio</code> and more&hellip;!</p>
</blockquote>
<p><em>(Please note that sometimes we forget to update the docs, so check the <code>docker-compose.yml</code> file to see an updated list of all available containers).</em></p>
<p><br>
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &hellip;).</p>
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &hellip;)</p>
<pre><code class="language-bash">docker-compose exec workspace bash
</code></pre>
<p>Alternatively, for Windows PowerShell users: execute the following command to enter any running container:</p>
<p><em>Alternatively, for Windows PowerShell users: execute the following command to enter any running container:</em></p>
<pre><code class="language-bash">docker exec -it {workspace-container-id} bash
</code></pre>
@ -490,12 +500,12 @@
<pre><code class="language-shell">docker-compose exec --user=laradock workspace bash
</code></pre>
<p><em>You can change the PUID (User id) and PGID (group id) variables from the <code>docker-compose.yml</code> or the <code>.env</code>)</em></p>
<p><em>You can change the PUID (User id) and PGID (group id) variables from the <code>.env</code> file)</em></p>
<p><br>
3 - Edit your project configurations.</p>
4 - Update your project configurations to use the database host</p>
<p>Open your <code>.env</code> file and set the <code>DB_HOST</code> to <code>mysql</code>:</p>
<p>Open your PHP project&rsquo;s <code>.env</code> file or whichever configuration file you are reading from, and set the database host <code>DB_HOST</code> to <code>mysql</code>:</p>
<pre><code class="language-env">DB_HOST=mysql
</code></pre>
@ -503,7 +513,7 @@
<p><em>If you want to install Laravel as PHP project, see <a href="#Install-Laravel">How to Install Laravel in a Docker Container</a>.</em></p>
<p><br>
4 - Open your browser and visit your localhost address <code>http://localhost/</code>.</p>
5 - Open your browser and visit your localhost address <code>http://localhost/</code>. If you followed the multiple projects setup, you can visit <code>http://project-1.dev/</code> and <code>http://project-2.dev/</code>. But first don&rsquo;t</p>
<aside class="copyright" role="note">

View File

@ -49,10 +49,6 @@
&lt;h3 id=&#34;a-1-already-have-a-php-project&#34;&gt;A.1) Already have a PHP project:&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;(Follow these steps if you already have a PHP project, and all you need is an environment to run it)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;1 - Clone laradock on your project root directory:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;git submodule add https://github.com/Laradock/laradock.git
@ -74,16 +70,16 @@
+ laradock-b
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;(It&amp;rsquo;s important to rename the folders differently in each project)&lt;/p&gt;
&lt;p&gt;(It&amp;rsquo;s important to rename the folders differently in each project.)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;A2&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;a-2-don-t-have-a-php-project-yet&#34;&gt;A.2) Don&amp;rsquo;t have a PHP project yet:&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;(Follow these steps if you don&amp;rsquo;t have a PHP project yet, and you need an environment to create the project)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;1 - Clone this repository anywhere on your machine:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;git clone https://github.com/laradock/laradock.git
@ -101,11 +97,12 @@
&lt;p&gt;&lt;em&gt;Or you can keep &lt;code&gt;default.conf&lt;/code&gt; as it is, and create a separate config &lt;code&gt;my-site.conf&lt;/code&gt; file for it.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In case of Apache:&lt;/strong&gt; :P&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In case of Apache:&lt;/strong&gt; :P
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;3 - Run your &lt;code&gt;docker-compose up&lt;/code&gt; command and you&amp;rsquo;re ready to go.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: if you already had your containers up, you might need to take them down first and rebuild them for the changes to take effect.&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;B&#34;&gt;&lt;/a&gt;&lt;/p&gt;
@ -141,7 +138,11 @@
127.0.0.1 project-2.dev
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;5 - Visit &lt;code&gt;http://project-1.dev/&lt;/code&gt; and &lt;code&gt;http://project-2.dev/&lt;/code&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;Usage&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;/h2&gt;
@ -162,28 +163,37 @@
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;1 - Run Containers: &lt;em&gt;(Make sure you are in the &lt;code&gt;laradock&lt;/code&gt; folder before running the &lt;code&gt;docker-compose&lt;/code&gt; commands).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;1 - Enter the laradock folder and rename &lt;code&gt;env-example&lt;/code&gt; to &lt;code&gt;.env&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; Running NGINX and MySQL:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;cp env-example .env
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can edit the &lt;code&gt;.env&lt;/code&gt; file to chose which software&amp;rsquo;s you want to be installed in your environment. You can always refer to the &lt;code&gt;docker-compose.yml&lt;/code&gt; file to see how those variables are been used.&lt;/p&gt;
&lt;p&gt;2 - Build the enviroment and run it using &lt;code&gt;docker-compose&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;In this example we&amp;rsquo;ll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker-compose up -d nginx mysql
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: The &lt;code&gt;workspace&lt;/code&gt; and &lt;code&gt;php-fpm&lt;/code&gt; will run automatically in most of the cases, so no need to specify them in the &lt;code&gt;up&lt;/code&gt; command. If you couldn&amp;rsquo;t find them running then you need specify them as follow: &lt;code&gt;docker-compose up -d nginx php-fpm mysql workspace&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You can select your own combination of Containers form the list below:&lt;/p&gt;
&lt;p&gt;You can select your own combination of containers form the list below:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;nginx&lt;/code&gt;, &lt;code&gt;hhvm&lt;/code&gt;, &lt;code&gt;php-fpm&lt;/code&gt;, &lt;code&gt;mysql&lt;/code&gt;, &lt;code&gt;redis&lt;/code&gt;, &lt;code&gt;postgres&lt;/code&gt;, &lt;code&gt;mariadb&lt;/code&gt;, &lt;code&gt;neo4j&lt;/code&gt;, &lt;code&gt;mongo&lt;/code&gt;, &lt;code&gt;apache2&lt;/code&gt;, &lt;code&gt;caddy&lt;/code&gt;, &lt;code&gt;memcached&lt;/code&gt;, &lt;code&gt;beanstalkd&lt;/code&gt;, &lt;code&gt;beanstalkd-console&lt;/code&gt;, &lt;code&gt;rabbitmq&lt;/code&gt;, &lt;code&gt;beanstalkd-console&lt;/code&gt;, &lt;code&gt;workspace&lt;/code&gt;, &lt;code&gt;phpmyadmin&lt;/code&gt;, &lt;code&gt;aerospike&lt;/code&gt;, &lt;code&gt;pgadmin&lt;/code&gt;, &lt;code&gt;elasticsearch&lt;/code&gt;, &lt;code&gt;rethinkdb&lt;/code&gt;, &lt;code&gt;postgres-postgis&lt;/code&gt;, &lt;code&gt;certbot&lt;/code&gt;, &lt;code&gt;mailhog&lt;/code&gt;, &lt;code&gt;minio&lt;/code&gt; and more&amp;hellip;!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;(Please note that sometimes we forget to update the docs, so check the &lt;code&gt;docker-compose.yml&lt;/code&gt; file to see an updated list of all available containers).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &amp;hellip;).&lt;/p&gt;
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &amp;hellip;)&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker-compose exec workspace bash
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively, for Windows PowerShell users: execute the following command to enter any running container:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Alternatively, for Windows PowerShell users: execute the following command to enter any running container:&lt;/em&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker exec -it {workspace-container-id} bash
&lt;/code&gt;&lt;/pre&gt;
@ -193,12 +203,12 @@
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;docker-compose exec --user=laradock workspace bash
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;em&gt;You can change the PUID (User id) and PGID (group id) variables from the &lt;code&gt;docker-compose.yml&lt;/code&gt; or the &lt;code&gt;.env&lt;/code&gt;)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;You can change the PUID (User id) and PGID (group id) variables from the &lt;code&gt;.env&lt;/code&gt; file)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
3 - Edit your project configurations.&lt;/p&gt;
4 - Update your project configurations to use the database host&lt;/p&gt;
&lt;p&gt;Open your &lt;code&gt;.env&lt;/code&gt; file and set the &lt;code&gt;DB_HOST&lt;/code&gt; to &lt;code&gt;mysql&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;Open your PHP project&amp;rsquo;s &lt;code&gt;.env&lt;/code&gt; file or whichever configuration file you are reading from, and set the database host &lt;code&gt;DB_HOST&lt;/code&gt; to &lt;code&gt;mysql&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-env&#34;&gt;DB_HOST=mysql
&lt;/code&gt;&lt;/pre&gt;
@ -206,7 +216,7 @@
&lt;p&gt;&lt;em&gt;If you want to install Laravel as PHP project, see &lt;a href=&#34;#Install-Laravel&#34;&gt;How to Install Laravel in a Docker Container&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
4 - Open your browser and visit your localhost address &lt;code&gt;http://localhost/&lt;/code&gt;.&lt;/p&gt;
5 - Open your browser and visit your localhost address &lt;code&gt;http://localhost/&lt;/code&gt;. If you followed the multiple projects setup, you can visit &lt;code&gt;http://project-1.dev/&lt;/code&gt; and &lt;code&gt;http://project-2.dev/&lt;/code&gt;. But first don&amp;rsquo;t&lt;/p&gt;
</description>
</item>

View File

@ -544,10 +544,6 @@ QUEUE_HOST=beanstalkd
<h3 id="a-1-already-have-a-php-project">A.1) Already have a PHP project:</h3>
<blockquote>
<p>(Follow these steps if you already have a PHP project, and all you need is an environment to run it)</p>
</blockquote>
<p>1 - Clone laradock on your project root directory:</p>
<pre><code class="language-bash">git submodule add https://github.com/Laradock/laradock.git
@ -569,16 +565,16 @@ QUEUE_HOST=beanstalkd
+ laradock-b
</code></pre>
<p>(It&rsquo;s important to rename the folders differently in each project)</p>
<p>(It&rsquo;s important to rename the folders differently in each project.)</p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="A2"></a></p>
<h3 id="a-2-don-t-have-a-php-project-yet">A.2) Don&rsquo;t have a PHP project yet:</h3>
<blockquote>
<p>(Follow these steps if you don&rsquo;t have a PHP project yet, and you need an environment to create the project)</p>
</blockquote>
<p>1 - Clone this repository anywhere on your machine:</p>
<pre><code class="language-bash">git clone https://github.com/laradock/laradock.git
@ -596,11 +592,12 @@ QUEUE_HOST=beanstalkd
<p><em>Or you can keep <code>default.conf</code> as it is, and create a separate config <code>my-site.conf</code> file for it.</em></p>
<p><strong>In case of Apache:</strong> :P</p>
<p><strong>In case of Apache:</strong> :P
<br></p>
<p>3 - Run your <code>docker-compose up</code> command and you&rsquo;re ready to go.</p>
<p><em>Note: if you already had your containers up, you might need to take them down first and rebuild them for the changes to take effect.</em></p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="B"></a></p>
@ -636,7 +633,11 @@ QUEUE_HOST=beanstalkd
127.0.0.1 project-2.dev
</code></pre>
<p>5 - Visit <code>http://project-1.dev/</code> and <code>http://project-2.dev/</code>.</p>
<blockquote>
<p><strong>Now jump to the <a href="#Usage">Usage</a> section.</strong></p>
</blockquote>
<p><a name="Usage"></a></p>
<h2 id="usage">Usage</h2>
@ -657,28 +658,37 @@ QUEUE_HOST=beanstalkd
<p><br></p>
<p>1 - Run Containers: <em>(Make sure you are in the <code>laradock</code> folder before running the <code>docker-compose</code> commands).</em></p>
<p>1 - Enter the laradock folder and rename <code>env-example</code> to <code>.env</code></p>
<p><strong>Example:</strong> Running NGINX and MySQL:</p>
<pre><code class="language-shell">cp env-example .env
</code></pre>
<p>You can edit the <code>.env</code> file to chose which software&rsquo;s you want to be installed in your environment. You can always refer to the <code>docker-compose.yml</code> file to see how those variables are been used.</p>
<p>2 - Build the enviroment and run it using <code>docker-compose</code></p>
<p>In this example we&rsquo;ll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:</p>
<pre><code class="language-bash">docker-compose up -d nginx mysql
</code></pre>
<p><strong>Note</strong>: The <code>workspace</code> and <code>php-fpm</code> will run automatically in most of the cases, so no need to specify them in the <code>up</code> command. If you couldn&rsquo;t find them running then you need specify them as follow: <code>docker-compose up -d nginx php-fpm mysql workspace</code>.</p>
<p>You can select your own combination of Containers form the list below:</p>
<p>You can select your own combination of containers form the list below:</p>
<blockquote>
<p><code>nginx</code>, <code>hhvm</code>, <code>php-fpm</code>, <code>mysql</code>, <code>redis</code>, <code>postgres</code>, <code>mariadb</code>, <code>neo4j</code>, <code>mongo</code>, <code>apache2</code>, <code>caddy</code>, <code>memcached</code>, <code>beanstalkd</code>, <code>beanstalkd-console</code>, <code>rabbitmq</code>, <code>beanstalkd-console</code>, <code>workspace</code>, <code>phpmyadmin</code>, <code>aerospike</code>, <code>pgadmin</code>, <code>elasticsearch</code>, <code>rethinkdb</code>, <code>postgres-postgis</code>, <code>certbot</code>, <code>mailhog</code>, <code>minio</code> and more&hellip;!</p>
</blockquote>
<p><em>(Please note that sometimes we forget to update the docs, so check the <code>docker-compose.yml</code> file to see an updated list of all available containers).</em></p>
<p><br>
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &hellip;).</p>
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &hellip;)</p>
<pre><code class="language-bash">docker-compose exec workspace bash
</code></pre>
<p>Alternatively, for Windows PowerShell users: execute the following command to enter any running container:</p>
<p><em>Alternatively, for Windows PowerShell users: execute the following command to enter any running container:</em></p>
<pre><code class="language-bash">docker exec -it {workspace-container-id} bash
</code></pre>
@ -688,12 +698,12 @@ QUEUE_HOST=beanstalkd
<pre><code class="language-shell">docker-compose exec --user=laradock workspace bash
</code></pre>
<p><em>You can change the PUID (User id) and PGID (group id) variables from the <code>docker-compose.yml</code> or the <code>.env</code>)</em></p>
<p><em>You can change the PUID (User id) and PGID (group id) variables from the <code>.env</code> file)</em></p>
<p><br>
3 - Edit your project configurations.</p>
4 - Update your project configurations to use the database host</p>
<p>Open your <code>.env</code> file and set the <code>DB_HOST</code> to <code>mysql</code>:</p>
<p>Open your PHP project&rsquo;s <code>.env</code> file or whichever configuration file you are reading from, and set the database host <code>DB_HOST</code> to <code>mysql</code>:</p>
<pre><code class="language-env">DB_HOST=mysql
</code></pre>
@ -701,7 +711,7 @@ QUEUE_HOST=beanstalkd
<p><em>If you want to install Laravel as PHP project, see <a href="#Install-Laravel">How to Install Laravel in a Docker Container</a>.</em></p>
<p><br>
4 - Open your browser and visit your localhost address <code>http://localhost/</code>.</p>
5 - Open your browser and visit your localhost address <code>http://localhost/</code>. If you followed the multiple projects setup, you can visit <code>http://project-1.dev/</code> and <code>http://project-2.dev/</code>. But first don&rsquo;t</p>
<h1>Documentation </h1>

View File

@ -251,10 +251,6 @@ QUEUE_HOST=beanstalkd
&lt;h3 id=&#34;a-1-already-have-a-php-project&#34;&gt;A.1) Already have a PHP project:&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;(Follow these steps if you already have a PHP project, and all you need is an environment to run it)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;1 - Clone laradock on your project root directory:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;git submodule add https://github.com/Laradock/laradock.git
@ -276,16 +272,16 @@ QUEUE_HOST=beanstalkd
+ laradock-b
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;(It&amp;rsquo;s important to rename the folders differently in each project)&lt;/p&gt;
&lt;p&gt;(It&amp;rsquo;s important to rename the folders differently in each project.)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;A2&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;a-2-don-t-have-a-php-project-yet&#34;&gt;A.2) Don&amp;rsquo;t have a PHP project yet:&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;(Follow these steps if you don&amp;rsquo;t have a PHP project yet, and you need an environment to create the project)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;1 - Clone this repository anywhere on your machine:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;git clone https://github.com/laradock/laradock.git
@ -303,11 +299,12 @@ QUEUE_HOST=beanstalkd
&lt;p&gt;&lt;em&gt;Or you can keep &lt;code&gt;default.conf&lt;/code&gt; as it is, and create a separate config &lt;code&gt;my-site.conf&lt;/code&gt; file for it.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In case of Apache:&lt;/strong&gt; :P&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In case of Apache:&lt;/strong&gt; :P
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;3 - Run your &lt;code&gt;docker-compose up&lt;/code&gt; command and you&amp;rsquo;re ready to go.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: if you already had your containers up, you might need to take them down first and rebuild them for the changes to take effect.&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;B&#34;&gt;&lt;/a&gt;&lt;/p&gt;
@ -343,7 +340,11 @@ QUEUE_HOST=beanstalkd
127.0.0.1 project-2.dev
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;5 - Visit &lt;code&gt;http://project-1.dev/&lt;/code&gt; and &lt;code&gt;http://project-2.dev/&lt;/code&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Now jump to the &lt;a href=&#34;#Usage&#34;&gt;Usage&lt;/a&gt; section.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a name=&#34;Usage&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;/h2&gt;
@ -364,28 +365,37 @@ QUEUE_HOST=beanstalkd
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;1 - Run Containers: &lt;em&gt;(Make sure you are in the &lt;code&gt;laradock&lt;/code&gt; folder before running the &lt;code&gt;docker-compose&lt;/code&gt; commands).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;1 - Enter the laradock folder and rename &lt;code&gt;env-example&lt;/code&gt; to &lt;code&gt;.env&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; Running NGINX and MySQL:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;cp env-example .env
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can edit the &lt;code&gt;.env&lt;/code&gt; file to chose which software&amp;rsquo;s you want to be installed in your environment. You can always refer to the &lt;code&gt;docker-compose.yml&lt;/code&gt; file to see how those variables are been used.&lt;/p&gt;
&lt;p&gt;2 - Build the enviroment and run it using &lt;code&gt;docker-compose&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;In this example we&amp;rsquo;ll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker-compose up -d nginx mysql
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: The &lt;code&gt;workspace&lt;/code&gt; and &lt;code&gt;php-fpm&lt;/code&gt; will run automatically in most of the cases, so no need to specify them in the &lt;code&gt;up&lt;/code&gt; command. If you couldn&amp;rsquo;t find them running then you need specify them as follow: &lt;code&gt;docker-compose up -d nginx php-fpm mysql workspace&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You can select your own combination of Containers form the list below:&lt;/p&gt;
&lt;p&gt;You can select your own combination of containers form the list below:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;nginx&lt;/code&gt;, &lt;code&gt;hhvm&lt;/code&gt;, &lt;code&gt;php-fpm&lt;/code&gt;, &lt;code&gt;mysql&lt;/code&gt;, &lt;code&gt;redis&lt;/code&gt;, &lt;code&gt;postgres&lt;/code&gt;, &lt;code&gt;mariadb&lt;/code&gt;, &lt;code&gt;neo4j&lt;/code&gt;, &lt;code&gt;mongo&lt;/code&gt;, &lt;code&gt;apache2&lt;/code&gt;, &lt;code&gt;caddy&lt;/code&gt;, &lt;code&gt;memcached&lt;/code&gt;, &lt;code&gt;beanstalkd&lt;/code&gt;, &lt;code&gt;beanstalkd-console&lt;/code&gt;, &lt;code&gt;rabbitmq&lt;/code&gt;, &lt;code&gt;beanstalkd-console&lt;/code&gt;, &lt;code&gt;workspace&lt;/code&gt;, &lt;code&gt;phpmyadmin&lt;/code&gt;, &lt;code&gt;aerospike&lt;/code&gt;, &lt;code&gt;pgadmin&lt;/code&gt;, &lt;code&gt;elasticsearch&lt;/code&gt;, &lt;code&gt;rethinkdb&lt;/code&gt;, &lt;code&gt;postgres-postgis&lt;/code&gt;, &lt;code&gt;certbot&lt;/code&gt;, &lt;code&gt;mailhog&lt;/code&gt;, &lt;code&gt;minio&lt;/code&gt; and more&amp;hellip;!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;(Please note that sometimes we forget to update the docs, so check the &lt;code&gt;docker-compose.yml&lt;/code&gt; file to see an updated list of all available containers).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &amp;hellip;).&lt;/p&gt;
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, &amp;hellip;)&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker-compose exec workspace bash
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively, for Windows PowerShell users: execute the following command to enter any running container:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Alternatively, for Windows PowerShell users: execute the following command to enter any running container:&lt;/em&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-bash&#34;&gt;docker exec -it {workspace-container-id} bash
&lt;/code&gt;&lt;/pre&gt;
@ -395,12 +405,12 @@ QUEUE_HOST=beanstalkd
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;docker-compose exec --user=laradock workspace bash
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;em&gt;You can change the PUID (User id) and PGID (group id) variables from the &lt;code&gt;docker-compose.yml&lt;/code&gt; or the &lt;code&gt;.env&lt;/code&gt;)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;You can change the PUID (User id) and PGID (group id) variables from the &lt;code&gt;.env&lt;/code&gt; file)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
3 - Edit your project configurations.&lt;/p&gt;
4 - Update your project configurations to use the database host&lt;/p&gt;
&lt;p&gt;Open your &lt;code&gt;.env&lt;/code&gt; file and set the &lt;code&gt;DB_HOST&lt;/code&gt; to &lt;code&gt;mysql&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;Open your PHP project&amp;rsquo;s &lt;code&gt;.env&lt;/code&gt; file or whichever configuration file you are reading from, and set the database host &lt;code&gt;DB_HOST&lt;/code&gt; to &lt;code&gt;mysql&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-env&#34;&gt;DB_HOST=mysql
&lt;/code&gt;&lt;/pre&gt;
@ -408,7 +418,7 @@ QUEUE_HOST=beanstalkd
&lt;p&gt;&lt;em&gt;If you want to install Laravel as PHP project, see &lt;a href=&#34;#Install-Laravel&#34;&gt;How to Install Laravel in a Docker Container&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
4 - Open your browser and visit your localhost address &lt;code&gt;http://localhost/&lt;/code&gt;.&lt;/p&gt;
5 - Open your browser and visit your localhost address &lt;code&gt;http://localhost/&lt;/code&gt;. If you followed the multiple projects setup, you can visit &lt;code&gt;http://project-1.dev/&lt;/code&gt; and &lt;code&gt;http://project-2.dev/&lt;/code&gt;. But first don&amp;rsquo;t&lt;/p&gt;
</description>
</item>

View File

@ -45,10 +45,11 @@ PHP_FPM_INSTALL_EXIF=false
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
PHP_FPM_INSTALL_MYSQLI=false
PHP_FPM_INSTALL_TOKENIZER=false
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/

2
nginx/sites/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.conf
!default.conf

View File

@ -192,6 +192,18 @@ RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
docker-php-ext-install tokenizer \
;fi
#####################################
# Human Language and Character Encoding Support:
#####################################
ARG INSTALL_INTL=false
RUN if [ ${INSTALL_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:
#####################################

View File

@ -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 <mahmoud@zalt.me>
@ -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

39
php-worker/Dockerfile Normal file
View File

@ -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/

View File

@ -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