This commit is contained in:
牟勇 2019-12-05 11:11:29 +08:00
commit ba23f41322
28 changed files with 910 additions and 267 deletions

View File

@ -0,0 +1,9 @@
{
"name": "Laradock",
"dockerComposeFile": ["../docker-compose.yml"],
"runServices": ["nginx", "postgres", "pgadmin"],
"service": "workspace",
"workspaceFolder": "/var/www",
"shutdownAction": "stopCompose",
"postCreateCommand": "uname -a"
}

91
.github/README.md vendored
View File

@ -1,91 +0,0 @@
<p align="center">
<img src="/.github/home-page-images/laradock-logo.jpg?raw=true" alt="Laradock Logo"/>
</p>
<p align="center">PHP development environment that runs on Docker</p>
<p align="center">
<a href="https://travis-ci.org/laradock/laradock"><img src="https://travis-ci.org/laradock/laradock.svg?branch=master" alt="Build status"></a>
<a href="https://github.com/laradock/laradock/stargazers"><a href="#backers" alt="sponsors on Open Collective"><img src="https://opencollective.com/laradock/backers/badge.svg" /></a> <a href="#sponsors" alt="Sponsors on Open Collective"><img src="https://opencollective.com/laradock/sponsors/badge.svg" /></a> <img src="https://img.shields.io/github/stars/laradock/laradock.svg" alt="GitHub stars"></a>
<a href="https://github.com/laradock/laradock/network"><img src="https://img.shields.io/github/forks/laradock/laradock.svg" alt="GitHub forks"></a>
<a href="https://github.com/laradock/laradock/issues"><img src="https://img.shields.io/github/issues/laradock/laradock.svg" alt="GitHub issues"></a>
<a href="https://raw.githubusercontent.com/laradock/laradock/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license"></a>
<a href="http://laradock.io/contributing"><img src="https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat" alt="contributions welcome"></a>
</p>
<h4 align="center" style="color:#7d58c2">Use Docker First - Then Learn About It Later</h4>
<p align="center">
<a href="http://zalt.me"><img src="http://forthebadge.com/images/badges/built-by-developers.svg" alt="forthebadge" width="240" ></a>
</p>
---
<p align="center">
<a href="http://laradock.io">
<img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/documentation-button.png" width=300px" alt="Laradock Docs"/>
</a>
</p>
## Sponsors
<a href="https://opencollective.com/laradock/sponsor/0/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/1/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/2/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/3/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/4/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/5/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/6/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/laradock/sponsor/7/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg"></a>
For basic sponsorships go to [Open Collective](https://opencollective.com/laradock#sponsor), for golden sponsorships contact <a href = "mailto: support@laradock.io">support@laradock.io</a>.
*Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page, with a link to your website.*
## People
#### Maintainers:
- [Mahmoud Zalt](https://github.com/Mahmoudz) @mahmoudz | [Twitter](https://twitter.com/Mahmoud_Zalt) | [Site](http://zalt.me)
- [Bo-Yi Wu](https://github.com/appleboy) @appleboy | [Twitter](https://twitter.com/appleboy)
- [Philippe Trépanier](https://github.com/philtrep) @philtrep
- [Mike Erickson](https://github.com/mikeerickson) @mikeerickson
- [Dwi Fahni Denni](https://github.com/zeroc0d3) @zeroc0d3
- [Thor Erik](https://github.com/thorerik) @thorerik
- [Winfried van Loon](https://github.com/winfried-van-loon) @winfried-van-loon
- [TJ Miller](https://github.com/sixlive) @sixlive
- [Yu-Lung Shao (Allen)](https://github.com/bestlong) @bestlong
- [Milan Urukalo](https://github.com/urukalo) @urukalo
- [Vince Chu](https://github.com/vwchu) @vwchu
- [Huadong Zuo](https://github.com/zuohuadong) @zuohuadong
- [Lan Phan](https://github.com/lanphan) @lanphan
- [Ahkui](https://github.com/ahkui) @ahkui
- Join us.
#### Awesome Contributors:
<a href="https://github.com/laradock/laradock/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890" /></a>
## Donations
> Help keeping the project development going, by [contributing](http://laradock.io/contributing) or donating a little.
> Thanks in advance.
Donate directly via [Paypal](https://paypal.me/mzmmzz)
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/mzmmzz)
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
[![Beerpay](https://beerpay.io/laradock/laradock/badge.svg?style=flat)](https://beerpay.io/laradock/laradock)
or become a backer on [Open Collective](https://opencollective.com/laradock#backer)
<a href="https://opencollective.com/laradock#backers" target="_blank"><img src="https://opencollective.com/laradock/backers.svg?width=890"></a>
## License
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE)

BIN
.github/home-page-images/join-us.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

3
.gitignore vendored
View File

@ -13,4 +13,7 @@
/nginx/ssl/*.key /nginx/ssl/*.key
/nginx/ssl/*.csr /nginx/ssl/*.csr
/.devcontainer/*
!/.devcontainer/devcontainer.example.json
.DS_Store .DS_Store

View File

@ -31,7 +31,7 @@ env:
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike" - PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"
- PHP_VERSION=NA BUILD_SERVICE="blackfire minio percona nginx caddy apache2 mysql mariadb postgres postgres-postgis neo4j mongo redis cassandra" - PHP_VERSION=NA BUILD_SERVICE="blackfire minio percona nginx caddy apache2 mysql mariadb postgres postgres-postgis neo4j mongo redis cassandra"
- PHP_VERSION=NA BUILD_SERVICE="adminer phpmyadmin pgadmin" - PHP_VERSION=NA BUILD_SERVICE="adminer phpmyadmin pgadmin"
- PHP_VERSION=NA BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 haproxy" - PHP_VERSION=NA BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 haproxy gearman"
- PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server" - PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server"
- PHP_VERSION=NA BUILD_SERVICE="ipython-controller manticore" - PHP_VERSION=NA BUILD_SERVICE="ipython-controller manticore"
# - PHP_VERSION=NA BUILD_SERVICE="aws" # - PHP_VERSION=NA BUILD_SERVICE="aws"

View File

@ -26,7 +26,7 @@ googleAnalytics = "UA-37514928-9"
permalink = "#" permalink = "#"
# Custom assets # Custom assets
custom_css = [] custom_css = ["custom-style.css"]
custom_js = [] custom_js = []
# Syntax highlighting theme # Syntax highlighting theme

View File

@ -76,7 +76,7 @@ docker-compose exec mysql bash
*Example: enter to MySQL prompt within MySQL container* *Example: enter to MySQL prompt within MySQL container*
```bash ```bash
docker-compose exec mysql mysql -u homestead -psecret docker-compose exec mysql mysql -udefault -psecret
``` ```
3 - To exit a container, type `exit`. 3 - To exit a container, type `exit`.
@ -250,7 +250,6 @@ docker-compose build php-fpm
<br> <br>
<a name="Change-the-PHP-CLI-Version"></a> <a name="Change-the-PHP-CLI-Version"></a>
## Change the PHP-CLI Version ## Change the PHP-CLI Version
By default **PHP-CLI 7.0** is running.
>Note: it's not very essential to edit the PHP-CLI version. The PHP-CLI is only used for the Artisan Commands & Composer. It doesn't serve your Application code, this is the PHP-FPM job. >Note: it's not very essential to edit the PHP-CLI version. The PHP-CLI is only used for the Artisan Commands & Composer. It doesn't serve your Application code, this is the PHP-FPM job.
@ -537,7 +536,7 @@ Note: Should add `--user=laradock` (example `docker-compose exec --user=laradock
php artisan php artisan
``` ```
```bash ```bash
Composer update composer update
``` ```
```bash ```bash
phpunit phpunit
@ -651,7 +650,7 @@ docker-compose up -d metabase
1) Boot the container `docker-compose up -d jenkins`. To enter the container type `docker-compose exec jenkins bash`. 1) Boot the container `docker-compose up -d jenkins`. To enter the container type `docker-compose exec jenkins bash`.
2) Go to `http://localhost:8090/` (if you didn't chanhed your default port mapping) 2) Go to `http://localhost:8090/` (if you didn't change your default port mapping)
3) Authenticate from the web app. 3) Authenticate from the web app.
@ -1045,6 +1044,7 @@ _Note: You can customize the port on which beanstalkd console is listening by ch
<br> <br>
<a name="Use-Confluence"></a> <a name="Use-Confluence"></a>
## Use Confluence ## Use Confluence
1 - Run the Confluence Container (`confluence`) with the `docker-compose up` command. Example: 1 - Run the Confluence Container (`confluence`) with the `docker-compose up` command. Example:
@ -1055,10 +1055,19 @@ docker-compose up -d confluence
2 - Open your browser and visit the localhost on port **8090**: `http://localhost:8090` 2 - Open your browser and visit the localhost on port **8090**: `http://localhost:8090`
**Note:** You can you trial version and then you have to buy a licence to use it. **Note:** Confluence is a licensed application - an evaluation licence can be obtained from Atlassian.
You can set custom confluence version in `CONFLUENCE_VERSION`. [Find more info in section 'Versioning'](https://hub.docker.com/r/atlassian/confluence-server/) You can set custom confluence version in `CONFLUENCE_VERSION`. [Find more info in section 'Versioning'](https://hub.docker.com/r/atlassian/confluence-server/)
##### Confluence usage with Nginx and SSL.
1. Find an instance configuration file in `nginx/sites/confluence.conf.example` and replace sample domain with yours.
2. Configure ssl keys to your domain.
Keep in mind that Confluence is still accessible on 8090 anyway.
<br> <br>
<a name="Use-ElasticSearch"></a> <a name="Use-ElasticSearch"></a>
## Use ElasticSearch ## Use ElasticSearch
@ -1576,7 +1585,7 @@ The default username and password for the root MySQL user are `root` and `root `
1 - Enter the MySQL container: `docker-compose exec mysql bash`. 1 - Enter the MySQL container: `docker-compose exec mysql bash`.
2 - Enter mysql: `mysql -uroot -proot` for non root access use `mysql -uhomestead -psecret`. 2 - Enter mysql: `mysql -uroot -proot` for non root access use `mysql -udefault -psecret`.
3 - See all users: `SELECT User FROM mysql.user;` 3 - See all users: `SELECT User FROM mysql.user;`
@ -1866,6 +1875,27 @@ To install GNU Parallel in the Workspace container
<br>
<a name="Install-Supervisor"></a>
## Install Supervisor
Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.
(see http://supervisord.org/index.html)
To install Supervisor in the Workspace container
1 - Open the `.env` file
2 - Set `WORKSPACE_INSTALL_SUPERVISOR` and `WORKSPACE_INSTALL_PYTHON` to `true`.
3 - Re-build the container `docker-compose build workspace` Or `docker-composer up --build -d workspace`
<br> <br>
<a name="Common-Aliases"></a> <a name="Common-Aliases"></a>
<br> <br>

View File

@ -70,6 +70,16 @@ If you want to only execute some command and don't want to enter bash, you can e
docker-compose run workspace php artisan migrate docker-compose run workspace php artisan migrate
``` ```
### Prepare for Visual Studio Code remote development
If you want to use Visual Studio Code for [remote development](https://code.visualstudio.com/docs/remote/containers) directly on your `workspace` container, copy file `devcontainer.example.json` to `devcontainer.json` and customize it (see [devcontainer.json reference](https://code.visualstudio.com/docs/remote/containers#_devcontainerjson-reference) for more options):
```
cd .devcontainer
cp devcontainer.example.json devcontainer.json
```
Then open your `laradock` folder in Visual Studio Code and click on popup button **Reopen in Container**.
### Install and configure Laravel ### Install and configure Laravel
Let's install Laravel's dependencies, add the `.env` file, generate the key and give proper permissions to the cache folder. Let's install Laravel's dependencies, add the `.env` file, generate the key and give proper permissions to the cache folder.
@ -345,7 +355,7 @@ You could choose to use either:
1. Chrome Driver shipped with Laravel Dusk. (Default) 1. Chrome Driver shipped with Laravel Dusk. (Default)
2. Chrome Driver installed in `workspace` container. (Required tweak on DuskTestCase class) 2. Chrome Driver installed in `workspace` container. (Required tweak on DuskTestCase class)
For Laravel 2.x, you need to update `DuskTestCase#prepare` method if you wish to go with option #2. For Laravel Dusk 2.x, you need to update `DuskTestCase#prepare` method if you wish to go with option #2.
``` ```
@ -365,7 +375,7 @@ abstract class DuskTestCase extends BaseTestCase
} }
``` ```
For Laravel 1.x, you need to add `DuskTestCase#buildChromeProcess` method if you wish to go with option #2. For Laravel Dusk 1.x, you need to add `DuskTestCase#buildChromeProcess` method if you wish to go with option #2.
``` ```
<?php <?php

View File

@ -4,34 +4,97 @@ type: index
weight: 1 weight: 1
--- ---
<b>Laradock is a full PHP development environment based on Docker.</b>
## Use Docker First - Then Learn About It Later Supporting a variety of common services, all pre-configured to provide a full PHP development environment.
Laradock is a PHP development environment that runs on Docker.
Supports a variety of useful Docker Images, pre-configured to provide a wonderful PHP development environment.
![](https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/laradock-logo.jpg) <a name="features"></a>
## Features
- Easy switch between PHP versions: 7.4, 7.3, 7.2, 7.1, 5.6...
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
- Run your own stack: Memcached, HHVM, RabbitMQ...
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
- Easy to customize any container, with simple edit to the `Dockerfile`.
- All Images extends from an official base Image. (Trusted base Images).
- Pre-configured NGINX to host any code at your root directory.
- Can use Laradock per project, or single Laradock for all projects.
- Easy to install/remove software's in Containers using environment variables.
- Clean and well structured Dockerfiles (`Dockerfile`).
- Latest version of the Docker Compose file (`docker-compose`).
- Everything is visible and editable.
- Fast Images Builds.
<br>
---
### Use Docker First - Then Learn About It Later</q>
---
<a name="sponsors"></a> <a name="sponsors"></a>
## Sponsors ## Sponsors
<a href="https://opencollective.com/laradock/sponsor/0/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/1/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/2/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/3/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/3/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/4/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/4/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/5/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/5/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/6/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/6/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/7/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg"></a> <a href="https://opencollective.com/laradock/sponsor/7/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/8/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/9/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/10/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/10/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/11/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/11/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/12/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/12/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/13/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/13/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/14/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/14/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/15/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/15/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/16/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/16/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/17/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/17/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/18/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/18/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/19/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/19/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/20/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/20/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/21/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/21/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/22/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/22/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/23/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/23/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/24/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/24/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/25/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/25/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/26/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/26/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/27/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/27/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/28/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/28/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/29/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/29/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/30/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/30/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/31/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/31/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/32/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/32/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/33/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/33/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/34/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/34/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/35/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/35/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/36/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/36/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/37/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/37/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/38/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/38/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/39/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/39/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/40/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/40/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/41/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/41/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/42/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/42/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/43/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/43/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/44/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/44/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/45/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/45/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/46/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/46/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/47/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/47/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/48/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/48/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/49/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/49/avatar.svg?requireActive=false"></a>
For basic sponsorships go to [Open Collective](https://opencollective.com/laradock#sponsor), for golden sponsorships contact <a href = "mailto: support@laradock.io">support@laradock.io</a>. Support Laradock with your [organization](https://opencollective.com/laradock/contribute/).
<br> <br>
*Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page, with a link to your website.* Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page.
<br>
For more info contact <a href = "mailto: support@laradock.io">support@laradock.io</a>.
<br>
## Quick Overview ## Quick Overview
@ -72,25 +135,6 @@ That's it! enjoy :)
<a name="features"></a>
## Features
- Easy switch between PHP versions: 7.3, 7.2, 7.1, 5.6...
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
- Run your own stack: Memcached, HHVM, RabbitMQ...
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
- Easy to customize any container, with simple edit to the `Dockerfile`.
- All Images extends from an official base Image. (Trusted base Images).
- Pre-configured NGINX to host any code at your root directory.
- Can use Laradock per project, or single Laradock for all projects.
- Easy to install/remove software's in Containers using environment variables.
- Clean and well structured Dockerfiles (`Dockerfile`).
- Latest version of the Docker Compose file (`docker-compose`).
- Everything is visible and editable.
- Fast Images Builds.
<a name="Supported-Containers"></a> <a name="Supported-Containers"></a>
## Supported Software (Docker Images) ## Supported Software (Docker Images)
@ -149,6 +193,7 @@ That's it! enjoy :)
- Eclipse Mosquitto - Eclipse Mosquitto
- PHP Worker - PHP Worker
- Laravel Horizon - Laravel Horizon
- Gearman
- **Mail Servers:** - **Mail Servers:**
- Mailu - Mailu
@ -223,49 +268,7 @@ You can choose, which tools to install in your workspace container and other con
*If you can't find your Software in the list, build it yourself and submit it. Contributions are welcomed :)* *If you can't find your Software in the list, build it yourself and submit it. Contributions are welcomed :)*
---
<a name="what-is-docker"></a>
## What is Docker?
[Docker](https://www.docker.com) is an open platform for developing, shipping, and running applications.
Docker enables you to separate your applications from your infrastructure so you can deliver software quickly.
With Docker, you can manage your infrastructure in the same ways you manage your applications.
By taking advantage of Dockers methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production.
<a name="why-docker-not-vagrant"></a>
## Why Docker not Vagrant!?
[Vagrant](https://www.vagrantup.com) creates Virtual Machines in minutes while Docker creates Virtual Containers in seconds.
Instead of providing a full Virtual Machines, like you get with Vagrant, Docker provides you **lightweight** Virtual Containers, that share the same kernel and allow to safely execute independent processes.
In addition to the speed, Docker gives tons of features that cannot be achieved with Vagrant.
Most importantly Docker can run on Development and on Production (same environment everywhere). While Vagrant is designed for Development only, (so you have to re-provision your server on Production every time).
<a name="Demo"></a>
## Demo Video
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)
@ -276,24 +279,147 @@ 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)
---
Laradock exists thanks to all the people who contribute.
## Project Maintainers
<table>
<tbody>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/mahmoudz.png?s=150">
<br>
<strong>Mahmoud Zalt</strong>
<br>
<a href="https://github.com/Mahmoudz">@mahmoudz</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/appleboy.png?s=150">
<br>
<strong>Bo-Yi Wu</strong>
<br>
<a href="https://github.com/Mahmoudz">@appleboy</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/philtrep.png?s=150">
<br>
<strong>Philippe Trépanier</strong>
<br>
<a href="https://github.com/Mahmoudz">@philtrep</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/mikeerickson.png?s=150">
<br>
<strong>Mike Erickson</strong>
<br>
<a href="https://github.com/Mahmoudz">@mikeerickson</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/zeroc0d3.png?s=150">
<br>
<strong>Dwi Fahni Denni</strong>
<br>
<a href="https://github.com/Mahmoudz">@zeroc0d3</a>
</td>
</tr>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/thorerik.png?s=150">
<br>
<strong>Thor Erik</strong>
<br>
<a href="https://github.com/Mahmoudz">@thorerik</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/winfried-van-loon.png?s=150">
<br>
<strong>Winfried van Loon</strong>
<br>
<a href="https://github.com/Mahmoudz">@winfried-van-loon</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/sixlive.png?s=150">
<br>
<strong>TJ Miller</strong>
<br>
<a href="https://github.com/Mahmoudz">@sixlive</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/bestlong.png?s=150">
<br>
<strong>Yu-Lung Shao (Allen)</strong>
<br>
<a href="https://github.com/Mahmoudz">@bestlong</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/urukalo.png?s=150">
<br>
<strong>Milan Urukalo</strong>
<br>
<a href="https://github.com/Mahmoudz">@urukalo</a>
</td>
</tr>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/vwchu.png?s=150">
<br>
<strong>Vince Chu</strong>
<br>
<a href="https://github.com/Mahmoudz">@vwchu</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/zuohuadong.png?s=150">
<br>
<strong>Huadong Zuo</strong>
<br>
<a href="https://github.com/Mahmoudz">@zuohuadong</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/lanphan.png?s=150">
<br>
<strong>Lan Phan</strong>
<br>
<a href="https://github.com/Mahmoudz">@lanphan</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/ahkui.png?s=150">
<br>
<strong>Ahkui</strong>
<br>
<a href="https://github.com/Mahmoudz">@ahkui</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/join-us.png">
<br>
<strong>< Join Us ></strong>
<br>
<a href="https://github.com/laradock">@laradock</a>
</td>
</tr>
</tbody>
</table>
## Code Contributors
<a href="https://github.com/undefined/undefined/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890&button=false" /></a>
---
<a name="Donations"></a> <a name="Donations"></a>
## Donations ## Financial Contributors
> Help keeping the project development going, by [contributing](http://laradock.io/contributing) or donating a little. Contribute and help us sustain the project.
> Thanks in advance.
Donate directly via [Paypal](https://paypal.me/mzmmzz) <b>Option 1:</b> Donate directly to [Paypal](https://paypal.me/mzmmzz).
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/mzmmzz) [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/mzmmzz)
or show your support via [Beerpay](https://beerpay.io/laradock/laradock) <b>Option 2:</b> Support us via [BeerPay](https://beerpay.io/laradock/laradock).
[![Beerpay](https://beerpay.io/laradock/laradock/badge.svg?style=flat)](https://beerpay.io/laradock/laradock) [![Beerpay](https://beerpay.io/laradock/laradock/badge.svg?style=flat)](https://beerpay.io/laradock/laradock)
or become a backer on [Open Collective](https://opencollective.com/laradock#backer) <b>Option 3:</b> Become a backer on [Open Collective](https://opencollective.com/laradock/contribute).
<a href="https://opencollective.com/laradock#backers" target="_blank"><img src="https://opencollective.com/laradock/backers.svg?width=890"></a> <a href="https://opencollective.com/laradock"><img src="https://opencollective.com/laradock/backer.svg?width=890"></a>

View File

@ -0,0 +1,30 @@
/* Custom CSS */
.article a {
border-bottom: none;
}
.project .logo {
width: 200px;
padding-right: 0;
}
.project .banner {
height: 70px;
padding: 25px;
}
.palette-primary-deep-purple .article h1{
color: #7e57c2;
font-size: 35px;
}
.palette-primary-deep-purple .article h2{
color: #ce2046;
font-size: 25px;
}
.palette-primary-deep-purple .article h3{
color: #851d54;
font-size: 18px;
}
.palette-primary-deep-purple .article code{
color: #851d54;
background: #eeeeeea8;
}

View File

@ -1,8 +1,8 @@
{{ partial "head" . }} {{ partial "head" . }}
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }} {{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
{{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}} {{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}}
{{ .Scratch.Set "repo_id" $repo_id }} {{ .Scratch.Set "repo_id" $repo_id }}
{{ end }} {{ end }}
<div class="backdrop"> <div class="backdrop">
@ -25,26 +25,32 @@
<article class="article"> <article class="article">
<div class="wrapper"> <div class="wrapper">
<!-- Wrapper arround google ads for seedanddew --> <!-- Wrapper arround google ads for seedanddew -->
<div class='snd-ad'> <div class='snd-ad'>
<!-- ------------------------------------------------------------------------- --> <!-- ------------------------------------------------------------------------- -->
<!-- Google Ads --> <!-- Google Ads -->
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- Laradock Horizontal --> <!-- Laradock Horizontal -->
<ins class="adsbygoogle" <ins class="adsbygoogle"
style="display:inline-block;width:890px;height:100px" style="display:inline-block;width:890px;height:100px"
data-ad-client="ca-pub-9826129398689742" data-ad-client="ca-pub-9826129398689742"
data-ad-slot="2340256024"></ins> data-ad-slot="2340256024"></ins>
<script> <script>
(adsbygoogle = window.adsbygoogle || []).push({}); (adsbygoogle = window.adsbygoogle || []).push({});
</script> </script>
<!-- ------------------------------------------------------------------------- --> <!-- ------------------------------------------------------------------------- -->
</div> </div>
<br><br><br>
<img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/laradock-logo.jpg" alt="laradock logo">
{{ range where .Site.Pages "Type" "index" }} {{ range where .Site.Pages "Type" "index" }}
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1> <br><br><br><br><br><br>
<hr>
<br>
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
{{ .Content }} {{ .Content }}
{{ end }} {{ end }}
<aside class="copyright" role="note"> <aside class="copyright" role="note">
@ -55,8 +61,8 @@
<a href="https://www.gohugo.io" target="_blank">Hugo</a> <a href="https://www.gohugo.io" target="_blank">Hugo</a>
using the using the
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme, <a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme,
by by
<a href="https://zalt.me">Mahmoud Zalt</a>. <a href="https://zalt.me">Mahmoud Zalt</a>.
</aside> </aside>
<footer class="footer"> <footer class="footer">

View File

@ -5,7 +5,7 @@
<div class="logo"> <div class="logo">
<img src="{{ $.Site.BaseURL }}{{ . }}"> <img src="{{ $.Site.BaseURL }}{{ . }}">
</div> </div>
Laradock
{{ end }} {{ end }}
<!--<div class="name">--> <!--<div class="name">-->
<!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>--> <!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>-->

238
README.md Normal file
View File

@ -0,0 +1,238 @@
<p align="center">
<img src="/.github/home-page-images/laradock-logo.jpg?raw=true" alt="Laradock Logo"/>
</p>
---
<p align="center"><b>Full PHP development environment based on Docker.</b></p>
<p align="center">Supporting a variety of common services, all pre-configured to provide a full PHP development environment.</p>
<p align="center">
<a href="http://laradock.io/contributing"><img src="https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat" alt="contributions welcome"></a>
<a href="https://github.com/laradock/laradock/network"><img src="https://img.shields.io/github/forks/laradock/laradock.svg" alt="GitHub forks"></a>
<a href="https://github.com/laradock/laradock/issues"><img src="https://img.shields.io/github/issues/laradock/laradock.svg" alt="GitHub issues"></a>
<a href="https://github.com/laradock/laradock/stargazers"><a href="#backers" alt="sponsors on Open Collective"><img src="https://opencollective.com/laradock/backers/badge.svg" /></a> <a href="#sponsors" alt="Sponsors on Open Collective"><img src="https://opencollective.com/laradock/sponsors/badge.svg" /></a> <img src="https://img.shields.io/github/stars/laradock/laradock.svg" alt="GitHub stars"></a>
<a href="https://travis-ci.org/laradock/laradock"><img src="https://travis-ci.org/laradock/laradock.svg?branch=master" alt="Build status"></a>
<a href="https://raw.githubusercontent.com/laradock/laradock/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license"></a>
</p>
<p align="center">
<a href="http://zalt.me"><img src="http://forthebadge.com/images/badges/built-by-developers.svg" alt="forthebadge" width="240"></a>
</p>
<h4 align="center" style="color:#7d58c2">Use Docker First - Then Learn About It Later</h4>
<p align="center">
<a href="http://laradock.io">
<img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/documentation-button.png" width="300px" alt="Laradock Documentation"/>
</a>
</p>
---
## Awesome People
Laradock exists thanks to all the people who contribute.
### Project Maintainers
<table>
<tbody>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/mahmoudz.png?s=150">
<br>
<strong>Mahmoud Zalt</strong>
<br>
<a href="https://github.com/Mahmoudz">@mahmoudz</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/appleboy.png?s=150">
<br>
<strong>Bo-Yi Wu</strong>
<br>
<a href="https://github.com/appleboy">@appleboy</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/philtrep.png?s=150">
<br>
<strong>Philippe Trépanier</strong>
<br>
<a href="https://github.com/philtrep">@philtrep</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/mikeerickson.png?s=150">
<br>
<strong>Mike Erickson</strong>
<br>
<a href="https://github.com/mikeerickson">@mikeerickson</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/zeroc0d3.png?s=150">
<br>
<strong>Dwi Fahni Denni</strong>
<br>
<a href="https://github.com/zeroc0d3">@zeroc0d3</a>
</td>
</tr>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/thorerik.png?s=150">
<br>
<strong>Thor Erik</strong>
<br>
<a href="https://github.com/thorerik">@thorerik</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/winfried-van-loon.png?s=150">
<br>
<strong>Winfried van Loon</strong>
<br>
<a href="https://github.com/winfried-van-loon">@winfried-van-loon</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/sixlive.png?s=150">
<br>
<strong>TJ Miller</strong>
<br>
<a href="https://github.com/sixlive">@sixlive</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/bestlong.png?s=150">
<br>
<strong>Yu-Lung Shao (Allen)</strong>
<br>
<a href="https://github.com/bestlong">@bestlong</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/urukalo.png?s=150">
<br>
<strong>Milan Urukalo</strong>
<br>
<a href="https://github.com/urukalo">@urukalo</a>
</td>
</tr>
<tr>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/vwchu.png?s=150">
<br>
<strong>Vince Chu</strong>
<br>
<a href="https://github.com/vwchu">@vwchu</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/zuohuadong.png?s=150">
<br>
<strong>Huadong Zuo</strong>
<br>
<a href="https://github.com/zuohuadong">@zuohuadong</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/lanphan.png?s=150">
<br>
<strong>Lan Phan</strong>
<br>
<a href="https://github.com/lanphan">@lanphan</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://github.com/ahkui.png?s=150">
<br>
<strong>Ahkui</strong>
<br>
<a href="https://github.com/ahkui">@ahkui</a>
</td>
<td align="center" valign="top">
<img width="125" height="125" src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/join-us.png">
<br>
<strong>< Join Us ></strong>
<br>
<a href="https://github.com/laradock">@laradock</a>
</td>
</tr>
</tbody>
</table>
### Code Contributors
<a href="https://github.com/undefined/undefined/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890&button=false" /></a>
### Financial Contributors
Contribute and help us sustain the project.
<b>Option 1:</b> Donate directly to [Paypal](https://paypal.me/mzmmzz).
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/mzmmzz)
<b>Option 2:</b> Support us via [BeerPay](https://beerpay.io/laradock/laradock).
[![Beerpay](https://beerpay.io/laradock/laradock/badge.svg?style=flat)](https://beerpay.io/laradock/laradock)
<b>Option 3:</b> Become a backer on [Open Collective](https://opencollective.com/laradock/contribute).
<a href="https://opencollective.com/laradock"><img src="https://opencollective.com/laradock/backer.svg?width=890"></a>
## Sponsors
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/3/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/4/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/5/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/6/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/7/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/8/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/9/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/10/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/10/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/11/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/11/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/12/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/12/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/13/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/13/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/14/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/14/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/15/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/15/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/16/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/16/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/17/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/17/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/18/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/18/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/19/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/19/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/20/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/20/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/21/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/21/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/22/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/22/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/23/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/23/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/24/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/24/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/25/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/25/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/26/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/26/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/27/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/27/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/28/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/28/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/29/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/29/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/30/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/30/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/31/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/31/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/32/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/32/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/33/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/33/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/34/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/34/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/35/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/35/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/36/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/36/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/37/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/37/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/38/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/38/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/39/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/39/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/40/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/40/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/41/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/41/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/42/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/42/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/43/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/43/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/44/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/44/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/45/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/45/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/46/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/46/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/47/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/47/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/48/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/48/avatar.svg?requireActive=false"></a>
<a href="https://opencollective.com/laradock/sponsor/49/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/49/avatar.svg?requireActive=false"></a>
Support Laradock with your [organization](https://opencollective.com/laradock/contribute/).
<br>
Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page.
<br>
For more info contact <a href = "mailto: support@laradock.io">support@laradock.io</a>.
## License
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE)

View File

@ -47,6 +47,10 @@ volumes:
driver: ${VOLUMES_DRIVER} driver: ${VOLUMES_DRIVER}
cassandra: cassandra:
driver: ${VOLUMES_DRIVER} driver: ${VOLUMES_DRIVER}
graylog:
driver: ${VOLUMES_DRIVER}
dind:
driver: ${VOLUMES_DRIVER}
services: services:
@ -71,6 +75,7 @@ services:
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO} - INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP} - INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
- INSTALL_CASSANDRA=${WORKSPACE_INSTALL_CASSANDRA} - INSTALL_CASSANDRA=${WORKSPACE_INSTALL_CASSANDRA}
- INSTALL_GEARMAN=${WORKSPACE_INSTALL_GEARMAN}
- INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS} - INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS}
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL} - INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE} - INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
@ -110,6 +115,8 @@ services:
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT} - INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
- INSTALL_PING=${WORKSPACE_INSTALL_PING} - INSTALL_PING=${WORKSPACE_INSTALL_PING}
- INSTALL_SSHPASS=${WORKSPACE_INSTALL_SSHPASS} - INSTALL_SSHPASS=${WORKSPACE_INSTALL_SSHPASS}
- INSTALL_YAML=${WORKSPACE_INSTALL_YAML}
- INSTALL_MAILPARSE=${WORKSPACE_INSTALL_MAILPARSE}
- PUID=${WORKSPACE_PUID} - PUID=${WORKSPACE_PUID}
- PGID=${WORKSPACE_PGID} - PGID=${WORKSPACE_PGID}
- CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION} - CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION}
@ -120,6 +127,7 @@ services:
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID} - BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN} - BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
- INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE} - INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE}
- INSTALL_SUPERVISOR=${WORKSPACE_INSTALL_SUPERVISOR}
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG} - INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL} - INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
- http_proxy - http_proxy
@ -127,7 +135,7 @@ services:
- no_proxy - no_proxy
volumes: volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG} - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- "./workspace/crontab/laradock:/etc/cron.d/laradock" - ./php-worker/supervisord.d:/etc/supervisord.d
extra_hosts: extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}" - "dockerhost:${DOCKER_HOST_IP}"
ports: ports:
@ -160,6 +168,7 @@ services:
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO} - INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP} - INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
- INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA} - INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
- INSTALL_GEARMAN=${PHP_FPM_INSTALL_GEARMAN}
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL} - INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH} - INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
- INSTALL_GMP=${PHP_FPM_INSTALL_GMP} - INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
@ -190,9 +199,13 @@ services:
- INSTALL_MYSQL_CLIENT=${PHP_FPM_INSTALL_MYSQL_CLIENT} - INSTALL_MYSQL_CLIENT=${PHP_FPM_INSTALL_MYSQL_CLIENT}
- INSTALL_PING=${PHP_FPM_INSTALL_PING} - INSTALL_PING=${PHP_FPM_INSTALL_PING}
- INSTALL_SSHPASS=${PHP_FPM_INSTALL_SSHPASS} - INSTALL_SSHPASS=${PHP_FPM_INSTALL_SSHPASS}
- INSTALL_MAILPARSE=${PHP_FPM_INSTALL_MAILPARSE}
- INSTALL_PCNTL=${PHP_FPM_INSTALL_PCNTL}
- ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES} - ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES}
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG} - INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF} - INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
- PUID=${PHP_FPM_PUID}
- PGID=${PHP_FPM_PGID}
- http_proxy - http_proxy
- https_proxy - https_proxy
- no_proxy - no_proxy
@ -231,11 +244,13 @@ services:
- INSTALL_MYSQL_CLIENT=${PHP_WORKER_INSTALL_MYSQL_CLIENT} - INSTALL_MYSQL_CLIENT=${PHP_WORKER_INSTALL_MYSQL_CLIENT}
- INSTALL_AMQP=${PHP_WORKER_INSTALL_AMQP} - INSTALL_AMQP=${PHP_WORKER_INSTALL_AMQP}
- INSTALL_CASSANDRA=${PHP_WORKER_INSTALL_CASSANDRA} - INSTALL_CASSANDRA=${PHP_WORKER_INSTALL_CASSANDRA}
- INSTALL_GEARMAN=${PHP_WORKER_INSTALL_GEARMAN}
- INSTALL_GHOSTSCRIPT=${PHP_WORKER_INSTALL_GHOSTSCRIPT} - INSTALL_GHOSTSCRIPT=${PHP_WORKER_INSTALL_GHOSTSCRIPT}
- INSTALL_SWOOLE=${PHP_WORKER_INSTALL_SWOOLE} - INSTALL_SWOOLE=${PHP_WORKER_INSTALL_SWOOLE}
- INSTALL_TAINT=${PHP_WORKER_INSTALL_TAINT} - INSTALL_TAINT=${PHP_WORKER_INSTALL_TAINT}
- INSTALL_FFMPEG=${PHP_WORKER_INSTALL_FFMPEG} - INSTALL_FFMPEG=${PHP_WORKER_INSTALL_FFMPEG}
- INSTALL_GMP=${PHP_WORKER_INSTALL_GMP} - INSTALL_GMP=${PHP_WORKER_INSTALL_GMP}
- INSTALL_REDIS=${PHP_WORKER_INSTALL_REDIS}
- PUID=${PHP_WORKER_PUID} - PUID=${PHP_WORKER_PUID}
- PGID=${PHP_WORKER_PGID} - PGID=${PHP_WORKER_PGID}
volumes: volumes:
@ -258,6 +273,8 @@ services:
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED} - INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
- INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS} - INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS}
- INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA} - INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
- INSTALL_PHPREDIS=${LARAVEL_HORIZON_INSTALL_PHPREDIS}
- INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
volumes: volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER} - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
- ./laravel-horizon/supervisord.d:/etc/supervisord.d - ./laravel-horizon/supervisord.d:/etc/supervisord.d
@ -495,6 +512,7 @@ services:
- "${MONGODB_PORT}:27017" - "${MONGODB_PORT}:27017"
volumes: volumes:
- ${DATA_PATH_HOST}/mongo:/data/db - ${DATA_PATH_HOST}/mongo:/data/db
- ${DATA_PATH_HOST}/mongo_config:/data/configdb
networks: networks:
- backend - backend
@ -629,6 +647,39 @@ services:
networks: networks:
- backend - backend
### Gearman ############################################
gearman:
build: ./gearman
ports:
- "${GEARMAN_PORT}:4730"
privileged: true
environment:
- GEARMAN_VERSION=${GEARMAN_VERSION}
- GEARMAN_VERBOSE=${GEARMAN_VERBOSE}
- GEARMAN_QUEUE_TYPE=${GEARMAN_QUEUE_TYPE}
- GEARMAN_THREADS=${GEARMAN_THREADS}
- GEARMAN_BACKLOG=${GEARMAN_BACKLOG}
- GEARMAN_FILE_DESCRIPTORS=${GEARMAN_FILE_DESCRIPTORS}
- GEARMAN_JOB_RETRIES=${GEARMAN_JOB_RETRIES}
- GEARMAN_ROUND_ROBIN=${GEARMAN_ROUND_ROBIN}
- GEARMAN_WORKER_WAKEUP=${GEARMAN_WORKER_WAKEUP}
- GEARMAN_KEEPALIVE=${GEARMAN_KEEPALIVE}
- GEARMAN_KEEPALIVE_IDLE=${GEARMAN_KEEPALIVE_IDLE}
- GEARMAN_KEEPALIVE_INTERVAL=${GEARMAN_KEEPALIVE_INTERVAL}
- GEARMAN_KEEPALIVE_COUNT=${GEARMAN_KEEPALIVE_COUNT}
- GEARMAN_MYSQL_HOST=${GEARMAN_MYSQL_HOST}
- GEARMAN_MYSQL_PORT=${GEARMAN_MYSQL_PORT}
- GEARMAN_MYSQL_USER=${GEARMAN_MYSQL_USER}
- GEARMAN_MYSQL_PASSWORD=${GEARMAN_MYSQL_PASSWORD}
- GEARMAN_MYSQL_PASSWORD_FILE=${GEARMAN_MYSQL_PASSWORD_FILE}
- GEARMAN_MYSQL_DB=${GEARMAN_MYSQL_DB}
- GEARMAN_MYSQL_TABLE=${GEARMAN_MYSQL_TABLE}
hostname: laradock-gearman
depends_on:
- php-fpm
networks:
- backend
### Beanstalkd Console ################################### ### Beanstalkd Console ###################################
beanstalkd-console: beanstalkd-console:
build: ./beanstalkd-console build: ./beanstalkd-console
@ -895,9 +946,9 @@ services:
- ${GRAYLOG_GELF_TCP_PORT}:12201 - ${GRAYLOG_GELF_TCP_PORT}:12201
# GELF UDP # GELF UDP
- ${GRAYLOG_GELF_UDP_PORT}:12201/udp - ${GRAYLOG_GELF_UDP_PORT}:12201/udp
user: root user: graylog
volumes: volumes:
- ./graylog/config:/usr/share/graylog/data/config - ${DATA_PATH_HOST}/graylog:/usr/share/graylog/data
networks: networks:
- backend - backend
@ -1177,6 +1228,7 @@ services:
privileged: true privileged: true
volumes: volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER} - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
- ${DATA_PATH_HOST}/dind:/var/lib/docker
expose: expose:
- 2375 - 2375
networks: networks:

View File

@ -37,8 +37,9 @@ COMPOSE_PROJECT_NAME=laradock
### PHP Version ########################################### ### PHP Version ###########################################
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 7.3 - 7.2 - 7.1 - 7.0 - 5.6 # Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).
PHP_VERSION=7.2 # Accepted values: 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
PHP_VERSION=7.3
### Phalcon Version ########################################### ### Phalcon Version ###########################################
@ -107,6 +108,7 @@ WORKSPACE_INSTALL_IMAP=false
WORKSPACE_INSTALL_MONGO=false WORKSPACE_INSTALL_MONGO=false
WORKSPACE_INSTALL_AMQP=false WORKSPACE_INSTALL_AMQP=false
WORKSPACE_INSTALL_CASSANDRA=false WORKSPACE_INSTALL_CASSANDRA=false
WORKSPACE_INSTALL_GEARMAN=false
WORKSPACE_INSTALL_MSSQL=false WORKSPACE_INSTALL_MSSQL=false
WORKSPACE_INSTALL_DRUSH=false WORKSPACE_INSTALL_DRUSH=false
WORKSPACE_DRUSH_VERSION=8.1.17 WORKSPACE_DRUSH_VERSION=8.1.17
@ -123,6 +125,7 @@ WORKSPACE_INSTALL_MC=false
WORKSPACE_INSTALL_SYMFONY=false WORKSPACE_INSTALL_SYMFONY=false
WORKSPACE_INSTALL_PYTHON=false WORKSPACE_INSTALL_PYTHON=false
WORKSPACE_INSTALL_POWERLINE=false WORKSPACE_INSTALL_POWERLINE=false
WORKSPACE_INSTALL_SUPERVISOR=false
WORKSPACE_INSTALL_IMAGE_OPTIMIZERS=false WORKSPACE_INSTALL_IMAGE_OPTIMIZERS=false
WORKSPACE_INSTALL_IMAGEMAGICK=false WORKSPACE_INSTALL_IMAGEMAGICK=false
WORKSPACE_INSTALL_TERRAFORM=false WORKSPACE_INSTALL_TERRAFORM=false
@ -138,6 +141,8 @@ WORKSPACE_INSTALL_PING=false
WORKSPACE_INSTALL_SSHPASS=false WORKSPACE_INSTALL_SSHPASS=false
WORKSPACE_INSTALL_INOTIFY=false WORKSPACE_INSTALL_INOTIFY=false
WORKSPACE_INSTALL_FSWATCH=false WORKSPACE_INSTALL_FSWATCH=false
WORKSPACE_INSTALL_YAML=false
WORKSPACE_INSTALL_MAILPARSE=false
WORKSPACE_PUID=1000 WORKSPACE_PUID=1000
WORKSPACE_PGID=1000 WORKSPACE_PGID=1000
WORKSPACE_CHROME_DRIVER_VERSION=2.42 WORKSPACE_CHROME_DRIVER_VERSION=2.42
@ -163,6 +168,7 @@ PHP_FPM_INSTALL_IMAP=false
PHP_FPM_INSTALL_MONGO=false PHP_FPM_INSTALL_MONGO=false
PHP_FPM_INSTALL_AMQP=false PHP_FPM_INSTALL_AMQP=false
PHP_FPM_INSTALL_CASSANDRA=false PHP_FPM_INSTALL_CASSANDRA=false
PHP_FPM_INSTALL_GEARMAN=false
PHP_FPM_INSTALL_MSSQL=false PHP_FPM_INSTALL_MSSQL=false
PHP_FPM_INSTALL_SSH2=false PHP_FPM_INSTALL_SSH2=false
PHP_FPM_INSTALL_SOAP=false PHP_FPM_INSTALL_SOAP=false
@ -190,9 +196,13 @@ PHP_FPM_INSTALL_ADDITIONAL_LOCALES=false
PHP_FPM_INSTALL_MYSQL_CLIENT=false PHP_FPM_INSTALL_MYSQL_CLIENT=false
PHP_FPM_INSTALL_PING=false PHP_FPM_INSTALL_PING=false
PHP_FPM_INSTALL_SSHPASS=false PHP_FPM_INSTALL_SSHPASS=false
PHP_FPM_INSTALL_MAILPARSE=false
PHP_FPM_FFMPEG=false PHP_FPM_FFMPEG=false
PHP_FPM_ADDITIONAL_LOCALES="es_ES.UTF-8 fr_FR.UTF-8" PHP_FPM_ADDITIONAL_LOCALES="es_ES.UTF-8 fr_FR.UTF-8"
PHP_FPM_PUID=1000
PHP_FPM_PGID=1000
### PHP_WORKER ############################################ ### PHP_WORKER ############################################
PHP_WORKER_INSTALL_PGSQL=false PHP_WORKER_INSTALL_PGSQL=false
@ -208,6 +218,8 @@ PHP_WORKER_INSTALL_TAINT=false
PHP_WORKER_INSTALL_FFMPEG=false PHP_WORKER_INSTALL_FFMPEG=false
PHP_WORKER_INSTALL_GMP=false PHP_WORKER_INSTALL_GMP=false
PHP_WORKER_INSTALL_CASSANDRA=false PHP_WORKER_INSTALL_CASSANDRA=false
PHP_WORKER_INSTALL_GEARMAN=false
PHP_WORKER_INSTALL_REDIS=false
PHP_WORKER_PUID=1000 PHP_WORKER_PUID=1000
PHP_WORKER_PGID=1000 PHP_WORKER_PGID=1000
@ -225,6 +237,8 @@ NGINX_SSL_PATH=./nginx/ssl/
### LARAVEL_HORIZON ################################################ ### LARAVEL_HORIZON ################################################
LARAVEL_HORIZON_INSTALL_SOCKETS=false LARAVEL_HORIZON_INSTALL_SOCKETS=false
LARAVEL_HORIZON_INSTALL_PHPREDIS=true
LARAVEL_HORIZON_INSTALL_MONGO=false
### APACHE ################################################ ### APACHE ################################################
@ -771,3 +785,48 @@ CASSANDRA_ENABLE_RPC=true
CASSANDRA_DATACENTER=dc1 CASSANDRA_DATACENTER=dc1
# Rack name for the cluster. Ignored in SimpleSnitch endpoint snitch. Default: rack1. # Rack name for the cluster. Ignored in SimpleSnitch endpoint snitch. Default: rack1.
CASSANDRA_RACK=rack1 CASSANDRA_RACK=rack1
### GEARMAN ##################################################
# Gearman version to use. See available tags at https://hub.docker.com/r/artefactual/gearmand
GEARMAN_VERSION=latest
# Port to use (Default: 6379)
GEARMAN_PORT=6379
# Logging Level (Default: INFO)
GEARMAN_VERBOSE=INFO
# Persistent queue type to use (Default: builtin)
GEARMAN_QUEUE_TYPE=builtin
# Number of I/O threads to use (Default: 4)
GEARMAN_THREADS=4
# Number of backlog connections for listen (Default: 32)
GEARMAN_BACKLOG=32
# Number of file descriptors to allow for the process (Default is max allowed for user)
GEARMAN_FILE_DESCRIPTORS=
# Number of attempts to run the job before the job server removes it. (Default: no limit = 0)
GEARMAN_JOB_RETRIES=0
# Assign work in round-robin order per worker connection (Default: 0)
GEARMAN_ROUND_ROBIN=0
# Number of workers to wakeup for each job received (Default: 0)
GEARMAN_WORKER_WAKEUP=0
# Enable keepalive on sockets (Default: 0)
GEARMAN_KEEPALIVE=0
# The duration between two keepalive transmissions in idle condition (Default: 30)
GEARMAN_KEEPALIVE_IDLE=30
# The duration between two successive keepalive retransmissions, if acknowledgement to the previous keepalive transmission is not received (Default: 10)
GEARMAN_KEEPALIVE_INTERVAL=10
# The number of retransmissions to be carried out before declaring that remote end is not available (Default: 5)
GEARMAN_KEEPALIVE_COUNT=5
# Mysql server host (Default: localhost)
GEARMAN_MYSQL_HOST=localhost
# Mysql server port (Default: 3306)
GEARMAN_MYSQL_PORT=3306
# Mysql server user (Default: root)
GEARMAN_MYSQL_USER=root
# Mysql password
GEARMAN_MYSQL_PASSWORD=
# Path to file with mysql password(Docker secrets)
GEARMAN_MYSQL_PASSWORD_FILE=
# Database to use by Gearman (Default: Gearmand)
GEARMAN_MYSQL_DB=Gearmand
# Table to use by Gearman (Default: gearman_queue)
GEARMAN_MYSQL_TABLE=gearman_queue

5
gearman/Dockerfile Normal file
View File

@ -0,0 +1,5 @@
ARG GEARMAN_VERSION=latest
FROM artefactual/gearmand:${GEARMAN_VERSION}
LABEL maintainer="Stefan Neuhaus <https://www.github.com/stefnats>"

View File

@ -1,3 +1,3 @@
FROM docker.elastic.co/kibana/kibana:6.6.0 FROM docker.elastic.co/kibana/kibana:7.1.1
EXPOSE 5601 EXPOSE 5601

View File

@ -51,6 +51,15 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
apk --update add cassandra-cpp-driver \ apk --update add cassandra-cpp-driver \
;fi ;fi
# Install PhpRedis package:
ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
# Install Php Redis Extension
printf "\n" | pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
;fi
WORKDIR /usr/src WORKDIR /usr/src
RUN if [ ${INSTALL_CASSANDRA} = true ]; then \ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
git clone https://github.com/datastax/php-driver.git \ git clone https://github.com/datastax/php-driver.git \
@ -65,6 +74,12 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
&& docker-php-ext-enable cassandra \ && docker-php-ext-enable cassandra \
;fi ;fi
# Install MongoDB drivers:
ARG INSTALL_MONGO=false
RUN if [ ${INSTALL_MONGO} = true ]; then \
pecl install mongodb \
&& docker-php-ext-enable mongodb \
;fi
########################################################################### ###########################################################################
@ -78,7 +93,7 @@ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/2.2.0.tar.gz"; \ curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/2.2.0.tar.gz"; \
else \ else \
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz"; \ curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/v3.1.3.tar.gz"; \
fi \ fi \
&& mkdir -p memcached \ && mkdir -p memcached \
&& tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \ && tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \

View File

@ -12,6 +12,8 @@ ENV TZ ${TZ}
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && chown -R mysql:root /var/lib/mysql/ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && chown -R mysql:root /var/lib/mysql/
COPY my.cnf /etc/mysql/conf.d/my.cnf COPY my.cnf /etc/mysql/conf.d/my.cnf
RUN chmod -R 644 /etc/mysql/conf.d/my.cnf
CMD ["mysqld"] CMD ["mysqld"]
EXPOSE 3306 EXPOSE 3306

View File

@ -13,6 +13,8 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone &
COPY my.cnf /etc/mysql/conf.d/my.cnf COPY my.cnf /etc/mysql/conf.d/my.cnf
RUN chmod 0444 /etc/mysql/conf.d/my.cnf
CMD ["mysqld"] CMD ["mysqld"]
EXPOSE 3306 EXPOSE 3306

View File

@ -0,0 +1,43 @@
server {
listen 80;
listen [::]:80;
server_name www.confluence-domain.com;
rewrite ^(.*) https://confluence-domain.com$1/ permanent;
}
server {
listen 80;
listen [::]:80;
server_name confluence-domain.com;
rewrite ^(.*) https://confluence-domain.com/ permanent;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/nginx/ssl/confluence-domain.com.crt;
ssl_certificate_key /etc/nginx/ssl/confluence-domain.com.key;
server_name confluence-domain.com;
location / {
client_max_body_size 100m;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://confluence-domain.com:8090/;
}
location /synchrony {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://confluence-domain.com:8090/synchrony-proxy;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
error_log /var/log/nginx/bookchangerru_error.log;
access_log /var/log/nginx/bookchangerru_access.log;
}

View File

@ -14,8 +14,7 @@
ARG LARADOCK_PHP_VERSION ARG LARADOCK_PHP_VERSION
# FROM laradock/php-fpm:2.2-${LARADOCK_PHP_VERSION} FROM laradock/php-fpm:2.6.1-${LARADOCK_PHP_VERSION}
FROM letsdockerize/laradock-php-fpm:2.4-${LARADOCK_PHP_VERSION}
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>" LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
@ -26,14 +25,14 @@ ENV DEBIAN_FRONTEND noninteractive
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env. # If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
ADD debian.sources.list /etc/apt/debian.sources.list
ARG CHANGE_SOURCE=false ARG CHANGE_SOURCE=false
RUN if [ ${CHANGE_SOURCE} = true ]; then \ RUN if [ ${CHANGE_SOURCE} = true ]; then \
mv /etc/apt/sources.list /etc/apt/sources.list.back && \ # Change application source from deb.debian.org to aliyun source
mv /etc/apt/debian.sources.list /etc/apt/sources.list \ sed -i 's/deb.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list && \
sed -i 's/security.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list && \
sed -i 's/security-cdn.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list \
;fi ;fi
# always run apt update when start and after add new source list, then clean up at end. # always run apt update when start and after add new source list, then clean up at end.
RUN set -xe; \ RUN set -xe; \
apt-get update -yqq && \ apt-get update -yqq && \
@ -207,9 +206,13 @@ ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
# Install Php Redis Extension # Install Php Redis Extension
printf "\n" | pecl install -o -f redis \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
&& rm -rf /tmp/pear \ pecl install -o -f redis-4.3.0; \
&& docker-php-ext-enable redis \ else \
pecl install -o -f redis; \
fi \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
;fi ;fi
########################################################################### ###########################################################################
@ -320,6 +323,30 @@ RUN if [ ${INSTALL_AMQP} = true ]; then \
docker-php-ext-install sockets \ docker-php-ext-install sockets \
;fi ;fi
###########################################################################
# GEARMAN:
###########################################################################
ARG INSTALL_GEARMAN=false
RUN if [ ${INSTALL_GEARMAN} = true ]; then \
apt-get update && \
apt-get -y install libgearman-dev && \
cd /tmp && \
curl -L https://github.com/wcgallego/pecl-gearman/archive/gearman-2.0.5.zip -O && \
unzip gearman-2.0.5.zip && \
mv pecl-gearman-gearman-2.0.5 pecl-gearman && \
cd /tmp/pecl-gearman && \
phpize && \
./configure && \
make -j$(nproc) && \
make install && \
cd / && \
rm /tmp/gearman-2.0.5.zip && \
rm -r /tmp/pecl-gearman && \
docker-php-ext-enable gearman \
;fi
########################################################################### ###########################################################################
# pcntl # pcntl
########################################################################### ###########################################################################
@ -365,21 +392,10 @@ ARG INSTALL_MEMCACHED=false
RUN if [ ${INSTALL_MEMCACHED} = true ]; then \ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
# Install the php memcached extension # Install the php memcached extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/2.2.0.tar.gz"; \ pecl install memcached-2.2.0; \
else \ else \
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/master.tar.gz"; \ pecl install memcached-3.1.3; \
fi \ fi \
&& 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 \ && docker-php-ext-enable memcached \
;fi ;fi
@ -696,7 +712,11 @@ ARG INSTALL_MYSQL_CLIENT=false
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \ RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
apt-get update -yqq && \ apt-get update -yqq && \
apt-get -y install mysql-client \ if [ ${LARADOCK_PHP_VERSION} = "7.3" ]; then \
apt-get -y install default-mysql-client \
;else \
apt-get -y install mysql-client \
;fi \
;fi ;fi
########################################################################### ###########################################################################
@ -738,6 +758,19 @@ RUN if [ ${INSTALL_FFMPEG} = true ]; then \
apt-get -y install ffmpeg \ apt-get -y install ffmpeg \
;fi ;fi
###########################################################################
# Mailparse extension:
###########################################################################
ARG INSTALL_MAILPARSE=false
RUN if [ ${INSTALL_MAILPARSE} = true ]; then \
# Install mailparse extension
printf "\n" | pecl install -o -f mailparse \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable mailparse \
;fi
########################################################################### ###########################################################################
# Check PHP version: # Check PHP version:
########################################################################### ###########################################################################
@ -760,7 +793,14 @@ RUN apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
rm /var/log/lastlog /var/log/faillog rm /var/log/lastlog /var/log/faillog
RUN usermod -u 1000 www-data # Configure non-root user.
ARG PUID=1000
ENV PUID ${PUID}
ARG PGID=1000
ENV PGID ${PGID}
RUN groupmod -o -g ${PGID} www-data && \
usermod -o -u ${PUID} -g www-data www-data
# Adding the faketime library to the preload file needs to be done last # Adding the faketime library to the preload file needs to be done last
# otherwise it will preload it for all commands that follow in this file # otherwise it will preload it for all commands that follow in this file

View File

@ -1,8 +0,0 @@
deb http://mirrors.aliyun.com/debian/ stretch main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ stretch main non-free contrib
deb http://mirrors.aliyun.com/debian-security stretch/updates main
deb-src http://mirrors.aliyun.com/debian-security stretch/updates main
deb http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib
deb http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib

View File

@ -66,7 +66,11 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
# Install MySQL Client: # Install MySQL Client:
ARG INSTALL_MYSQL_CLIENT=false ARG INSTALL_MYSQL_CLIENT=false
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \ RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
apk --update add mysql-client \ if [ ${PHP_VERSION} = "7.3" ]; then \
apk --update add default-mysql-client \
;else \
apk --update add mysql-client \
;fi \
;fi ;fi
# Install FFMPEG: # Install FFMPEG:
@ -85,6 +89,13 @@ RUN if [ ${INSTALL_AMQP} = true ]; then \
docker-php-ext-install sockets \ docker-php-ext-install sockets \
;fi ;fi
# Install Gearman:
ARG INSTALL_GEARMAN=false
RUN if [ ${INSTALL_GEARMAN} = true ]; then \
docker-php-ext-install gearman \
;fi
# Install Cassandra drivers: # Install Cassandra drivers:
ARG INSTALL_CASSANDRA=false ARG INSTALL_CASSANDRA=false
RUN if [ ${INSTALL_CASSANDRA} = true ]; then \ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
@ -130,10 +141,14 @@ RUN if [ ${INSTALL_GMP} = true ]; then \
&& docker-php-ext-install gmp \ && docker-php-ext-install gmp \
;fi ;fi
# Install Redis package:
RUN rm /var/cache/apk/* \ ARG INSTALL_REDIS=false
&& mkdir -p /var/www RUN if [ ${INSTALL_REDIS} = true ]; then \
# Install Redis Extension
printf "\n" | pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
;fi
########################################################################### ###########################################################################
# Swoole EXTENSION # Swoole EXTENSION
@ -205,4 +220,8 @@ RUN php -v | head -n 1 | grep -q "PHP ${PHP_VERSION}."
#-------------------------------------------------------------------------- #--------------------------------------------------------------------------
# #
# Clean up
RUN rm /var/cache/apk/* \
&& mkdir -p /var/www
WORKDIR /etc/supervisor/conf.d/ WORKDIR /etc/supervisor/conf.d/

View File

@ -5,5 +5,10 @@ LABEL maintainer="Bo-Yi Wu <appleboy.tw@gmail.com>"
# Add volume for sessions to allow session persistence # Add volume for sessions to allow session persistence
VOLUME /sessions VOLUME /sessions
RUN echo '' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
&& echo '[PHP]' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
&& echo 'post_max_size = 2G' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
&& echo 'upload_max_filesize = 2G' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini
# We expose phpMyAdmin on port 80 # We expose phpMyAdmin on port 80
EXPOSE 80 EXPOSE 80

View File

@ -33,7 +33,7 @@
# EOSQL # EOSQL
# #
### default database and user for confluence ############################################## ### default database and user for confluence ##############################################
if [ "$POSTGRES_CONFLUENCE_INIT" == 'true' ]; then if [ "$CONFLUENCE_POSTGRES_INIT" == 'true' ]; then
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER $POSTGRES_CONFLUENCE_USER WITH PASSWORD '$POSTGRES_CONFLUENCE_PASSWORD'; CREATE USER $POSTGRES_CONFLUENCE_USER WITH PASSWORD '$POSTGRES_CONFLUENCE_PASSWORD';
CREATE DATABASE $POSTGRES_CONFLUENCE_DB; CREATE DATABASE $POSTGRES_CONFLUENCE_DB;

View File

@ -14,8 +14,7 @@
ARG LARADOCK_PHP_VERSION ARG LARADOCK_PHP_VERSION
# FROM laradock/workspace:2.2-${LARADOCK_PHP_VERSION} FROM laradock/workspace:2.6.1-${LARADOCK_PHP_VERSION}
FROM letsdockerize/laradock-workspace:2.4-${LARADOCK_PHP_VERSION}
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>" LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
@ -446,6 +445,18 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/cassandra.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-cassandra.ini \ ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/cassandra.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-cassandra.ini \
;fi ;fi
###########################################################################
# Gearman:
###########################################################################
ARG INSTALL_GEARMAN=false
RUN if [ ${INSTALL_GEARMAN} = true ]; then \
add-apt-repository -y ppa:ondrej/pkg-gearman && \
apt-get update && \
apt-get install php-gearman -y \
;fi
########################################################################### ###########################################################################
# PHP REDIS EXTENSION # PHP REDIS EXTENSION
########################################################################### ###########################################################################
@ -453,6 +464,7 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
ARG INSTALL_PHPREDIS=false ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
apt-get update -yqq && \
apt-get install -yqq php-redis \ apt-get install -yqq php-redis \
;fi ;fi
@ -774,13 +786,6 @@ RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \ composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
;fi ;fi
ARG INSTALL_LARAVEL_INSTALLER=false
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
# Install the Laravel Installer
composer global require "laravel/installer" \
;fi
########################################################################### ###########################################################################
# Deployer: # Deployer:
########################################################################### ###########################################################################
@ -954,6 +959,20 @@ RUN if [ ${INSTALL_POWERLINE} = true ]; then \
;fi \ ;fi \
;fi ;fi
###########################################################################
# SUPERVISOR:
###########################################################################
ARG INSTALL_SUPERVISOR=false
RUN if [ ${INSTALL_SUPERVISOR} = true ]; then \
if [ ${INSTALL_PYTHON} = true ]; then \
python -m pip install --upgrade supervisor && \
echo_supervisord_conf > /etc/supervisord.conf && \
sed -i 's/\;\[include\]/\[include\]/g' /etc/supervisord.conf && \
sed -i 's/\;files\s.*/files = supervisord.d\/*.conf/g' /etc/supervisord.conf \
;fi \
;fi
USER laradock USER laradock
########################################################################### ###########################################################################
@ -1084,6 +1103,25 @@ RUN if [ ${INSTALL_SSHPASS} = true ]; then \
apt-get -y install sshpass \ apt-get -y install sshpass \
;fi ;fi
###########################################################################
# YAML: extension for PHP-CLI
###########################################################################
USER root
ARG INSTALL_YAML=false
RUN if [ ${INSTALL_YAML} = true ]; then \
apt-get install libyaml-dev -y ; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install -a yaml-1.3.2; \
else \
pecl install yaml; \
fi && \
echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \
;fi
########################################################################### ###########################################################################
# FFMpeg: # FFMpeg:
########################################################################### ###########################################################################
@ -1096,6 +1134,16 @@ RUN if [ ${INSTALL_FFMPEG} = true ]; then \
apt-get -y install ffmpeg \ apt-get -y install ffmpeg \
;fi ;fi
###########################################################################
# Mailparse extension:
###########################################################################
ARG INSTALL_MAILPARSE=false
RUN if [ ${INSTALL_MAILPARSE} = true ]; then \
apt-get install -yqq php-mailparse \
;fi
########################################################################### ###########################################################################
# GNU Parallel: # GNU Parallel:
########################################################################### ###########################################################################