Compare commits
186 Commits
Author | SHA1 | Date | |
---|---|---|---|
871a9d032a | |||
805d7f94e8 | |||
c84a57cd13 | |||
e6817288f8 | |||
cd849dda21 | |||
21a5d5bf98 | |||
2ab11bf1af | |||
141d2dbe7f | |||
4d384c0a67 | |||
9a9d30f173 | |||
99c7758799 | |||
164069c256 | |||
5773d270ca | |||
f810962d84 | |||
f5f23bed1b | |||
e694254fb0 | |||
c34d2d12b3 | |||
349be8b30e | |||
436e9e5a66 | |||
b445479c99 | |||
70e10a4953 | |||
1ab5b405a9 | |||
91784cbf8a | |||
415a6159f6 | |||
2cf368e2cc | |||
f08c3bda4d | |||
c5c4d19476 | |||
40796651f6 | |||
188a7d7624 | |||
3f1f60da91 | |||
21e3ef8c47 | |||
7876aa2360 | |||
dee66c2495 | |||
ce8bdb91cf | |||
f90a81ef8b | |||
23b8239cfa | |||
b7b7690bbe | |||
e054b622f3 | |||
c4aef8e901 | |||
47dc7c1eb9 | |||
8fc33f5bb9 | |||
8607f670c1 | |||
04105b912d | |||
a797d67f14 | |||
4169a9b357 | |||
8d0bd8505c | |||
dc5474d31b | |||
ab9f5aba6e | |||
cbd0f1de79 | |||
2a2d78e249 | |||
9b328cce1f | |||
43ba898df3 | |||
3b0f271782 | |||
327e79f902 | |||
e546c9c190 | |||
880c3684d7 | |||
27ec06bbf0 | |||
6fe3dc75b3 | |||
dd751c56b7 | |||
91d202dff4 | |||
ca376935e1 | |||
227bc37376 | |||
74ca3b82a1 | |||
d23c553313 | |||
16f88029e0 | |||
74217478e0 | |||
13f55ef796 | |||
715c2176b8 | |||
43bf67b77e | |||
4b5a1ef628 | |||
198c3906b2 | |||
9bd34ed665 | |||
76da02e779 | |||
a52a944003 | |||
4cffb2fc99 | |||
92dda4695c | |||
c42e039945 | |||
72d550e6e5 | |||
e1c3524f43 | |||
91131f0963 | |||
61d3874736 | |||
03c7611010 | |||
48de39b1a1 | |||
2ca9d3c5c6 | |||
3b219d2974 | |||
e77480b69f | |||
b7f89e6b00 | |||
acbe7160d9 | |||
f53565f2a6 | |||
dfff0b2fa0 | |||
82a2681eed | |||
e792aa654e | |||
87e1bdeb92 | |||
f05fdc71d5 | |||
6e96b1c6f9 | |||
fad7c11d53 | |||
639b14445f | |||
0b902e3e96 | |||
f27b3aa4be | |||
722f7d09c0 | |||
0077de28a1 | |||
d098f1f6ad | |||
4ea9cd0663 | |||
9de6d9b9e1 | |||
04b4af829f | |||
bf2dbca286 | |||
0b7cb81f47 | |||
368c85dc61 | |||
ae7dda9ef2 | |||
7e88fb56f1 | |||
807443455a | |||
c44338e370 | |||
b4ded4f21b | |||
3e5a6029ab | |||
ee205d1198 | |||
0fcb8b43cc | |||
7bd22f015e | |||
07acf291fa | |||
cfe6e254a7 | |||
5efda6714b | |||
a83477b439 | |||
00f8c3407e | |||
0aaa2c742e | |||
4ada536d68 | |||
222febadb5 | |||
0445d76d11 | |||
7fc3a9cb7a | |||
b738253a26 | |||
6e6a658a79 | |||
4bc6526c3c | |||
d4f9b04467 | |||
b9e982c112 | |||
ad3698670b | |||
71cc109334 | |||
0d804cd29a | |||
3fcebd49e7 | |||
86eccdb962 | |||
0f46659172 | |||
017fcf188b | |||
63c69231f7 | |||
4730ed1b78 | |||
c21c6760ac | |||
1c194f5c87 | |||
81b34a72eb | |||
fde265ed6a | |||
64029d9270 | |||
407c08017d | |||
2156139b5a | |||
e1ccd84c16 | |||
d139b6bc2e | |||
5e10abd536 | |||
c6a8500c44 | |||
b981168111 | |||
cd1c9c0d44 | |||
8e32b93264 | |||
a2ae141a75 | |||
f22ceb71ab | |||
6ea86fbce3 | |||
dec08ec2b1 | |||
98fba83331 | |||
694b39ddf4 | |||
d0167475ba | |||
3bdab382ea | |||
80f6e8b60c | |||
ba61566f28 | |||
9ae10d32ce | |||
cf136f891b | |||
59dff53176 | |||
34267ffc4d | |||
57918b69a7 | |||
c11658559a | |||
47c74d1334 | |||
e779bf96ab | |||
06ce5ca222 | |||
c06c28aa04 | |||
c1e80e3af4 | |||
a7c9232193 | |||
265bc13917 | |||
8d410e9c82 | |||
f56a585ab2 | |||
9b8d4806a8 | |||
73b95357ac | |||
a99281cda8 | |||
1342b696ea | |||
fd5bb38a8c | |||
025a339062 |
10
.github/README-zh.md
vendored
10
.github/README-zh.md
vendored
@ -669,19 +669,19 @@ PHP-CLI 安装在 Workspace 容器,改变 PHP-CLI 版本你需要编辑 `works
|
|||||||
<a name="Use-custom-Domain"></a>
|
<a name="Use-custom-Domain"></a>
|
||||||
### 使用自定义域名 (替换 Docker 的 IP)
|
### 使用自定义域名 (替换 Docker 的 IP)
|
||||||
|
|
||||||
假定你的自定义域名是 `laravel.dev`
|
假定你的自定义域名是 `laravel.test`
|
||||||
|
|
||||||
1 - 打开 `/etc/hosts` 文件添加以下内容,映射你的 localhost 地址 `127.0.0.1` 为 `laravel.dev` 域名
|
1 - 打开 `/etc/hosts` 文件添加以下内容,映射你的 localhost 地址 `127.0.0.1` 为 `laravel.test` 域名
|
||||||
```bash
|
```bash
|
||||||
127.0.0.1 laravel.dev
|
127.0.0.1 laravel.test
|
||||||
```
|
```
|
||||||
|
|
||||||
2 - 打开你的浏览器访问 `{http://laravel.dev}`
|
2 - 打开你的浏览器访问 `{http://laravel.test}`
|
||||||
|
|
||||||
你可以在 nginx 配置文件自定义服务器名称,如下:
|
你可以在 nginx 配置文件自定义服务器名称,如下:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
server_name laravel.dev;
|
server_name laravel.test;
|
||||||
```
|
```
|
||||||
|
|
||||||
<a name="Enable-Global-Composer-Build-Install"></a>
|
<a name="Enable-Global-Composer-Build-Install"></a>
|
||||||
|
27
.github/README.md
vendored
27
.github/README.md
vendored
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<p align="center">
|
<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://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"><img src="https://img.shields.io/github/stars/laradock/laradock.svg" alt="GitHub stars"></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/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/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="https://raw.githubusercontent.com/laradock/laradock/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license"></a>
|
||||||
@ -31,9 +31,21 @@
|
|||||||
|
|
||||||
## Sponsors
|
## Sponsors
|
||||||
|
|
||||||
<a target='_blank' rel='nofollow' href='https://app.codesponsor.io/link/JHiroABWV9N5QKgcFuTA2NxX/laradock/laradock'>
|
Support this project by becoming a sponsor.
|
||||||
<img alt='Sponsor' width='888' height='68' src='https://app.codesponsor.io/embed/JHiroABWV9N5QKgcFuTA2NxX/laradock/laradock.svg' />
|
|
||||||
</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. [[Become a sponsor](https://opencollective.com/laradock#sponsor)]
|
||||||
|
|
||||||
|
<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>
|
||||||
|
<a href="https://opencollective.com/laradock/sponsor/8/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/laradock/sponsor/9/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg"></a>
|
||||||
|
|
||||||
|
|
||||||
## Contributors
|
## Contributors
|
||||||
|
|
||||||
@ -53,7 +65,8 @@
|
|||||||
- Join us, by submitting 20 useful PR's.
|
- Join us, by submitting 20 useful PR's.
|
||||||
|
|
||||||
#### Awesome contributors:
|
#### Awesome contributors:
|
||||||
- See full list [here](https://github.com/apiato/apiato/graphs/contributors).
|
|
||||||
|
<a href="https://github.com/laradock/laradock/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890" /></a>
|
||||||
|
|
||||||
|
|
||||||
## Donations
|
## Donations
|
||||||
@ -65,6 +78,10 @@ Donate directly via [Paypal](https://www.paypal.me/mzalt)
|
|||||||
|
|
||||||
[](https://www.paypal.me/mzalt)
|
[](https://www.paypal.me/mzalt)
|
||||||
|
|
||||||
|
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>
|
||||||
|
|
||||||
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
||||||
|
|
||||||
[](https://beerpay.io/laradock/laradock)
|
[](https://beerpay.io/laradock/laradock)
|
||||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -3,4 +3,5 @@
|
|||||||
/data
|
/data
|
||||||
.env
|
.env
|
||||||
/.project
|
/.project
|
||||||
.docker-sync
|
.docker-sync
|
||||||
|
/jenkins/jenkins_home
|
||||||
|
62
.gitlab-ci.yml
Normal file
62
.gitlab-ci.yml
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
# image: docker:latest
|
||||||
|
# services:
|
||||||
|
# - docker:dind
|
||||||
|
image: jonaskello/docker-and-compose:1.12.1-1.8.0
|
||||||
|
services:
|
||||||
|
- docker:1.12.1-dind
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- docker info
|
||||||
|
- docker-compose version
|
||||||
|
- cp env-example .env
|
||||||
|
- sed -i -- "s/=false/=true/g" .env
|
||||||
|
- cat .env
|
||||||
|
- env | sort
|
||||||
|
|
||||||
|
build:56:php-fpm:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "56"
|
||||||
|
script:
|
||||||
|
- docker-compose build php-fpm
|
||||||
|
|
||||||
|
build:70:php-fpm:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "70"
|
||||||
|
script:
|
||||||
|
- docker-compose build php-fpm
|
||||||
|
|
||||||
|
build:71:php-fpm:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "71"
|
||||||
|
script:
|
||||||
|
- docker-compose build php-fpm
|
||||||
|
|
||||||
|
build:72:php-fpm:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "72"
|
||||||
|
script:
|
||||||
|
- docker-compose build php-fpm
|
||||||
|
|
||||||
|
build:56:workspace:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "56"
|
||||||
|
script:
|
||||||
|
- docker-compose build workspace
|
||||||
|
|
||||||
|
build:70:workspace:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "70"
|
||||||
|
script:
|
||||||
|
- docker-compose build workspace
|
||||||
|
|
||||||
|
build:71:workspace:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "71"
|
||||||
|
script:
|
||||||
|
- docker-compose build workspace
|
||||||
|
|
||||||
|
build:72:workspace:
|
||||||
|
variables:
|
||||||
|
PHP_VERSION: "72"
|
||||||
|
script:
|
||||||
|
- docker-compose build workspace
|
35
.travis.yml
35
.travis.yml
@ -7,37 +7,30 @@ env:
|
|||||||
matrix:
|
matrix:
|
||||||
- HUGO_VERSION=0.20.2
|
- HUGO_VERSION=0.20.2
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
|
||||||
- PHP_VERSION=70 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
|
||||||
- PHP_VERSION=71 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE=workspace
|
- PHP_VERSION=56 BUILD_SERVICE=workspace
|
||||||
- PHP_VERSION=70 BUILD_SERVICE=workspace
|
- PHP_VERSION=70 BUILD_SERVICE=workspace
|
||||||
- PHP_VERSION=71 BUILD_SERVICE=workspace
|
- PHP_VERSION=71 BUILD_SERVICE=workspace
|
||||||
|
- PHP_VERSION=72 BUILD_SERVICE=workspace
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=56 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=70 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=70 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=71 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=71 BUILD_SERVICE=php-fpm
|
||||||
|
- PHP_VERSION=72 BUILD_SERVICE=php-fpm
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE="php-worker hhvm"
|
- PHP_VERSION=hhvm BUILD_SERVICE=hhvm
|
||||||
- PHP_VERSION=70 BUILD_SERVICE="php-worker hhvm"
|
|
||||||
- PHP_VERSION=71 BUILD_SERVICE="php-worker hhvm"
|
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE=mssql
|
# - PHP_VERSION=56 BUILD_SERVICE=php-worker
|
||||||
- PHP_VERSION=70 BUILD_SERVICE=mssql
|
- PHP_VERSION=70 BUILD_SERVICE=php-worker
|
||||||
- PHP_VERSION=71 BUILD_SERVICE=mssql
|
- PHP_VERSION=71 BUILD_SERVICE=php-worker
|
||||||
|
- PHP_VERSION=72 BUILD_SERVICE=php-worker
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE=rethinkdb
|
- PHP_VERSION=NA BUILD_SERVICE=solr
|
||||||
- PHP_VERSION=70 BUILD_SERVICE=rethinkdb
|
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"
|
||||||
- PHP_VERSION=71 BUILD_SERVICE=rethinkdb
|
- PHP_VERSION=NA BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb postgres postgres-postgis neo4j mongo redis"
|
||||||
|
- PHP_VERSION=NA BUILD_SERVICE="adminer phpmyadmin pgadmin"
|
||||||
- PHP_VERSION=56 BUILD_SERVICE=aerospike
|
- PHP_VERSION=NA BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 haproxy"
|
||||||
- PHP_VERSION=70 BUILD_SERVICE=aerospike
|
- PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server"
|
||||||
- PHP_VERSION=71 BUILD_SERVICE=aerospike
|
# - PHP_VERSION=NA BUILD_SERVICE="aws"
|
||||||
|
|
||||||
- PHP_VERSION=56 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 balancer"
|
|
||||||
- PHP_VERSION=70 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 balancer"
|
|
||||||
- PHP_VERSION=71 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 balancer"
|
|
||||||
|
|
||||||
# Installing a newer Docker version
|
# Installing a newer Docker version
|
||||||
before_install:
|
before_install:
|
||||||
|
@ -431,15 +431,35 @@ To learn more about how Docker publishes ports, please read [this excellent post
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<a name="Use-Jenkins"></a>
|
||||||
|
## Use Jenkins
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
|
3) Authenticate from the web app.
|
||||||
|
|
||||||
|
- Default username is `admin`.
|
||||||
|
- Default password is `docker-compose exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword`.
|
||||||
|
|
||||||
|
(To enter container as root type `docker-compose exec --user root jenkins bash`).
|
||||||
|
|
||||||
|
4) Install some plugins.
|
||||||
|
|
||||||
|
5) Create your first Admin user, or continue as Admin.
|
||||||
|
|
||||||
|
Note: to add user go to `http://localhost:8090/securityRealm/addUser` and to restart it from the web app visit `http://localhost:8090/restart`.
|
||||||
|
|
||||||
|
You may wanna change the default security configuration, so go to `http://localhost:8090/configureSecurity/` under Authorization and choosing "Anyone can do anything" or "Project-based Matrix Authorization Strategy" or anything else.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Laravel"></a>
|
<a name="Laravel"></a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Install-Laravel"></a>
|
<a name="Install-Laravel"></a>
|
||||||
## Install Laravel from a Docker Container
|
## Install Laravel from a Docker Container
|
||||||
|
|
||||||
@ -798,6 +818,8 @@ docker-compose up -d beanstalkd-console
|
|||||||
|
|
||||||
2 - Open your browser and visit `http://localhost:2080/`
|
2 - Open your browser and visit `http://localhost:2080/`
|
||||||
|
|
||||||
|
_Note: You can customize the port on which beanstalkd console is listening by changing `BEANSTALKD_CONSOLE_HOST_PORT` in `.env`. The default value is *2080*._
|
||||||
|
|
||||||
3 - Add the server
|
3 - Add the server
|
||||||
|
|
||||||
- Host: beanstalkd
|
- Host: beanstalkd
|
||||||
@ -1002,7 +1024,7 @@ To install CodeIgniter 3 on Laradock all you have to do is the following simple
|
|||||||
|
|
||||||
4 - Run `docker-compose restart` if the container was already running, before the step above.
|
4 - Run `docker-compose restart` if the container was already running, before the step above.
|
||||||
|
|
||||||
5 - Visit `symfony.dev`
|
5 - Visit `symfony.test`
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Misc"></a>
|
<a name="Misc"></a>
|
||||||
@ -1072,10 +1094,18 @@ To change the default forwarded port for ssh:
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Then login using:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ssh -o PasswordAuthentication=no \
|
||||||
|
-o StrictHostKeyChecking=no \
|
||||||
|
-o UserKnownHostsFile=/dev/null \
|
||||||
|
-p 2222 \
|
||||||
|
-i workspace/insecure_id_rsa \
|
||||||
|
laradock@localhost
|
||||||
|
```
|
||||||
|
|
||||||
|
To login as root, replace laradock@locahost with root@localhost.
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Change-the-MySQL-Version"></a>
|
<a name="Change-the-MySQL-Version"></a>
|
||||||
@ -1167,21 +1197,21 @@ If you need <a href="#MySQL-access-from-host">MySQL access from your host</a>, d
|
|||||||
<a name="Use-custom-Domain"></a>
|
<a name="Use-custom-Domain"></a>
|
||||||
## Use custom Domain (instead of the Docker IP)
|
## Use custom Domain (instead of the Docker IP)
|
||||||
|
|
||||||
Assuming your custom domain is `laravel.dev`
|
Assuming your custom domain is `laravel.test`
|
||||||
|
|
||||||
1 - Open your `/etc/hosts` file and map your localhost address `127.0.0.1` to the `laravel.dev` domain, by adding the following:
|
1 - Open your `/etc/hosts` file and map your localhost address `127.0.0.1` to the `laravel.test` domain, by adding the following:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
127.0.0.1 laravel.dev
|
127.0.0.1 laravel.test
|
||||||
```
|
```
|
||||||
|
|
||||||
2 - Open your browser and visit `{http://laravel.dev}`
|
2 - Open your browser and visit `{http://laravel.test}`
|
||||||
|
|
||||||
|
|
||||||
Optionally you can define the server name in the NGINX configuration file, like this:
|
Optionally you can define the server name in the NGINX configuration file, like this:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
server_name laravel.dev;
|
server_name laravel.test;
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
@ -1712,3 +1742,13 @@ This error sometimes happens because your Laravel application isn't running on t
|
|||||||
## I get stuck when building nginx on `fetch http://mirrors.aliyun.com/alpine/v3.5/main/x86_64/APKINDEX.tar.gz`
|
## I get stuck when building nginx on `fetch http://mirrors.aliyun.com/alpine/v3.5/main/x86_64/APKINDEX.tar.gz`
|
||||||
|
|
||||||
As stated on [#749](https://github.com/laradock/laradock/issues/749#issuecomment-293296687), removing the line `RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories` from `nginx/Dockerfile` solves the problem.
|
As stated on [#749](https://github.com/laradock/laradock/issues/749#issuecomment-293296687), removing the line `RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories` from `nginx/Dockerfile` solves the problem.
|
||||||
|
|
||||||
|
## Custom composer repo packagist url and npm registry url
|
||||||
|
|
||||||
|
In China, the origin source of composer and npm is very slow. You can add `WORKSPACE_NPM_REGISTRY` and `WORKSPACE_COMPOSER_REPO_PACKAGIST` config in `.env` to use your custom source.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
```bash
|
||||||
|
WORKSPACE_NPM_REGISTRY=https://registry.npm.taobao.org
|
||||||
|
WORKSPACE_COMPOSER_REPO_PACKAGIST=https://packagist.phpcomposer.com
|
||||||
|
```
|
@ -121,10 +121,11 @@ You can rename the config files, project folders and domains as you like, just m
|
|||||||
4 - Add the domains to the **hosts** files.
|
4 - Add the domains to the **hosts** files.
|
||||||
|
|
||||||
```
|
```
|
||||||
127.0.0.1 project-1.dev
|
127.0.0.1 project-1.test
|
||||||
127.0.0.1 project-2.dev
|
127.0.0.1 project-2.test
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
If you use Chrome 63 or above for development, don't use `.dev`. [Why?](https://laravel-news.com/chrome-63-now-forces-dev-domains-https). Instead use `.localhost`, `.invalid`, `.test`, or `.example`.
|
||||||
|
|
||||||
> **Now jump to the [Usage](#Usage) section.**
|
> **Now jump to the [Usage](#Usage) section.**
|
||||||
|
|
||||||
@ -162,6 +163,7 @@ 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.
|
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.
|
||||||
|
|
||||||
|
Depending on the host's operating system you may need to change the value given to `COMPOSE_FILE`. When you are running Laradock on Mac OS the correct file separator to use is `:`. When running Laradock from a Windows environment multiple files must be separated with `;`.
|
||||||
|
|
||||||
2 - Build the enviroment and run it using `docker-compose`
|
2 - Build the enviroment and run it using `docker-compose`
|
||||||
|
|
||||||
@ -212,4 +214,4 @@ DB_HOST=mysql
|
|||||||
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
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/`.
|
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.test/` and `http://project-2.test/`.
|
||||||
|
@ -358,7 +358,7 @@ Here are a few things I use to clean things up.
|
|||||||
```
|
```
|
||||||
dclean() {
|
dclean() {
|
||||||
processes=`docker ps -q -f status=exited`
|
processes=`docker ps -q -f status=exited`
|
||||||
if [ -n "$processes" ]; thend
|
if [ -n "$processes" ]; then
|
||||||
docker rm $processes
|
docker rm $processes
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -118,9 +118,24 @@ If you can't find your Software in the list, build it yourself and submit it. Co
|
|||||||
|
|
||||||
## Sponsors
|
## Sponsors
|
||||||
|
|
||||||
<a target='_blank' rel='nofollow' href='https://app.codesponsor.io/link/JHiroABWV9N5QKgcFuTA2NxX/laradock/laradock'>
|
|
||||||
<img alt='Sponsor' width='888' height='68' src='https://app.codesponsor.io/embed/JHiroABWV9N5QKgcFuTA2NxX/laradock/laradock.svg' />
|
|
||||||
</a>
|
|
||||||
|
|
||||||
|
Support this project by becoming a sponsor.
|
||||||
|
|
||||||
|
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. [[Become a sponsor](https://opencollective.com/laradock#sponsor)]
|
||||||
|
|
||||||
|
<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>
|
||||||
|
<a href="https://opencollective.com/laradock/sponsor/8/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/laradock/sponsor/9/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg"></a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -190,6 +205,10 @@ Donate directly via [Paypal](https://www.paypal.me/mzalt)
|
|||||||
|
|
||||||
[](https://www.paypal.me/mzalt)
|
[](https://www.paypal.me/mzalt)
|
||||||
|
|
||||||
|
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>
|
||||||
|
|
||||||
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
||||||
|
|
||||||
[](https://beerpay.io/laradock/laradock)
|
[](https://beerpay.io/laradock/laradock)
|
||||||
|
@ -14,5 +14,6 @@ These Docker Compose projects have piqued our interest:
|
|||||||
* [MageDock](https://github.com/ojhaujjwal/magedock) by [Ujjwal Ojha](https://github.com/ojhaujjwal)
|
* [MageDock](https://github.com/ojhaujjwal/magedock) by [Ujjwal Ojha](https://github.com/ojhaujjwal)
|
||||||
* [RubyDev-Dock](https://github.com/scudelletti/rubydev-dock) by [Diogo Scudelletti](https://github.com/scudelletti)
|
* [RubyDev-Dock](https://github.com/scudelletti/rubydev-dock) by [Diogo Scudelletti](https://github.com/scudelletti)
|
||||||
* [NoDock](https://github.com/Osedea/nodock) by [Osedea](https://github.com/Osedea)
|
* [NoDock](https://github.com/Osedea/nodock) by [Osedea](https://github.com/Osedea)
|
||||||
|
* [Dockery](https://github.com/taufek/dockery) by [Taufek](https://github.com/Taufek)
|
||||||
|
|
||||||
If you want your project listed here, please open an issue.
|
If you want your project listed here, please open an issue.
|
||||||
|
4
LICENSE
4
LICENSE
@ -1,6 +1,6 @@
|
|||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright 2016 <Mahmoud Zalt>
|
Copyright 2018 <Mahmoud Zalt>
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
|
@ -3,7 +3,7 @@ FROM adminer:4.3.0
|
|||||||
# Version 4.3.1 contains PostgreSQL login errors. See docs.
|
# Version 4.3.1 contains PostgreSQL login errors. See docs.
|
||||||
# See https://sourceforge.net/p/adminer/bugs-and-features/548/
|
# See https://sourceforge.net/p/adminer/bugs-and-features/548/
|
||||||
|
|
||||||
MAINTAINER Patrick Artounian <partounian@gmail.com>
|
LABEL maintainer="Patrick Artounian <partounian@gmail.com>"
|
||||||
|
|
||||||
# Add volume for sessions to allow session persistence
|
# Add volume for sessions to allow session persistence
|
||||||
VOLUME /sessions
|
VOLUME /sessions
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM aerospike:latest
|
FROM aerospike:latest
|
||||||
|
|
||||||
MAINTAINER Luciano Jr <luciano@lucianojr.com.br>
|
LABEL maintainer="Luciano Jr <luciano@lucianojr.com.br>"
|
||||||
|
|
||||||
RUN rm /etc/aerospike/aerospike.conf
|
RUN rm /etc/aerospike/aerospike.conf
|
||||||
|
|
||||||
ADD aerospike.conf /etc/aerospike/aerospike.conf
|
ADD aerospike.conf /etc/aerospike/aerospike.conf
|
||||||
|
@ -1,14 +1,15 @@
|
|||||||
FROM webdevops/apache:ubuntu-16.04
|
FROM webdevops/apache:ubuntu-16.04
|
||||||
|
|
||||||
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
LABEL maintainer="Eric Pfeiffer <computerfr33k@users.noreply.github.com>"
|
||||||
|
|
||||||
ARG PHP_UPSTREAM_CONTAINER=php-fpm
|
ARG PHP_UPSTREAM_CONTAINER=php-fpm
|
||||||
ARG PHP_UPSTREAM_PORT=9000
|
ARG PHP_UPSTREAM_PORT=9000
|
||||||
ARG PHP_UPSTREAM_TIMEOUT=60
|
ARG PHP_UPSTREAM_TIMEOUT=60
|
||||||
|
ARG DOCUMENT_ROOT=/var/www/
|
||||||
|
|
||||||
ENV WEB_PHP_SOCKET=${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}
|
ENV WEB_PHP_SOCKET=${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}
|
||||||
|
|
||||||
ENV WEB_DOCUMENT_ROOT=/var/www/
|
ENV WEB_DOCUMENT_ROOT=${DOCUMENT_ROOT}
|
||||||
|
|
||||||
ENV WEB_PHP_TIMEOUT=${PHP_UPSTREAM_TIMEOUT}
|
ENV WEB_PHP_TIMEOUT=${PHP_UPSTREAM_TIMEOUT}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<VirtualHost *:80>
|
<VirtualHost *:80>
|
||||||
ServerName laradock.dev
|
ServerName laradock.test
|
||||||
DocumentRoot /var/www/
|
DocumentRoot /var/www/
|
||||||
Options Indexes FollowSymLinks
|
Options Indexes FollowSymLinks
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<VirtualHost *:80>
|
<VirtualHost *:80>
|
||||||
ServerName sample.dev
|
ServerName sample.test
|
||||||
DocumentRoot /var/www/sample/public/
|
DocumentRoot /var/www/sample/public/
|
||||||
Options Indexes FollowSymLinks
|
Options Indexes FollowSymLinks
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM python:slim
|
FROM python:slim
|
||||||
|
|
||||||
MAINTAINER melchabcede@gmail.com
|
LABEL maintainer="melchabcede@gmail.com"
|
||||||
|
|
||||||
RUN pip install --upgrade --no-cache-dir awsebcli
|
RUN pip install --upgrade --no-cache-dir awsebcli
|
||||||
RUN apt-get -yqq update && apt-get -yqq install git-all
|
RUN apt-get -yqq update && apt-get -yqq install git-all
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM php:latest
|
FROM php:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
RUN apt-get update && apt-get install -y curl
|
RUN apt-get update && apt-get install -y curl
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM phusion/baseimage:latest
|
FROM phusion/baseimage:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
ENV PATH /usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
ENV PATH /usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||||
@ -13,4 +13,4 @@ VOLUME /var/lib/beanstalkd/data
|
|||||||
|
|
||||||
EXPOSE 11300
|
EXPOSE 11300
|
||||||
|
|
||||||
CMD ["/usr/bin/beanstalkd"]
|
CMD ["/usr/bin/beanstalkd"]
|
||||||
|
@ -25,6 +25,22 @@
|
|||||||
# dns cloudflare
|
# dns cloudflare
|
||||||
#}
|
#}
|
||||||
}
|
}
|
||||||
laradock.demo:80 {
|
|
||||||
|
laradock1.demo:80 {
|
||||||
root /var/www/public
|
root /var/www/public
|
||||||
|
# Create a Webhook in git.
|
||||||
|
#git {
|
||||||
|
#repo https://github.com/xxx/xxx
|
||||||
|
# path /home/xxx
|
||||||
|
# #interval 60
|
||||||
|
# hook webhook laradock
|
||||||
|
# hook_type generic
|
||||||
|
#}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
laradock2.demo:80 {
|
||||||
|
# Create a Proxy and cors.
|
||||||
|
#proxy domain.com
|
||||||
|
#cors
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
FROM zuohuadong/caddy:alpine
|
FROM zuohuadong/caddy:alpine
|
||||||
|
|
||||||
|
LABEL maintainer="Huadong Zuo <admin@zuohuadong.cn>"
|
||||||
MAINTAINER Huadong Zuo <admin@zuohuadong.cn>
|
|
||||||
|
|
||||||
ARG plugins="cors"
|
ARG plugins="cors"
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM phusion/baseimage:latest
|
FROM phusion/baseimage:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
COPY run-certbot.sh /root/certbot/run-certbot.sh
|
COPY run-certbot.sh /root/certbot/run-certbot.sh
|
||||||
|
|
||||||
|
@ -19,19 +19,23 @@ services:
|
|||||||
- INSTALL_LDAP=${WORKSPACE_INSTALL_LDAP}
|
- INSTALL_LDAP=${WORKSPACE_INSTALL_LDAP}
|
||||||
- INSTALL_IMAP=${WORKSPACE_INSTALL_IMAP}
|
- INSTALL_IMAP=${WORKSPACE_INSTALL_IMAP}
|
||||||
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
||||||
|
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
|
||||||
- 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}
|
||||||
|
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
||||||
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
||||||
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
|
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
|
||||||
- INSTALL_DRUPAL_CONSOLE=${WORKSPACE_INSTALL_DRUPAL_CONSOLE}
|
- INSTALL_DRUPAL_CONSOLE=${WORKSPACE_INSTALL_DRUPAL_CONSOLE}
|
||||||
- INSTALL_AEROSPIKE=${WORKSPACE_INSTALL_AEROSPIKE}
|
- INSTALL_AEROSPIKE=${WORKSPACE_INSTALL_AEROSPIKE}
|
||||||
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
||||||
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
||||||
|
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
|
||||||
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
||||||
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
|
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
|
||||||
- INSTALL_LARAVEL_INSTALLER=${WORKSPACE_INSTALL_LARAVEL_INSTALLER}
|
- INSTALL_LARAVEL_INSTALLER=${WORKSPACE_INSTALL_LARAVEL_INSTALLER}
|
||||||
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
|
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
|
||||||
|
- INSTALL_PRESTISSIMO=${WORKSPACE_INSTALL_PRESTISSIMO}
|
||||||
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
|
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
|
||||||
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
||||||
- INSTALL_SYMFONY=${WORKSPACE_INSTALL_SYMFONY}
|
- INSTALL_SYMFONY=${WORKSPACE_INSTALL_SYMFONY}
|
||||||
@ -41,6 +45,7 @@ services:
|
|||||||
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
|
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
|
||||||
- INSTALL_DUSK_DEPS=${WORKSPACE_INSTALL_DUSK_DEPS}
|
- INSTALL_DUSK_DEPS=${WORKSPACE_INSTALL_DUSK_DEPS}
|
||||||
- INSTALL_PG_CLIENT=${WORKSPACE_INSTALL_PG_CLIENT}
|
- INSTALL_PG_CLIENT=${WORKSPACE_INSTALL_PG_CLIENT}
|
||||||
|
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
|
||||||
- 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}
|
||||||
@ -70,10 +75,13 @@ services:
|
|||||||
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
|
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
|
||||||
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
||||||
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
||||||
|
- INSTALL_IMAP=${PHP_FPM_INSTALL_IMAP}
|
||||||
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
||||||
|
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
|
||||||
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
||||||
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
|
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
|
||||||
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
||||||
|
- INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
|
||||||
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
||||||
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
||||||
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
||||||
@ -165,6 +173,7 @@ services:
|
|||||||
- PHP_UPSTREAM_CONTAINER=${APACHE_PHP_UPSTREAM_CONTAINER}
|
- PHP_UPSTREAM_CONTAINER=${APACHE_PHP_UPSTREAM_CONTAINER}
|
||||||
- PHP_UPSTREAM_PORT=${APACHE_PHP_UPSTREAM_PORT}
|
- PHP_UPSTREAM_PORT=${APACHE_PHP_UPSTREAM_PORT}
|
||||||
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
|
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
|
||||||
|
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- applications
|
- applications
|
||||||
volumes:
|
volumes:
|
||||||
@ -198,7 +207,8 @@ services:
|
|||||||
minio:
|
minio:
|
||||||
build: ./minio
|
build: ./minio
|
||||||
volumes:
|
volumes:
|
||||||
- minio:/export
|
- ${DATA_SAVE_PATH}/minio/data:/export
|
||||||
|
- ${DATA_SAVE_PATH}/minio/config:/root/.minio
|
||||||
ports:
|
ports:
|
||||||
- "${MINIO_PORT}:9000"
|
- "${MINIO_PORT}:9000"
|
||||||
environment:
|
environment:
|
||||||
@ -206,6 +216,7 @@ services:
|
|||||||
- MINIO_SECRET_KEY=secretkey
|
- MINIO_SECRET_KEY=secretkey
|
||||||
networks:
|
networks:
|
||||||
- frontend
|
- frontend
|
||||||
|
- backend
|
||||||
|
|
||||||
### MySQL Container #########################################
|
### MySQL Container #########################################
|
||||||
|
|
||||||
@ -419,7 +430,7 @@ services:
|
|||||||
beanstalkd-console:
|
beanstalkd-console:
|
||||||
build: ./beanstalkd-console
|
build: ./beanstalkd-console
|
||||||
ports:
|
ports:
|
||||||
- "2080:2080"
|
- "${BEANSTALKD_CONSOLE_HOST_PORT}:2080"
|
||||||
depends_on:
|
depends_on:
|
||||||
- beanstalkd
|
- beanstalkd
|
||||||
networks:
|
networks:
|
||||||
@ -501,12 +512,12 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- cluster.name=laradock-cluster
|
- cluster.name=laradock-cluster
|
||||||
- bootstrap.memory_lock=true
|
- bootstrap.memory_lock=true
|
||||||
- "ES_JAVA_OPTS=-Xms256m -Xmx256m"
|
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
|
||||||
ulimits:
|
ulimits:
|
||||||
memlock:
|
memlock:
|
||||||
soft: -1
|
soft: -1
|
||||||
hard: -1
|
hard: -1
|
||||||
mem_limit: 512m
|
mem_limit: 1024m
|
||||||
ports:
|
ports:
|
||||||
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
|
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
|
||||||
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
|
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
|
||||||
@ -614,9 +625,9 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- frontend
|
- frontend
|
||||||
|
|
||||||
### Balancer Haproxy ##########################################
|
### HAProxy Load Balancer ####################################
|
||||||
|
|
||||||
balancer:
|
haproxy:
|
||||||
build: ./haproxy
|
build: ./haproxy
|
||||||
ports:
|
ports:
|
||||||
- "${HAPROXY_HOST_HTTP_PORT}:8085"
|
- "${HAPROXY_HOST_HTTP_PORT}:8085"
|
||||||
@ -668,6 +679,21 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- frontend
|
- frontend
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
|
### Solr Container #########################################
|
||||||
|
|
||||||
|
solr:
|
||||||
|
build:
|
||||||
|
context: ./solr
|
||||||
|
args:
|
||||||
|
- SOLR_VERSION=${SOLR_VERSION}
|
||||||
|
- SOLR_DATAIMPORTHANDLER_MYSQL=${SOLR_DATAIMPORTHANDLER_MYSQL}
|
||||||
|
volumes:
|
||||||
|
- ${DATA_SAVE_PATH}/solr:/opt/solr/server/solr/mycores
|
||||||
|
ports:
|
||||||
|
- "${SOLR_PORT}:8983"
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
### AWS EB-CLI ####
|
### AWS EB-CLI ####
|
||||||
aws:
|
aws:
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
version: "2"
|
version: "2"
|
||||||
|
|
||||||
options:
|
options:
|
||||||
verbose: true
|
verbose: false
|
||||||
syncs:
|
syncs:
|
||||||
applications-docker-sync: # name of the intermediary sync volume
|
applications-docker-sync: # name of the intermediary sync volume
|
||||||
compose-dev-file-path: 'docker-compose.sync.yml' # docker-compose override file
|
compose-dev-file-path: 'docker-compose.sync.yml' # docker-compose override file
|
||||||
|
39
env-example
39
env-example
@ -2,20 +2,15 @@
|
|||||||
# General Setup
|
# General Setup
|
||||||
###########################################################
|
###########################################################
|
||||||
|
|
||||||
### Docker compose files ###############################################################################################
|
|
||||||
# Select which docker-compose files to include.
|
|
||||||
|
|
||||||
COMPOSE_FILE=docker-compose.yml:docker-compose.dev.yml
|
|
||||||
|
|
||||||
### Application Path ###################################################################################################
|
### Application Path ###################################################################################################
|
||||||
# Point to your code, will be available at `/var/www`.
|
# Point to your code, will be available at `/var/www`.
|
||||||
|
|
||||||
APPLICATION=../
|
APPLICATION=../
|
||||||
|
|
||||||
### PHP Version ########################################################################################################
|
### PHP Version ########################################################################################################
|
||||||
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 71 - 70 - 56
|
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 72 - 71 - 70 - 56
|
||||||
|
|
||||||
PHP_VERSION=71
|
PHP_VERSION=72
|
||||||
|
|
||||||
### PHP Interpreter ####################################################################################################
|
### PHP Interpreter ####################################################################################################
|
||||||
# Select the PHP Interpreter. Accepted values: hhvm - php-fpm
|
# Select the PHP Interpreter. Accepted values: hhvm - php-fpm
|
||||||
@ -27,6 +22,14 @@ PHP_INTERPRETER=php-fpm
|
|||||||
|
|
||||||
DATA_SAVE_PATH=~/.laradock/data
|
DATA_SAVE_PATH=~/.laradock/data
|
||||||
|
|
||||||
|
### Docker compose files ###############################################################################################
|
||||||
|
# Select which docker-compose files to include.
|
||||||
|
# If using docker-sync. Set the value to: docker-compose.yml:docker-compose.dev.yml:docker-compose.sync.yml
|
||||||
|
# Change the separator from : to ; on Windows
|
||||||
|
|
||||||
|
COMPOSE_PATH_SEPARATOR=:
|
||||||
|
COMPOSE_FILE=docker-compose.yml:docker-compose.dev.yml
|
||||||
|
|
||||||
### Docker Host IP #####################################################################################################
|
### Docker Host IP #####################################################################################################
|
||||||
# Enter your Docker Host IP (will be appended to /etc/hosts). Default is `10.0.75.1`
|
# Enter your Docker Host IP (will be appended to /etc/hosts). Default is `10.0.75.1`
|
||||||
|
|
||||||
@ -42,6 +45,11 @@ PHP_IDE_CONFIG=serverName=laradock
|
|||||||
|
|
||||||
COMPOSE_CONVERT_WINDOWS_PATHS=1
|
COMPOSE_CONVERT_WINDOWS_PATHS=1
|
||||||
|
|
||||||
|
### Environment ########################################################################################################
|
||||||
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
|
|
||||||
|
CHANGE_SOURCE=false
|
||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
###########################################################
|
###########################################################
|
||||||
@ -55,19 +63,23 @@ WORKSPACE_INSTALL_LDAP=false
|
|||||||
WORKSPACE_INSTALL_SOAP=false
|
WORKSPACE_INSTALL_SOAP=false
|
||||||
WORKSPACE_INSTALL_IMAP=false
|
WORKSPACE_INSTALL_IMAP=false
|
||||||
WORKSPACE_INSTALL_MONGO=false
|
WORKSPACE_INSTALL_MONGO=false
|
||||||
|
WORKSPACE_INSTALL_AMQP=false
|
||||||
WORKSPACE_INSTALL_PHPREDIS=false
|
WORKSPACE_INSTALL_PHPREDIS=false
|
||||||
WORKSPACE_INSTALL_MSSQL=false
|
WORKSPACE_INSTALL_MSSQL=false
|
||||||
WORKSPACE_INSTALL_NODE=false
|
WORKSPACE_INSTALL_NODE=false
|
||||||
|
WORKSPACE_NPM_REGISTRY=
|
||||||
WORKSPACE_INSTALL_YARN=false
|
WORKSPACE_INSTALL_YARN=false
|
||||||
WORKSPACE_INSTALL_DRUSH=false
|
WORKSPACE_INSTALL_DRUSH=false
|
||||||
WORKSPACE_INSTALL_DRUPAL_CONSOLE=false
|
WORKSPACE_INSTALL_DRUPAL_CONSOLE=false
|
||||||
WORKSPACE_INSTALL_AEROSPIKE=false
|
WORKSPACE_INSTALL_AEROSPIKE=false
|
||||||
WORKSPACE_INSTALL_V8JS=false
|
WORKSPACE_INSTALL_V8JS=false
|
||||||
WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
|
WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
|
||||||
|
WORKSPACE_COMPOSER_REPO_PACKAGIST=
|
||||||
WORKSPACE_INSTALL_WORKSPACE_SSH=false
|
WORKSPACE_INSTALL_WORKSPACE_SSH=false
|
||||||
WORKSPACE_INSTALL_LARAVEL_ENVOY=false
|
WORKSPACE_INSTALL_LARAVEL_ENVOY=false
|
||||||
WORKSPACE_INSTALL_LARAVEL_INSTALLER=false
|
WORKSPACE_INSTALL_LARAVEL_INSTALLER=false
|
||||||
WORKSPACE_INSTALL_DEPLOYER=false
|
WORKSPACE_INSTALL_DEPLOYER=false
|
||||||
|
WORKSPACE_INSTALL_PRESTISSIMO=false
|
||||||
WORKSPACE_INSTALL_LINUXBREW=false
|
WORKSPACE_INSTALL_LINUXBREW=false
|
||||||
WORKSPACE_INSTALL_MC=false
|
WORKSPACE_INSTALL_MC=false
|
||||||
WORKSPACE_INSTALL_SYMFONY=false
|
WORKSPACE_INSTALL_SYMFONY=false
|
||||||
@ -77,6 +89,7 @@ WORKSPACE_INSTALL_IMAGEMAGICK=false
|
|||||||
WORKSPACE_INSTALL_TERRAFORM=false
|
WORKSPACE_INSTALL_TERRAFORM=false
|
||||||
WORKSPACE_INSTALL_DUSK_DEPS=false
|
WORKSPACE_INSTALL_DUSK_DEPS=false
|
||||||
WORKSPACE_INSTALL_PG_CLIENT=false
|
WORKSPACE_INSTALL_PG_CLIENT=false
|
||||||
|
WORKSPACE_INSTALL_SWOOLE=false
|
||||||
WORKSPACE_PUID=1000
|
WORKSPACE_PUID=1000
|
||||||
WORKSPACE_PGID=1000
|
WORKSPACE_PGID=1000
|
||||||
WORKSPACE_CHROME_DRIVER_VERSION=2.32
|
WORKSPACE_CHROME_DRIVER_VERSION=2.32
|
||||||
@ -88,11 +101,14 @@ WORKSPACE_SSH_PORT=2222
|
|||||||
### PHP_FPM ############################################################################################################
|
### PHP_FPM ############################################################################################################
|
||||||
|
|
||||||
PHP_FPM_INSTALL_XDEBUG=false
|
PHP_FPM_INSTALL_XDEBUG=false
|
||||||
|
PHP_FPM_INSTALL_IMAP=false
|
||||||
PHP_FPM_INSTALL_MONGO=false
|
PHP_FPM_INSTALL_MONGO=false
|
||||||
|
PHP_FPM_INSTALL_AMQP=false
|
||||||
PHP_FPM_INSTALL_MSSQL=false
|
PHP_FPM_INSTALL_MSSQL=false
|
||||||
PHP_FPM_INSTALL_SOAP=false
|
PHP_FPM_INSTALL_SOAP=false
|
||||||
PHP_FPM_INSTALL_ZIP_ARCHIVE=false
|
PHP_FPM_INSTALL_ZIP_ARCHIVE=false
|
||||||
PHP_FPM_INSTALL_BCMATH=false
|
PHP_FPM_INSTALL_BCMATH=false
|
||||||
|
PHP_FPM_INSTALL_GMP=false
|
||||||
PHP_FPM_INSTALL_PHPREDIS=false
|
PHP_FPM_INSTALL_PHPREDIS=false
|
||||||
PHP_FPM_INSTALL_MEMCACHED=false
|
PHP_FPM_INSTALL_MEMCACHED=false
|
||||||
PHP_FPM_INSTALL_OPCACHE=false
|
PHP_FPM_INSTALL_OPCACHE=false
|
||||||
@ -131,10 +147,11 @@ APACHE_SITES_PATH=./apache2/sites
|
|||||||
APACHE_PHP_UPSTREAM_CONTAINER=php-fpm
|
APACHE_PHP_UPSTREAM_CONTAINER=php-fpm
|
||||||
APACHE_PHP_UPSTREAM_PORT=9000
|
APACHE_PHP_UPSTREAM_PORT=9000
|
||||||
APACHE_PHP_UPSTREAM_TIMEOUT=60
|
APACHE_PHP_UPSTREAM_TIMEOUT=60
|
||||||
|
APACHE_DOCUMENT_ROOT=/var/www/
|
||||||
|
|
||||||
### MYSQL ##############################################################################################################
|
### MYSQL ##############################################################################################################
|
||||||
|
|
||||||
MYSQL_VERSION=8.0
|
MYSQL_VERSION=latest
|
||||||
MYSQL_DATABASE=default
|
MYSQL_DATABASE=default
|
||||||
MYSQL_USER=default
|
MYSQL_USER=default
|
||||||
MYSQL_PASSWORD=secret
|
MYSQL_PASSWORD=secret
|
||||||
@ -311,6 +328,12 @@ CADDY_CUSTOM_CADDYFILE=./caddy/Caddyfile
|
|||||||
|
|
||||||
LARAVEL_ECHO_SERVER_PORT=6001
|
LARAVEL_ECHO_SERVER_PORT=6001
|
||||||
|
|
||||||
|
### SOLR ###############################################################################################################
|
||||||
|
|
||||||
|
SOLR_VERSION=5.5
|
||||||
|
SOLR_PORT=8983
|
||||||
|
SOLR_DATAIMPORTHANDLER_MYSQL=false
|
||||||
|
|
||||||
### DOCKER-SYNC ################################################################################################
|
### DOCKER-SYNC ################################################################################################
|
||||||
|
|
||||||
# osx: 'native_osx' (default)
|
# osx: 'native_osx' (default)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM dockercloud/haproxy:latest
|
FROM dockercloud/haproxy:latest
|
||||||
|
|
||||||
MAINTAINER ZeroC0D3 Team<zeroc0d3.team@gmail.com>
|
LABEL maintainer="ZeroC0D3 Team<zeroc0d3.team@gmail.com>"
|
||||||
|
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
@ -1,11 +1,12 @@
|
|||||||
FROM ubuntu:14.04
|
FROM ubuntu:14.04
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
RUN apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449
|
RUN apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449
|
||||||
|
|
||||||
RUN apt-get update -y \
|
RUN apt-get update -y \
|
||||||
&& apt-get install -y software-properties-common \
|
&& apt-get install -y software-properties-common wget \
|
||||||
|
&& wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add - \
|
||||||
&& add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main" \
|
&& add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main" \
|
||||||
&& apt-get update -y \
|
&& apt-get update -y \
|
||||||
&& apt-get install -y hhvm \
|
&& apt-get install -y hhvm \
|
||||||
|
@ -36,10 +36,12 @@ COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-agent-port.groov
|
|||||||
|
|
||||||
# jenkins version being bundled in this docker image
|
# jenkins version being bundled in this docker image
|
||||||
ARG JENKINS_VERSION
|
ARG JENKINS_VERSION
|
||||||
ENV JENKINS_VERSION ${JENKINS_VERSION:-2.73.2}
|
ENV JENKINS_VERSION ${JENKINS_VERSION:-2.89.2}
|
||||||
|
|
||||||
# jenkins.war checksum, download will be validated using it
|
# jenkins.war checksum, download will be validated using it
|
||||||
ARG JENKINS_SHA=f6d1351beef34d980b32f8c463be505445f637e2fc62156fecd42891c53c97d3
|
# 2.89.2
|
||||||
|
ARG JENKINS_SHA=014f669f32bc6e925e926e260503670b32662f006799b133a031a70a794c8a14
|
||||||
|
|
||||||
|
|
||||||
# Can be used to customize where jenkins.war get downloaded from
|
# Can be used to customize where jenkins.war get downloaded from
|
||||||
ARG JENKINS_URL=https://repo.jenkins-ci.org/public/org/jenkins-ci/main/jenkins-war/${JENKINS_VERSION}/jenkins-war-${JENKINS_VERSION}.war
|
ARG JENKINS_URL=https://repo.jenkins-ci.org/public/org/jenkins-ci/main/jenkins-war/${JENKINS_VERSION}/jenkins-war-${JENKINS_VERSION}.war
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM djfarrelly/maildev
|
FROM djfarrelly/maildev
|
||||||
|
|
||||||
MAINTAINER Maxime Hélias <maximehelias16@gmail.com>
|
LABEL maintainer="Maxime Hélias <maximehelias16@gmail.com>"
|
||||||
|
|
||||||
EXPOSE 80 25
|
EXPOSE 80 25
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM mailhog/mailhog
|
FROM mailhog/mailhog
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
CMD ["Mailhog"]
|
CMD ["Mailhog"]
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM mariadb:latest
|
FROM mariadb:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
ADD my.cnf /etc/mysql/conf.d/my.cnf
|
ADD my.cnf /etc/mysql/conf.d/my.cnf
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM memcached:latest
|
FROM memcached:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
CMD ["memcached"]
|
CMD ["memcached"]
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM minio/minio
|
FROM minio/minio
|
||||||
|
|
||||||
MAINTAINER Thor Erik Lie <thor@thorerik.com>
|
LABEL maintainer="Thor Erik Lie <thor@thorerik.com>"
|
||||||
|
|
||||||
ENTRYPOINT ["minio", "server", "/export"]
|
ENTRYPOINT ["minio", "server", "/export"]
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM mongo:latest
|
FROM mongo:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
#COPY mongo.conf /usr/local/etc/mongo/mongo.conf
|
#COPY mongo.conf /usr/local/etc/mongo/mongo.conf
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM microsoft/mssql-server-linux
|
FROM microsoft/mssql-server-linux
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
# Create config directory
|
# Create config directory
|
||||||
# an set it as WORKDIR
|
# an set it as WORKDIR
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ARG MYSQL_VERSION=8.0
|
ARG MYSQL_VERSION=latest
|
||||||
FROM mysql:${MYSQL_VERSION}
|
FROM mysql:${MYSQL_VERSION}
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Set Timezone
|
# Set Timezone
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM tpires/neo4j
|
FROM tpires/neo4j
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
VOLUME /var/lib/neo4j/data
|
VOLUME /var/lib/neo4j/data
|
||||||
|
|
||||||
|
@ -1,17 +1,25 @@
|
|||||||
FROM nginx:alpine
|
FROM nginx:alpine
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
ADD nginx.conf /etc/nginx/
|
ADD nginx.conf /etc/nginx/
|
||||||
|
|
||||||
ARG PHP_UPSTREAM_CONTAINER=php-fpm
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
ARG PHP_UPSTREAM_PORT=9000
|
|
||||||
|
ARG CHANGE_SOURCE=false
|
||||||
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
|
# Change application source from dl-cdn.alpinelinux.org to aliyun source
|
||||||
|
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories \
|
||||||
|
;fi
|
||||||
|
|
||||||
RUN apk update \
|
RUN apk update \
|
||||||
&& apk upgrade \
|
&& apk upgrade \
|
||||||
&& apk add --no-cache bash \
|
&& apk add --no-cache bash \
|
||||||
&& adduser -D -H -u 1000 -s /bin/bash www-data
|
&& adduser -D -H -u 1000 -s /bin/bash www-data
|
||||||
|
|
||||||
|
ARG PHP_UPSTREAM_CONTAINER=php-fpm
|
||||||
|
ARG PHP_UPSTREAM_PORT=9000
|
||||||
|
|
||||||
# Set upstream conf and remove the default conf
|
# Set upstream conf and remove the default conf
|
||||||
RUN echo "upstream php-upstream { server ${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}; }" > /etc/nginx/conf.d/upstream.conf \
|
RUN echo "upstream php-upstream { server ${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}; }" > /etc/nginx/conf.d/upstream.conf \
|
||||||
&& rm /etc/nginx/conf.d/default.conf
|
&& rm /etc/nginx/conf.d/default.conf
|
||||||
|
@ -3,7 +3,7 @@ server {
|
|||||||
listen 80;
|
listen 80;
|
||||||
listen [::]:80;
|
listen [::]:80;
|
||||||
|
|
||||||
server_name app.dev;
|
server_name app.test;
|
||||||
root /var/www/app;
|
root /var/www/app;
|
||||||
index index.php index.html index.htm;
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
@ -18,6 +18,8 @@ server {
|
|||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
#fixes timeouts
|
||||||
|
fastcgi_read_timeout 600;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18,6 +18,8 @@ server {
|
|||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
#fixes timeouts
|
||||||
|
fastcgi_read_timeout 600;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ server {
|
|||||||
listen 80;
|
listen 80;
|
||||||
listen [::]:80;
|
listen [::]:80;
|
||||||
|
|
||||||
server_name laravel.dev;
|
server_name laravel.test;
|
||||||
root /var/www/laravel/public;
|
root /var/www/laravel/public;
|
||||||
index index.php index.html index.htm;
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
@ -18,6 +18,8 @@ server {
|
|||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
#fixes timeouts
|
||||||
|
fastcgi_read_timeout 600;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ server {
|
|||||||
listen 80;
|
listen 80;
|
||||||
listen [::]:80;
|
listen [::]:80;
|
||||||
|
|
||||||
server_name symfony.dev;
|
server_name symfony.test;
|
||||||
root /var/www/projects/symfony/web;
|
root /var/www/projects/symfony/web;
|
||||||
index index.php index.html index.htm;
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
@ -20,6 +20,8 @@ server {
|
|||||||
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
#fixes timeouts
|
||||||
|
fastcgi_read_timeout 600;
|
||||||
fastcgi_param HTTPS off;
|
fastcgi_param HTTPS off;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM percona:5.7
|
FROM percona:5.7
|
||||||
|
|
||||||
MAINTAINER DTUNES <diegotdai@gmai.com>
|
LABEL maintainer="DTUNES <diegotdai@gmai.com>"
|
||||||
|
|
||||||
RUN chown -R mysql:root /var/lib/mysql/
|
RUN chown -R mysql:root /var/lib/mysql/
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM fenglc/pgadmin4
|
FROM fenglc/pgadmin4
|
||||||
|
|
||||||
MAINTAINER Huadong Zuo <admin@zuohuadong.cn>
|
LABEL maintainer="Huadong Zuo <admin@zuohuadong.cn>"
|
||||||
|
|
||||||
# user: pgadmin4@pgadmin.org
|
# user: pgadmin4@pgadmin.org
|
||||||
# password: admin
|
# password: admin
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/php-fpm:1.4-56
|
FROM laradock/php-fpm:2.0-56
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
@ -121,7 +121,7 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
ARG INSTALL_SWOOLE=false
|
ARG INSTALL_SWOOLE=false
|
||||||
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
# Install Php Swoole Extension
|
# Install Php Swoole Extension
|
||||||
pecl install swoole \
|
pecl install swoole-2.0.11 \
|
||||||
&& docker-php-ext-enable swoole \
|
&& docker-php-ext-enable swoole \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -136,6 +136,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
docker-php-ext-enable mongodb \
|
docker-php-ext-enable mongodb \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
# Install the amqp extension
|
||||||
|
pecl install amqp && \
|
||||||
|
docker-php-ext-enable amqp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# ZipArchive:
|
# ZipArchive:
|
||||||
#####################################
|
#####################################
|
||||||
@ -156,6 +169,19 @@ RUN if [ ${INSTALL_BCMATH} = true ]; then \
|
|||||||
docker-php-ext-install bcmath \
|
docker-php-ext-install bcmath \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# GMP (GNU Multiple Precision):
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_GMP=false
|
||||||
|
RUN if [ ${INSTALL_GMP} = true ]; then \
|
||||||
|
# Install the GMP extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libgmp-dev && \
|
||||||
|
ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h && \
|
||||||
|
docker-php-ext-install gmp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP Memcached:
|
# PHP Memcached:
|
||||||
#####################################
|
#####################################
|
||||||
@ -180,14 +206,17 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php5/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -273,11 +302,11 @@ RUN if [ ${INSTALL_LDAP} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
ARG INSTALL_MSSQL=false
|
ARG INSTALL_MSSQL=false
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
apt-get -y install php5-sybase freetds-bin \
|
||||||
apt-get -y install php5-sybase freetds-bin && \
|
&& cp /usr/lib/php5/20131226/*.so /usr/local/lib/php/extensions/no-debug-non-zts-20131226/ \
|
||||||
cp /usr/lib/php5/20131226/*.so /usr/local/lib/php/extensions/no-debug-non-zts-20131226/ && \
|
&& docker-php-ext-enable pdo_dblib mssql \
|
||||||
docker-php-ext-enable mssql pdo pdo_dblib \
|
&& php -m | grep -q 'mssql' \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -299,11 +328,30 @@ ARG INSTALL_IMAGEMAGICK=false
|
|||||||
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
apt-get update -y && \
|
apt-get update -y && \
|
||||||
apt-get install -y libmagickwand-dev imagemagick && \
|
apt-get install -y libmagickwand-dev imagemagick && \
|
||||||
pecl install imagick && \
|
pecl install imagick && \
|
||||||
docker-php-ext-enable imagick \
|
docker-php-ext-enable imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# IMAP:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_IMAP=false
|
||||||
|
ENV INSTALL_IMAP ${INSTALL_IMAP}
|
||||||
|
RUN if [ ${INSTALL_IMAP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y libc-client-dev libkrb5-dev && \
|
||||||
|
rm -r /var/lib/apt/lists/* && \
|
||||||
|
docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
|
||||||
|
docker-php-ext-install imap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 5.6."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/php-fpm:1.4-70
|
FROM laradock/php-fpm:2.0-70
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
@ -133,6 +133,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
docker-php-ext-enable mongodb \
|
docker-php-ext-enable mongodb \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
# Install the amqp extension
|
||||||
|
pecl install amqp && \
|
||||||
|
docker-php-ext-enable amqp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# ZipArchive:
|
# ZipArchive:
|
||||||
#####################################
|
#####################################
|
||||||
@ -153,6 +166,18 @@ RUN if [ ${INSTALL_BCMATH} = true ]; then \
|
|||||||
docker-php-ext-install bcmath \
|
docker-php-ext-install bcmath \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# GMP (GNU Multiple Precision):
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_GMP=false
|
||||||
|
RUN if [ ${INSTALL_GMP} = true ]; then \
|
||||||
|
# Install the GMP extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libgmp-dev && \
|
||||||
|
docker-php-ext-install gmp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP Memcached:
|
# PHP Memcached:
|
||||||
#####################################
|
#####################################
|
||||||
@ -188,12 +213,15 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
@ -280,28 +308,27 @@ RUN if [ ${INSTALL_LDAP} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
# SQL SERVER:
|
# SQL SERVER:
|
||||||
#####################################
|
#####################################
|
||||||
|
|
||||||
ARG INSTALL_MSSQL=false
|
ARG INSTALL_MSSQL=false
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
#####################################
|
#####################################
|
||||||
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
||||||
#####################################
|
#####################################
|
||||||
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
||||||
apt-get update -yqq \
|
apt-get update -yqq \
|
||||||
&& apt-get install -y apt-transport-https \
|
&& apt-get install -y apt-transport-https \
|
||||||
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||||
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||||
&& apt-get update -yqq \
|
&& apt-get update -yqq \
|
||||||
|
|
||||||
# Install Dependencies
|
# Install Dependencies
|
||||||
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
||||||
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
&& locale-gen \
|
&& locale-gen \
|
||||||
|
|
||||||
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
||||||
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
||||||
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -328,6 +355,25 @@ RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
|||||||
docker-php-ext-enable imagick \
|
docker-php-ext-enable imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# IMAP:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_IMAP=false
|
||||||
|
ENV INSTALL_IMAP ${INSTALL_IMAP}
|
||||||
|
RUN if [ ${INSTALL_IMAP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y libc-client-dev libkrb5-dev && \
|
||||||
|
rm -r /var/lib/apt/lists/* && \
|
||||||
|
docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
|
||||||
|
docker-php-ext-install imap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.0."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/php-fpm:1.4-71
|
FROM laradock/php-fpm:2.0-71
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
@ -133,6 +133,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
docker-php-ext-enable mongodb \
|
docker-php-ext-enable mongodb \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
# Install the amqp extension
|
||||||
|
pecl install amqp && \
|
||||||
|
docker-php-ext-enable amqp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# ZipArchive:
|
# ZipArchive:
|
||||||
#####################################
|
#####################################
|
||||||
@ -153,6 +166,18 @@ RUN if [ ${INSTALL_BCMATH} = true ]; then \
|
|||||||
docker-php-ext-install bcmath \
|
docker-php-ext-install bcmath \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# GMP (GNU Multiple Precision):
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_GMP=false
|
||||||
|
RUN if [ ${INSTALL_GMP} = true ]; then \
|
||||||
|
# Install the GMP extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libgmp-dev && \
|
||||||
|
docker-php-ext-install gmp \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP Memcached:
|
# PHP Memcached:
|
||||||
#####################################
|
#####################################
|
||||||
@ -188,18 +213,15 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Fix dependencies for PHPUnit within aerospike extension
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
apt-get update -yqq && \
|
apt-get update -yqq && \
|
||||||
apt-get -y install sudo wget && \
|
apt-get -y install sudo wget && \
|
||||||
|
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
@ -211,10 +233,7 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
|||||||
&& make install \
|
&& make install \
|
||||||
) \
|
) \
|
||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
&& docker-php-ext-enable aerospike \
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
|
||||||
rm /usr/local/etc/php/conf.d/aerospike.ini \
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -289,26 +308,27 @@ RUN if [ ${INSTALL_LDAP} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
# SQL SERVER:
|
# SQL SERVER:
|
||||||
#####################################
|
#####################################
|
||||||
|
|
||||||
ARG INSTALL_MSSQL=false
|
ARG INSTALL_MSSQL=false
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
#####################################
|
#####################################
|
||||||
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
||||||
#####################################
|
#####################################
|
||||||
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
||||||
apt-get update -yqq && apt-get install -y apt-transport-https \
|
apt-get update -yqq \
|
||||||
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
&& apt-get install -y apt-transport-https \
|
||||||
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||||
&& apt-get update -yqq \
|
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||||
|
&& apt-get update -yqq \
|
||||||
# Install Dependencies
|
# Install Dependencies
|
||||||
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
||||||
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen \
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
|
&& locale-gen \
|
||||||
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
||||||
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
||||||
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -335,6 +355,25 @@ RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
|||||||
docker-php-ext-enable imagick \
|
docker-php-ext-enable imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# IMAP:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_IMAP=false
|
||||||
|
ENV INSTALL_IMAP ${INSTALL_IMAP}
|
||||||
|
RUN if [ ${INSTALL_IMAP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y libc-client-dev libkrb5-dev && \
|
||||||
|
rm -r /var/lib/apt/lists/* && \
|
||||||
|
docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
|
||||||
|
docker-php-ext-install imap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.1."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
397
php-fpm/Dockerfile-72
Normal file
397
php-fpm/Dockerfile-72
Normal file
@ -0,0 +1,397 @@
|
|||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Image Setup
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# To edit the 'php-fpm' base Image, visit its repository on Github
|
||||||
|
# https://github.com/Laradock/php-fpm
|
||||||
|
#
|
||||||
|
# To change its version, see the available Tags on the Docker Hub:
|
||||||
|
# https://hub.docker.com/r/laradock/php-fpm/tags/
|
||||||
|
#
|
||||||
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
|
#
|
||||||
|
|
||||||
|
FROM laradock/php-fpm:2.0-72
|
||||||
|
|
||||||
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Mandatory Software's Installation
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Mandatory Software's such as ("mcrypt", "pdo_mysql", "libssl-dev", ....)
|
||||||
|
# are installed on the base image 'laradock/php-fpm' image. If you want
|
||||||
|
# to add more Software's or remove existing one, you need to edit the
|
||||||
|
# base image (https://github.com/Laradock/php-fpm).
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Optional Software's Installation
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Optional Software's will only be installed if you set them to `true`
|
||||||
|
# in the `docker-compose.yml` before the build.
|
||||||
|
# Example:
|
||||||
|
# - INSTALL_ZIP_ARCHIVE=true
|
||||||
|
#
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SOAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SOAP=false
|
||||||
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
|
# Install the soap extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install libxml2-dev php-soap && \
|
||||||
|
docker-php-ext-install soap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# pgsql
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_PGSQL=false
|
||||||
|
RUN if [ ${INSTALL_PGSQL} = true ]; then \
|
||||||
|
# Install the pgsql extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
docker-php-ext-install pgsql \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# pgsql client
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_PG_CLIENT=false
|
||||||
|
RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
|
||||||
|
# Create folders if not exists (https://github.com/tianon/docker-brew-debian/issues/65)
|
||||||
|
mkdir -p /usr/share/man/man1 && \
|
||||||
|
mkdir -p /usr/share/man/man7 && \
|
||||||
|
# Install the pgsql client
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y postgresql-client \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# xDebug:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_XDEBUG=false
|
||||||
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
|
# Install the xdebug extension
|
||||||
|
pecl install xdebug && \
|
||||||
|
docker-php-ext-enable xdebug \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Copy xdebug configuration for remote debugging
|
||||||
|
COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Blackfire:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_BLACKFIRE=false
|
||||||
|
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
||||||
|
version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;") \
|
||||||
|
&& curl -A "Docker" -o /tmp/blackfire-probe.tar.gz -D - -L -s https://blackfire.io/api/v1/releases/probe/php/linux/amd64/$version \
|
||||||
|
&& tar zxpf /tmp/blackfire-probe.tar.gz -C /tmp \
|
||||||
|
&& mv /tmp/blackfire-*.so $(php -r "echo ini_get('extension_dir');")/blackfire.so \
|
||||||
|
&& printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8707\n" > $PHP_INI_DIR/conf.d/blackfire.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP REDIS EXTENSION FOR PHP 7.0
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl install swoole \
|
||||||
|
&& docker-php-ext-enable swoole \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# MongoDB:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_MONGO=false
|
||||||
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
|
# Install the mongodb extension
|
||||||
|
pecl install mongodb && \
|
||||||
|
docker-php-ext-enable mongodb \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
# Install the amqp extension
|
||||||
|
pecl install amqp && \
|
||||||
|
docker-php-ext-enable amqp \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# ZipArchive:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_ZIP_ARCHIVE=false
|
||||||
|
RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
|
||||||
|
# Install the zip extension
|
||||||
|
docker-php-ext-install zip \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# bcmath:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_BCMATH=false
|
||||||
|
RUN if [ ${INSTALL_BCMATH} = true ]; then \
|
||||||
|
# Install the bcmath extension
|
||||||
|
docker-php-ext-install bcmath \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# GMP (GNU Multiple Precision):
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_GMP=false
|
||||||
|
RUN if [ ${INSTALL_GMP} = true ]; then \
|
||||||
|
# Install the GMP extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libgmp-dev && \
|
||||||
|
docker-php-ext-install gmp \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP Memcached:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_MEMCACHED=false
|
||||||
|
RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
|
||||||
|
# Install the php memcached extension
|
||||||
|
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
|
||||||
|
&& mkdir -p memcached \
|
||||||
|
&& tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \
|
||||||
|
&& ( \
|
||||||
|
cd memcached \
|
||||||
|
&& phpize \
|
||||||
|
&& ./configure \
|
||||||
|
&& make -j$(nproc) \
|
||||||
|
&& make install \
|
||||||
|
) \
|
||||||
|
&& rm -r memcached \
|
||||||
|
&& rm /tmp/memcached.tar.gz \
|
||||||
|
&& docker-php-ext-enable memcached \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Exif:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_EXIF=false
|
||||||
|
RUN if [ ${INSTALL_EXIF} = true ]; then \
|
||||||
|
# Enable Exif PHP extentions requirements
|
||||||
|
docker-php-ext-install exif \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP Aerospike:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_AEROSPIKE=false
|
||||||
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
|
# Install the php aerospike extension (using 7.2.0-in-progress branch until support for 7.2 on master)
|
||||||
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/7.2.0-in-progress.tar.gz" \
|
||||||
|
&& mkdir -p aerospike-client-php \
|
||||||
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
|
&& ( \
|
||||||
|
cd aerospike-client-php/src \
|
||||||
|
&& phpize \
|
||||||
|
&& ./build.sh \
|
||||||
|
&& make install \
|
||||||
|
) \
|
||||||
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
|
&& docker-php-ext-enable aerospike \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Opcache:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_OPCACHE=false
|
||||||
|
RUN if [ ${INSTALL_OPCACHE} = true ]; then \
|
||||||
|
docker-php-ext-install opcache \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Copy opcache configration
|
||||||
|
COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Mysqli Modifications:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_MYSQLI=false
|
||||||
|
RUN if [ ${INSTALL_MYSQLI} = true ]; then \
|
||||||
|
docker-php-ext-install mysqli \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Tokenizer Modifications:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_TOKENIZER=false
|
||||||
|
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 update -yqq && \
|
||||||
|
apt-get install -y zlib1g-dev libicu-dev g++ && \
|
||||||
|
docker-php-ext-configure intl && \
|
||||||
|
docker-php-ext-install intl \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# GHOSTSCRIPT:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_GHOSTSCRIPT=false
|
||||||
|
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
||||||
|
# Install the ghostscript extension
|
||||||
|
# for PDF editing
|
||||||
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y \
|
||||||
|
poppler-utils \
|
||||||
|
ghostscript \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
|
||||||
|
docker-php-ext-install ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
||||||
|
#####################################
|
||||||
|
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
||||||
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y apt-transport-https gnupg \
|
||||||
|
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||||
|
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
# Install Dependencies
|
||||||
|
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
||||||
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
|
&& locale-gen \
|
||||||
|
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
||||||
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
|
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
||||||
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Image optimizers:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_IMAGE_OPTIMIZERS=false
|
||||||
|
ENV INSTALL_IMAGE_OPTIMIZERS ${INSTALL_IMAGE_OPTIMIZERS}
|
||||||
|
RUN if [ ${INSTALL_IMAGE_OPTIMIZERS} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y --force-yes jpegoptim optipng pngquant gifsicle \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# ImageMagick:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_IMAGEMAGICK=false
|
||||||
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
|
apt-get update -y && \
|
||||||
|
apt-get install -y libmagickwand-dev imagemagick && \
|
||||||
|
pecl install imagick && \
|
||||||
|
docker-php-ext-enable imagick \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# IMAP:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_IMAP=false
|
||||||
|
ENV INSTALL_IMAP ${INSTALL_IMAP}
|
||||||
|
RUN if [ ${INSTALL_IMAP} = true ]; then \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y libc-client-dev libkrb5-dev && \
|
||||||
|
rm -r /var/lib/apt/lists/* && \
|
||||||
|
docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
|
||||||
|
docker-php-ext-install imap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.2."
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Final Touch
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
||||||
|
ADD ./xlaravel.pool.conf /usr/local/etc/php-fpm.d/
|
||||||
|
|
||||||
|
#RUN rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
WORKDIR /var/www
|
||||||
|
|
||||||
|
CMD ["php-fpm"]
|
||||||
|
|
||||||
|
EXPOSE 9000
|
@ -4,10 +4,13 @@ log_errors=On
|
|||||||
|
|
||||||
; Maximum amount of memory a script may consume (128MB)
|
; Maximum amount of memory a script may consume (128MB)
|
||||||
; http://php.net/memory-limit
|
; http://php.net/memory-limit
|
||||||
memory_limit = 128M
|
memory_limit = 256M
|
||||||
; Maximum allowed size for uploaded files.
|
; Maximum allowed size for uploaded files.
|
||||||
; http://php.net/upload-max-filesize
|
; http://php.net/upload-max-filesize
|
||||||
upload_max_filesize = 20M
|
upload_max_filesize = 20M
|
||||||
; Sets max size of post data allowed.
|
; Sets max size of post data allowed.
|
||||||
; http://php.net/post-max-size
|
; http://php.net/post-max-size
|
||||||
post_max_size = 20M
|
post_max_size = 20M
|
||||||
|
max_execution_time=600
|
||||||
|
default_socket_timeout=3600
|
||||||
|
request_terminate_timeout=600
|
||||||
|
@ -380,7 +380,7 @@ expose_php = On
|
|||||||
; Maximum execution time of each script, in seconds
|
; Maximum execution time of each script, in seconds
|
||||||
; http://php.net/max-execution-time
|
; http://php.net/max-execution-time
|
||||||
; Note: This directive is hardcoded to 0 for the CLI SAPI
|
; Note: This directive is hardcoded to 0 for the CLI SAPI
|
||||||
max_execution_time = 30
|
max_execution_time = 600
|
||||||
|
|
||||||
; Maximum amount of time each script may spend parsing request data. It's a good
|
; Maximum amount of time each script may spend parsing request data. It's a good
|
||||||
; idea to limit this time on productions servers in order to eliminate unexpectedly
|
; idea to limit this time on productions servers in order to eliminate unexpectedly
|
||||||
@ -390,7 +390,7 @@ max_execution_time = 30
|
|||||||
; Development Value: 60 (60 seconds)
|
; Development Value: 60 (60 seconds)
|
||||||
; Production Value: 60 (60 seconds)
|
; Production Value: 60 (60 seconds)
|
||||||
; http://php.net/max-input-time
|
; http://php.net/max-input-time
|
||||||
max_input_time = 60
|
max_input_time = 120
|
||||||
|
|
||||||
; Maximum input variable nesting level
|
; Maximum input variable nesting level
|
||||||
; http://php.net/max-input-nesting-level
|
; http://php.net/max-input-nesting-level
|
||||||
@ -401,7 +401,7 @@ max_input_time = 60
|
|||||||
|
|
||||||
; Maximum amount of memory a script may consume (128MB)
|
; Maximum amount of memory a script may consume (128MB)
|
||||||
; http://php.net/memory-limit
|
; http://php.net/memory-limit
|
||||||
memory_limit = 128M
|
memory_limit = 256M
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
; Error handling and logging ;
|
; Error handling and logging ;
|
||||||
|
@ -380,7 +380,7 @@ expose_php = On
|
|||||||
; Maximum execution time of each script, in seconds
|
; Maximum execution time of each script, in seconds
|
||||||
; http://php.net/max-execution-time
|
; http://php.net/max-execution-time
|
||||||
; Note: This directive is hardcoded to 0 for the CLI SAPI
|
; Note: This directive is hardcoded to 0 for the CLI SAPI
|
||||||
max_execution_time = 30
|
max_execution_time = 600
|
||||||
|
|
||||||
; Maximum amount of time each script may spend parsing request data. It's a good
|
; Maximum amount of time each script may spend parsing request data. It's a good
|
||||||
; idea to limit this time on productions servers in order to eliminate unexpectedly
|
; idea to limit this time on productions servers in order to eliminate unexpectedly
|
||||||
@ -390,7 +390,7 @@ max_execution_time = 30
|
|||||||
; Development Value: 60 (60 seconds)
|
; Development Value: 60 (60 seconds)
|
||||||
; Production Value: 60 (60 seconds)
|
; Production Value: 60 (60 seconds)
|
||||||
; http://php.net/max-input-time
|
; http://php.net/max-input-time
|
||||||
max_input_time = 60
|
max_input_time = 120
|
||||||
|
|
||||||
; Maximum input variable nesting level
|
; Maximum input variable nesting level
|
||||||
; http://php.net/max-input-nesting-level
|
; http://php.net/max-input-nesting-level
|
||||||
@ -401,7 +401,7 @@ max_input_time = 60
|
|||||||
|
|
||||||
; Maximum amount of memory a script may consume (128MB)
|
; Maximum amount of memory a script may consume (128MB)
|
||||||
; http://php.net/memory-limit
|
; http://php.net/memory-limit
|
||||||
memory_limit = 128M
|
memory_limit = 256M
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
; Error handling and logging ;
|
; Error handling and logging ;
|
||||||
|
1918
php-fpm/php72.ini
Normal file
1918
php-fpm/php72.ini
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,13 +1,20 @@
|
|||||||
; NOTE: The actual debug.so extention is NOT SET HERE but rather (/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini)
|
; NOTE: The actual debug.so extention is NOT SET HERE but rather (/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini)
|
||||||
|
|
||||||
|
; xdebug.remote_host=dockerhost
|
||||||
|
xdebug.remote_connect_back=1
|
||||||
|
xdebug.remote_port=9000
|
||||||
|
xdebug.idekey=PHPSTORM
|
||||||
|
|
||||||
xdebug.remote_autostart=0
|
xdebug.remote_autostart=0
|
||||||
xdebug.remote_enable=0
|
xdebug.remote_enable=0
|
||||||
xdebug.remote_connect_back=0
|
|
||||||
xdebug.cli_color=0
|
xdebug.cli_color=0
|
||||||
xdebug.profiler_enable=0
|
xdebug.profiler_enable=0
|
||||||
|
xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling"
|
||||||
|
|
||||||
xdebug.remote_handler=dbgp
|
xdebug.remote_handler=dbgp
|
||||||
xdebug.remote_mode=req
|
xdebug.remote_mode=req
|
||||||
|
|
||||||
xdebug.remote_port=9000
|
xdebug.var_display_max_children=-1
|
||||||
xdebug.remote_host=dockerhost
|
xdebug.var_display_max_data=-1
|
||||||
xdebug.idekey=PHPSTORM
|
xdebug.var_display_max_depth=-1
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
FROM php:7.0-alpine
|
FROM php:7.0-alpine
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
RUN apk --update add wget \
|
RUN apk --update add wget \
|
||||||
curl \
|
curl \
|
||||||
@ -56,6 +56,13 @@ ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisord.conf"]
|
|||||||
#
|
#
|
||||||
# -- Your awesome modifications go here -- #
|
# -- Your awesome modifications go here -- #
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Check PHP version
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.0."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
FROM php:7.1-alpine
|
FROM php:7.1-alpine
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
RUN apk --update add wget \
|
RUN apk --update add wget \
|
||||||
curl \
|
curl \
|
||||||
@ -56,6 +56,13 @@ ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisord.conf"]
|
|||||||
#
|
#
|
||||||
# -- Your awesome modifications go here -- #
|
# -- Your awesome modifications go here -- #
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Check PHP version
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.1."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
|
73
php-worker/Dockerfile-72
Normal file
73
php-worker/Dockerfile-72
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Image Setup
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
FROM php:7.2-alpine
|
||||||
|
|
||||||
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
|
RUN apk --update add wget \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
build-base \
|
||||||
|
libmemcached-dev \
|
||||||
|
libmcrypt-dev \
|
||||||
|
libxml2-dev \
|
||||||
|
zlib-dev \
|
||||||
|
autoconf \
|
||||||
|
cyrus-sasl-dev \
|
||||||
|
libgsasl-dev \
|
||||||
|
supervisor
|
||||||
|
|
||||||
|
RUN docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml
|
||||||
|
RUN pecl channel-update pecl.php.net && pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached
|
||||||
|
|
||||||
|
# Install PostgreSQL drivers:
|
||||||
|
ARG INSTALL_PGSQL=false
|
||||||
|
RUN if [ ${INSTALL_PGSQL} = true ]; then \
|
||||||
|
apk --update add postgresql-dev \
|
||||||
|
&& docker-php-ext-install pdo_pgsql \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
RUN rm /var/cache/apk/* \
|
||||||
|
&& mkdir -p /var/www
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# 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/supervisord.conf
|
||||||
|
|
||||||
|
ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c", "/etc/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 -- #
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Check PHP version
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.2."
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Final Touch
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
WORKDIR /etc/supervisor/conf.d/
|
@ -1,5 +1,11 @@
|
|||||||
[supervisord]
|
[supervisord]
|
||||||
nodaemon=true
|
nodaemon=true
|
||||||
|
[supervisorctl]
|
||||||
|
[inet_http_server]
|
||||||
|
port = 127.0.0.1:9001
|
||||||
|
[rpcinterface:supervisor]
|
||||||
|
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
||||||
|
|
||||||
[program:laravel-worker]
|
[program:laravel-worker]
|
||||||
process_name=%(program_name)s_%(process_num)02d
|
process_name=%(program_name)s_%(process_num)02d
|
||||||
command=php /var/www/artisan queue:work --sleep=3 --tries=3 --daemon
|
command=php /var/www/artisan queue:work --sleep=3 --tries=3 --daemon
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM phpmyadmin/phpmyadmin
|
FROM phpmyadmin/phpmyadmin
|
||||||
|
|
||||||
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
|
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
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM mdillon/postgis:latest
|
FROM mdillon/postgis:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
CMD ["postgres"]
|
CMD ["postgres"]
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM postgres:alpine
|
FROM postgres:alpine
|
||||||
|
|
||||||
MAINTAINER Ben M <git@bmagg.com>
|
LABEL maintainer="Ben M <git@bmagg.com>"
|
||||||
|
|
||||||
CMD ["postgres"]
|
CMD ["postgres"]
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM rabbitmq
|
FROM rabbitmq
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
RUN rabbitmq-plugins enable --offline rabbitmq_management
|
RUN rabbitmq-plugins enable --offline rabbitmq_management
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM redis:latest
|
FROM redis:latest
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
## For security settings uncomment, make the dir, copy conf, and also start with the conf, to use it
|
## For security settings uncomment, make the dir, copy conf, and also start with the conf, to use it
|
||||||
#RUN mkdir -p /usr/local/etc/redis
|
#RUN mkdir -p /usr/local/etc/redis
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM rethinkdb:latest
|
FROM rethinkdb:latest
|
||||||
|
|
||||||
MAINTAINER Cristian Mello <cristianc.mello@gmail.com>
|
LABEL maintainer="Cristian Mello <cristianc.mello@gmail.com>"
|
||||||
|
|
||||||
VOLUME /data/rethinkdb_data
|
VOLUME /data/rethinkdb_data
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM selenium/standalone-chrome
|
FROM selenium/standalone-chrome
|
||||||
|
|
||||||
MAINTAINER Edmund Luong <edmundvmluong@gmail.com>
|
LABEL maintainer="Edmund Luong <edmundvmluong@gmail.com>"
|
||||||
|
|
||||||
EXPOSE 4444
|
EXPOSE 4444
|
||||||
|
14
solr/Dockerfile
Normal file
14
solr/Dockerfile
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
ARG SOLR_VERSION=5.5
|
||||||
|
FROM solr:${SOLR_VERSION}
|
||||||
|
|
||||||
|
ARG SOLR_DATAIMPORTHANDLER_MYSQL=false
|
||||||
|
ENV SOLR_DATAIMPORTHANDLER_MYSQL ${SOLR_DATAIMPORTHANDLER_MYSQL}
|
||||||
|
|
||||||
|
# download mysql connector for dataimporthandler
|
||||||
|
RUN if [ ${SOLR_DATAIMPORTHANDLER_MYSQL} = true ]; then \
|
||||||
|
curl -L -o /tmp/mysql_connector.tar.gz "https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.45.tar.gz" \
|
||||||
|
&& mkdir /opt/solr/contrib/dataimporthandler/lib \
|
||||||
|
&& tar -zxvf /tmp/mysql_connector.tar.gz -C /opt/solr/contrib/dataimporthandler/lib "mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar" --strip-components 1 \
|
||||||
|
&& rm /tmp/mysql_connector.tar.gz \
|
||||||
|
;fi
|
||||||
|
|
6
sync.sh
6
sync.sh
@ -59,11 +59,11 @@ if [ "$1" == "up" ] ; then
|
|||||||
|
|
||||||
print_style "Initializing Docker Compose\n" "info"
|
print_style "Initializing Docker Compose\n" "info"
|
||||||
shift # removing first argument
|
shift # removing first argument
|
||||||
docker-compose -f docker-compose.yml -f docker-compose.sync.yml up -d ${@}
|
docker-compose up -d ${@}
|
||||||
|
|
||||||
elif [ "$1" == "down" ]; then
|
elif [ "$1" == "down" ]; then
|
||||||
print_style "Stopping Docker Compose\n" "info"
|
print_style "Stopping Docker Compose\n" "info"
|
||||||
docker-compose down
|
docker-compose stop
|
||||||
|
|
||||||
print_style "Stopping Docker Sync\n" "info"
|
print_style "Stopping Docker Sync\n" "info"
|
||||||
docker-sync stop
|
docker-sync stop
|
||||||
@ -86,4 +86,4 @@ else
|
|||||||
print_style "Invalid arguments.\n" "danger"
|
print_style "Invalid arguments.\n" "danger"
|
||||||
display_options
|
display_options
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM debian:latest
|
FROM debian:latest
|
||||||
|
|
||||||
MAINTAINER ZeroC0D3 Team<zeroc0d3.team@gmail.com>
|
LABEL maintainer="ZeroC0D3 Team<zeroc0d3.team@gmail.com>"
|
||||||
|
|
||||||
# Set Environment Variables
|
# Set Environment Variables
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.9-56
|
FROM laradock/workspace:2.0-56
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
# Remove Faillog and Lastlog to reduce the size of the final image.
|
# Remove Faillog and Lastlog to reduce the size of the final image.
|
||||||
RUN rm /var/log/lastlog /var/log/faillog
|
RUN rm /var/log/lastlog /var/log/faillog
|
||||||
@ -55,6 +55,7 @@ ENV PGID ${PGID}
|
|||||||
|
|
||||||
RUN groupadd -g ${PGID} laradock && \
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
useradd -u ${PUID} -g laradock -m laradock && \
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
usermod -p "*" laradock && \
|
||||||
apt-get update -yqq
|
apt-get update -yqq
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -72,6 +73,19 @@ RUN if [ ${INSTALL_SOAP} = true ]; then \
|
|||||||
apt-get -y install libxml2-dev php5.6-soap \
|
apt-get -y install libxml2-dev php5.6-soap \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
ENV INSTALL_LDAP ${INSTALL_LDAP}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
apt-get install -y php5.6-ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# IMAP:
|
# IMAP:
|
||||||
#####################################
|
#####################################
|
||||||
@ -114,6 +128,13 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
|
|||||||
composer global install \
|
composer global install \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
# Export composer vendor path
|
# Export composer vendor path
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc
|
||||||
@ -129,27 +150,30 @@ RUN chmod -R 644 /etc/cron.d
|
|||||||
#####################################
|
#####################################
|
||||||
# User Aliases
|
# User Aliases
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
COPY ./aliases.sh /root/aliases.sh
|
||||||
|
COPY ./aliases.sh /home/laradock/aliases.sh
|
||||||
|
|
||||||
|
RUN sed -i 's/\r//' /root/aliases.sh && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
chown laradock:laradock /home/laradock/aliases.sh && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc
|
||||||
|
|
||||||
USER laradock
|
USER laradock
|
||||||
COPY ./aliases.sh /home/laradock/aliases.sh
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
|
||||||
echo "" >> ~/.bashrc && \
|
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
USER root
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
@ -196,6 +220,8 @@ RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \
|
|||||||
&& rm -f /tmp/id_rsa* \
|
&& rm -f /tmp/id_rsa* \
|
||||||
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
||||||
&& chmod 400 /root/.ssh/id_rsa \
|
&& chmod 400 /root/.ssh/id_rsa \
|
||||||
|
&& cp -rf /root/.ssh /home/laradock \
|
||||||
|
&& chown -R laradock:laradock /home/laradock/.ssh \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -213,6 +239,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
ln -s /etc/php/5.6/mods-available/mongodb.ini /etc/php/5.6/cli/conf.d/30-mongodb.ini \
|
ln -s /etc/php/5.6/mods-available/mongodb.ini /etc/php/5.6/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
ENV INSTALL_AMQP ${INSTALL_AMQP}
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
pecl -q install amqp && \
|
||||||
|
echo "extension=amqp.so" >> /etc/php/5.6/mods-available/amqp.ini && \
|
||||||
|
ln -s /etc/php/5.6/mods-available/amqp.ini /etc/php/5.6/cli/conf.d/30-amqp.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP REDIS EXTENSION FOR PHP 5.6
|
# PHP REDIS EXTENSION FOR PHP 5.6
|
||||||
#####################################
|
#####################################
|
||||||
@ -226,6 +265,18 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
phpenmod redis \
|
phpenmod redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 5.6
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl -q install -f swoole-1.10.1 && \
|
||||||
|
echo "extension=swoole.so" >> /etc/php/5.6/mods-available/swoole.ini && \
|
||||||
|
ln -s /etc/php/5.6/mods-available/swoole.ini /etc/php/5.6/cli/conf.d/20-swoole.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Drush:
|
# Drush:
|
||||||
#####################################
|
#####################################
|
||||||
@ -267,14 +318,19 @@ ARG NODE_VERSION=stable
|
|||||||
ENV NODE_VERSION ${NODE_VERSION}
|
ENV NODE_VERSION ${NODE_VERSION}
|
||||||
ARG INSTALL_NODE=false
|
ARG INSTALL_NODE=false
|
||||||
ENV INSTALL_NODE ${INSTALL_NODE}
|
ENV INSTALL_NODE ${INSTALL_NODE}
|
||||||
|
ARG NPM_REGISTRY
|
||||||
|
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
||||||
ENV NVM_DIR /home/laradock/.nvm
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
RUN if [ ${INSTALL_NODE} = true ]; then \
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
# Install nvm (A Node Version Manager)
|
# Install nvm (A Node Version Manager)
|
||||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash && \
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash && \
|
||||||
. $NVM_DIR/nvm.sh && \
|
. $NVM_DIR/nvm.sh && \
|
||||||
nvm install ${NODE_VERSION} && \
|
nvm install ${NODE_VERSION} && \
|
||||||
nvm use ${NODE_VERSION} && \
|
nvm use ${NODE_VERSION} && \
|
||||||
nvm alias ${NODE_VERSION} && \
|
nvm alias ${NODE_VERSION} && \
|
||||||
|
if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi && \
|
||||||
npm install -g gulp bower vue-cli \
|
npm install -g gulp bower vue-cli \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -298,6 +354,10 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
|
|||||||
# Add PATH for node
|
# Add PATH for node
|
||||||
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
||||||
|
|
||||||
|
RUN if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
. ~/.bashrc && npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# YARN:
|
# YARN:
|
||||||
#####################################
|
#####################################
|
||||||
@ -334,15 +394,15 @@ RUN if [ ${INSTALL_YARN} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE=true
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /etc/php/5.6/cli/conf.d/aerospike.ini
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php5/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -352,10 +412,26 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
|||||||
&& make install \
|
&& make install \
|
||||||
) \
|
) \
|
||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
|
&& echo 'extension=aerospike.so' >> /etc/php/5.6/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/5.6/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/5.6/cli/conf.d/aerospike.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
#####################################
|
||||||
rm /etc/php/5.6/cli/conf.d/aerospike.ini \
|
# PHP V8JS:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_V8JS=false
|
||||||
|
ENV INSTALL_V8JS ${INSTALL_V8JS}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
|
# Install the php V8JS extension
|
||||||
|
add-apt-repository -y ppa:pinepain/libv8-archived \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
&& apt-get install -y php5.6-xml php5.6-dev php-pear libv8-dev \
|
||||||
|
&& pecl install v8js-0.6.4 \
|
||||||
|
&& echo "extension=v8js.so" >> /etc/php/5.6/cli/php.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -373,7 +449,7 @@ RUN echo "" >> ~/.bashrc && \
|
|||||||
#####################################
|
#####################################
|
||||||
USER laradock
|
USER laradock
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_ENVOY=true
|
ARG INSTALL_LARAVEL_ENVOY=false
|
||||||
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
||||||
@ -386,7 +462,14 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_INSTALLER=true
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=false
|
||||||
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
@ -411,6 +494,19 @@ RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
|||||||
composer global require "deployer/deployer" \
|
composer global require "deployer/deployer" \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Prestissimo:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_PRESTISSIMO=false
|
||||||
|
ENV INSTALL_PRESTISSIMO ${INSTALL_PRESTISSIMO}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_PRESTISSIMO} = true ]; then \
|
||||||
|
# Install Prestissimo
|
||||||
|
composer global require "hirak/prestissimo" \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Linuxbrew:
|
# Linuxbrew:
|
||||||
#####################################
|
#####################################
|
||||||
@ -420,7 +516,6 @@ ARG INSTALL_LINUXBREW=true
|
|||||||
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
# Preparation
|
# Preparation
|
||||||
apt-get upgrade -y && \
|
apt-get upgrade -y && \
|
||||||
apt-get install -y build-essential make cmake scons curl git \
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
@ -428,13 +523,10 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
gettext libtool flex bison \
|
gettext libtool flex bison \
|
||||||
libbz2-dev libcurl4-openssl-dev \
|
libbz2-dev libcurl4-openssl-dev \
|
||||||
libexpat-dev libncurses-dev && \
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
# Install the Linuxbrew
|
# Install the Linuxbrew
|
||||||
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
|
||||||
# Setup linuxbrew
|
# Setup linuxbrew
|
||||||
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
||||||
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
||||||
@ -449,9 +541,12 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
ARG INSTALL_MSSQL=false
|
ARG INSTALL_MSSQL=false
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
apt-get -y install php5.6-sybase freetds-bin freetds-common libsybdb5 \
|
apt-get -y install php5.6-sybase freetds-bin freetds-common libsybdb5 \
|
||||||
|
&& echo "extension=mssql.so" > /etc/php/5.6/cli/conf.d/20-mssql.ini \
|
||||||
&& echo "extension=pdo_dblib.so" > /etc/php/5.6/cli/conf.d/20-pdo_dblib.ini \
|
&& echo "extension=pdo_dblib.so" > /etc/php/5.6/cli/conf.d/20-pdo_dblib.ini \
|
||||||
|
&& php -m | grep -q 'mssql' \
|
||||||
|
&& php -m | grep -q 'pdo_dblib' \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -490,19 +585,15 @@ USER root
|
|||||||
ARG INSTALL_SYMFONY=false
|
ARG INSTALL_SYMFONY=false
|
||||||
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
||||||
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
||||||
|
|
||||||
mkdir -p /usr/local/bin \
|
mkdir -p /usr/local/bin \
|
||||||
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
||||||
&& chmod a+x /usr/local/bin/symfony \
|
&& chmod a+x /usr/local/bin/symfony \
|
||||||
|
|
||||||
# Symfony 3 alias
|
# Symfony 3 alias
|
||||||
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
||||||
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
# Symfony 2 alias
|
# Symfony 2 alias
|
||||||
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
||||||
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -525,7 +616,8 @@ USER root
|
|||||||
ARG INSTALL_IMAGEMAGICK=false
|
ARG INSTALL_IMAGEMAGICK=false
|
||||||
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
apt-get install -y --force-yes imagemagick php-imagick \
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y --force-yes imagemagick php-imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -559,6 +651,8 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
|
|||||||
# Dusk Dependencies:
|
# Dusk Dependencies:
|
||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
ARG CHROME_DRIVER_VERSION=stable
|
||||||
|
ENV CHROME_DRIVER_VERSION ${CHROME_DRIVER_VERSION}
|
||||||
ARG INSTALL_DUSK_DEPS=false
|
ARG INSTALL_DUSK_DEPS=false
|
||||||
ENV INSTALL_DUSK_DEPS ${INSTALL_DUSK_DEPS}
|
ENV INSTALL_DUSK_DEPS ${INSTALL_DUSK_DEPS}
|
||||||
RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
||||||
@ -569,21 +663,25 @@ RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
|||||||
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
|
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
|
||||||
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
|
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
|
||||||
xfonts-base xfonts-scalable x11-apps \
|
xfonts-base xfonts-scalable x11-apps \
|
||||||
|
|
||||||
# Install Google Chrome
|
# Install Google Chrome
|
||||||
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||||
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
&& apt-get -y -f install \
|
&& apt-get -y -f install \
|
||||||
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
&& rm google-chrome-stable_current_amd64.deb \
|
&& rm google-chrome-stable_current_amd64.deb \
|
||||||
|
|
||||||
# Install Chrome Driver
|
# Install Chrome Driver
|
||||||
&& wget https://chromedriver.storage.googleapis.com/2.31/chromedriver_linux64.zip \
|
&& wget https://chromedriver.storage.googleapis.com/${CHROME_DRIVER_VERSION}/chromedriver_linux64.zip \
|
||||||
&& unzip chromedriver_linux64.zip \
|
&& unzip chromedriver_linux64.zip \
|
||||||
&& mv chromedriver /usr/local/bin/ \
|
&& mv chromedriver /usr/local/bin/ \
|
||||||
&& rm chromedriver_linux64.zip \
|
&& rm chromedriver_linux64.zip \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 5.6."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.9-70
|
FROM laradock/workspace:2.0-70
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
# Remove Faillog and Lastlog to reduce the size of the final image.
|
# Remove Faillog and Lastlog to reduce the size of the final image.
|
||||||
RUN rm /var/log/lastlog /var/log/faillog
|
RUN rm /var/log/lastlog /var/log/faillog
|
||||||
@ -55,6 +55,7 @@ ENV PGID ${PGID}
|
|||||||
|
|
||||||
RUN groupadd -g ${PGID} laradock && \
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
useradd -u ${PUID} -g laradock -m laradock && \
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
usermod -p "*" laradock && \
|
||||||
apt-get update -yqq
|
apt-get update -yqq
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -124,6 +125,13 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
|
|||||||
composer global install \
|
composer global install \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
# Export composer vendor path
|
# Export composer vendor path
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc
|
||||||
@ -139,27 +147,30 @@ RUN chmod -R 644 /etc/cron.d
|
|||||||
#####################################
|
#####################################
|
||||||
# User Aliases
|
# User Aliases
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
COPY ./aliases.sh /root/aliases.sh
|
||||||
|
COPY ./aliases.sh /home/laradock/aliases.sh
|
||||||
|
|
||||||
|
RUN sed -i 's/\r//' /root/aliases.sh && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
chown laradock:laradock /home/laradock/aliases.sh && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc
|
||||||
|
|
||||||
USER laradock
|
USER laradock
|
||||||
COPY ./aliases.sh /home/laradock/aliases.sh
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
|
||||||
echo "" >> ~/.bashrc && \
|
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
USER root
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
@ -206,6 +217,8 @@ RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \
|
|||||||
&& rm -f /tmp/id_rsa* \
|
&& rm -f /tmp/id_rsa* \
|
||||||
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
||||||
&& chmod 400 /root/.ssh/id_rsa \
|
&& chmod 400 /root/.ssh/id_rsa \
|
||||||
|
&& cp -rf /root/.ssh /home/laradock \
|
||||||
|
&& chown -R laradock:laradock /home/laradock/.ssh \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -222,6 +235,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
ln -s /etc/php/7.0/mods-available/mongodb.ini /etc/php/7.0/cli/conf.d/30-mongodb.ini \
|
ln -s /etc/php/7.0/mods-available/mongodb.ini /etc/php/7.0/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
ENV INSTALL_AMQP ${INSTALL_AMQP}
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
pecl -q install amqp && \
|
||||||
|
echo "extension=amqp.so" >> /etc/php/7.0/mods-available/amqp.ini && \
|
||||||
|
ln -s /etc/php/7.0/mods-available/amqp.ini /etc/php/7.0/cli/conf.d/30-amqp.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP REDIS EXTENSION FOR PHP 7
|
# PHP REDIS EXTENSION FOR PHP 7
|
||||||
#####################################
|
#####################################
|
||||||
@ -235,6 +261,18 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
phpenmod redis \
|
phpenmod redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl -q install swoole && \
|
||||||
|
echo "extension=swoole.so" >> /etc/php/7.0/mods-available/swoole.ini && \
|
||||||
|
ln -s /etc/php/7.0/mods-available/swoole.ini /etc/php/7.0/cli/conf.d/20-swoole.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Drush:
|
# Drush:
|
||||||
#####################################
|
#####################################
|
||||||
@ -276,14 +314,19 @@ ARG NODE_VERSION=stable
|
|||||||
ENV NODE_VERSION ${NODE_VERSION}
|
ENV NODE_VERSION ${NODE_VERSION}
|
||||||
ARG INSTALL_NODE=false
|
ARG INSTALL_NODE=false
|
||||||
ENV INSTALL_NODE ${INSTALL_NODE}
|
ENV INSTALL_NODE ${INSTALL_NODE}
|
||||||
|
ARG NPM_REGISTRY
|
||||||
|
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
||||||
ENV NVM_DIR /home/laradock/.nvm
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
RUN if [ ${INSTALL_NODE} = true ]; then \
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
# Install nvm (A Node Version Manager)
|
# Install nvm (A Node Version Manager)
|
||||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash && \
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash && \
|
||||||
. $NVM_DIR/nvm.sh && \
|
. $NVM_DIR/nvm.sh && \
|
||||||
nvm install ${NODE_VERSION} && \
|
nvm install ${NODE_VERSION} && \
|
||||||
nvm use ${NODE_VERSION} && \
|
nvm use ${NODE_VERSION} && \
|
||||||
nvm alias ${NODE_VERSION} && \
|
nvm alias ${NODE_VERSION} && \
|
||||||
|
if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi && \
|
||||||
npm install -g gulp bower vue-cli \
|
npm install -g gulp bower vue-cli \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -307,6 +350,10 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
|
|||||||
# Add PATH for node
|
# Add PATH for node
|
||||||
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
||||||
|
|
||||||
|
RUN if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
. ~/.bashrc && npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# YARN:
|
# YARN:
|
||||||
#####################################
|
#####################################
|
||||||
@ -343,13 +390,13 @@ RUN if [ ${INSTALL_YARN} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE=true
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /etc/php/7.0/cli/conf.d/aerospike.ini
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
@ -361,10 +408,9 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
|||||||
&& make install \
|
&& make install \
|
||||||
) \
|
) \
|
||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
&& echo 'extension=aerospike.so' >> /etc/php/7.0/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/7.0/cli/conf.d/aerospike.ini \
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
&& echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/7.0/cli/conf.d/aerospike.ini \
|
||||||
rm /etc/php/7.0/cli/conf.d/aerospike.ini \
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -377,7 +423,7 @@ ENV INSTALL_V8JS ${INSTALL_V8JS}
|
|||||||
|
|
||||||
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
# Install the php V8JS extension
|
# Install the php V8JS extension
|
||||||
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
add-apt-repository -y ppa:pinepain/libv8-archived \
|
||||||
&& apt-get update -yqq \
|
&& apt-get update -yqq \
|
||||||
&& apt-get install -y php7.0-xml php7.0-dev php-pear libv8-5.4 \
|
&& apt-get install -y php7.0-xml php7.0-dev php-pear libv8-5.4 \
|
||||||
&& pecl install v8js \
|
&& pecl install v8js \
|
||||||
@ -399,7 +445,7 @@ RUN echo "" >> ~/.bashrc && \
|
|||||||
#####################################
|
#####################################
|
||||||
USER laradock
|
USER laradock
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_ENVOY=true
|
ARG INSTALL_LARAVEL_ENVOY=false
|
||||||
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
||||||
@ -412,7 +458,14 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_INSTALLER=true
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=false
|
||||||
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
@ -437,6 +490,19 @@ RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
|||||||
composer global require "deployer/deployer" \
|
composer global require "deployer/deployer" \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Prestissimo:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_PRESTISSIMO=false
|
||||||
|
ENV INSTALL_PRESTISSIMO ${INSTALL_PRESTISSIMO}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_PRESTISSIMO} = true ]; then \
|
||||||
|
# Install Prestissimo
|
||||||
|
composer global require "hirak/prestissimo" \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Linuxbrew:
|
# Linuxbrew:
|
||||||
#####################################
|
#####################################
|
||||||
@ -446,7 +512,6 @@ ARG INSTALL_LINUXBREW=true
|
|||||||
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
# Preparation
|
# Preparation
|
||||||
apt-get upgrade -y && \
|
apt-get upgrade -y && \
|
||||||
apt-get install -y build-essential make cmake scons curl git \
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
@ -454,13 +519,10 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
gettext libtool flex bison \
|
gettext libtool flex bison \
|
||||||
libbz2-dev libcurl4-openssl-dev \
|
libbz2-dev libcurl4-openssl-dev \
|
||||||
libexpat-dev libncurses-dev && \
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
# Install the Linuxbrew
|
# Install the Linuxbrew
|
||||||
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
|
||||||
# Setup linuxbrew
|
# Setup linuxbrew
|
||||||
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
||||||
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
||||||
@ -475,75 +537,35 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
ARG INSTALL_MSSQL=true
|
ARG INSTALL_MSSQL=true
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
#####################################
|
|
||||||
# Install Depenencies:
|
|
||||||
#####################################
|
|
||||||
cd / && \
|
|
||||||
apt-get install -y --force-yes wget apt-transport-https curl freetds-common libsybdb5 freetds-bin unixodbc unixodbc-dev && \
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# The following steps were taken from
|
# The following steps were taken from
|
||||||
# Microsoft's github account:
|
# https://github.com/Microsoft/msphpsql/wiki/Install-and-configuration
|
||||||
# https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways
|
|
||||||
#####################################
|
#####################################
|
||||||
|
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
|
||||||
# Add PHP 7 repository
|
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
|
||||||
# for Debian jessie
|
apt-get update && \
|
||||||
# And System upgrade
|
ACCEPT_EULA=Y apt-get install -yqq msodbcsql=13.0.1.0-1 mssql-tools=14.0.2.0-1 && \
|
||||||
cd / && \
|
apt-get install -yqq unixodbc-dev-utf16 && \
|
||||||
echo "deb http://packages.dotdeb.org jessie all" \
|
ln -sfn /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd && \
|
||||||
| tee /etc/apt/sources.list.d/dotdeb.list \
|
ln -sfn /opt/mssql-tools/bin/bcp-13.0.1.0 /usr/bin/bcp && \
|
||||||
&& wget -qO- https://www.dotdeb.org/dotdeb.gpg \
|
ACCEPT_EULA=Y apt-get install -yqq \
|
||||||
| apt-key add - \
|
unixodbc \
|
||||||
&& apt-get update -yqq \
|
unixodbc-dev \
|
||||||
&& apt-get upgrade -qq && \
|
libgss3 \
|
||||||
|
odbcinst \
|
||||||
# Install UnixODBC
|
msodbcsql \
|
||||||
# Compile odbc_config as it is not part of unixodbc package
|
locales && \
|
||||||
cd / && \
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
apt-get install -y whiptail \
|
locale-gen && \
|
||||||
unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \
|
pecl install sqlsrv-4.3.0 pdo_sqlsrv-4.3.0 && \
|
||||||
&& dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \
|
apt-get install -y locales && \
|
||||||
&& cd unixodbc-*/ \
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
&& ./configure && make && make install \
|
locale-gen && \
|
||||||
&& cp -v ./exe/odbc_config /usr/local/bin/ && \
|
echo "extension=sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-sqlsrv.ini && \
|
||||||
|
echo "extension=pdo_sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-pdo_sqlsrv.ini \
|
||||||
# Fake uname for install.sh
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
| tee /usr/local/bin/uname \
|
|
||||||
&& chmod +x /usr/local/bin/uname && \
|
|
||||||
|
|
||||||
# Microsoft ODBC Driver 13 for Linux
|
|
||||||
# Note: There's a copy of this tar on my hubiC
|
|
||||||
cd / && \
|
|
||||||
wget -nv -O msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
"https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \
|
|
||||||
&& tar -xf msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
&& cd msodbcsql-*/ \
|
|
||||||
&& ldd lib64/libmsodbcsql-13.0.so.0.0 \
|
|
||||||
&& ./install.sh install --accept-license \
|
|
||||||
&& ls -l /opt/microsoft/msodbcsql/ \
|
|
||||||
&& odbcinst -q -d -n "ODBC Driver 13 for SQL Server" && \
|
|
||||||
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Install sqlsrv y pdo_sqlsrv
|
|
||||||
# extensions:
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
pecl install sqlsrv-4.0.8 && \
|
|
||||||
pecl install pdo_sqlsrv-4.0.8 && \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Set locales for the container
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
apt-get install -y locales \
|
|
||||||
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
|
||||||
&& locale-gen \
|
|
||||||
&& echo "extension=sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-sqlsrv.ini \
|
|
||||||
&& echo "extension=pdo_sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-pdo_sqlsrv.ini \
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -580,19 +602,15 @@ USER root
|
|||||||
ARG INSTALL_SYMFONY=false
|
ARG INSTALL_SYMFONY=false
|
||||||
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
||||||
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
||||||
|
|
||||||
mkdir -p /usr/local/bin \
|
mkdir -p /usr/local/bin \
|
||||||
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
||||||
&& chmod a+x /usr/local/bin/symfony \
|
&& chmod a+x /usr/local/bin/symfony \
|
||||||
|
|
||||||
# Symfony 3 alias
|
# Symfony 3 alias
|
||||||
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
||||||
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
# Symfony 2 alias
|
# Symfony 2 alias
|
||||||
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
||||||
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -615,7 +633,8 @@ USER root
|
|||||||
ARG INSTALL_IMAGEMAGICK=false
|
ARG INSTALL_IMAGEMAGICK=false
|
||||||
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
apt-get install -y --force-yes imagemagick php-imagick \
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y --force-yes imagemagick php-imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -649,31 +668,34 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
|
|||||||
# Dusk Dependencies:
|
# Dusk Dependencies:
|
||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
ARG CHROME_DRIVER_VERSION=stable
|
||||||
|
ENV CHROME_DRIVER_VERSION ${CHROME_DRIVER_VERSION}
|
||||||
ARG INSTALL_DUSK_DEPS=false
|
ARG INSTALL_DUSK_DEPS=false
|
||||||
ENV INSTALL_DUSK_DEPS ${INSTALL_DUSK_DEPS}
|
ENV INSTALL_DUSK_DEPS ${INSTALL_DUSK_DEPS}
|
||||||
RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
||||||
# Install required packages
|
|
||||||
add-apt-repository ppa:ondrej/php \
|
add-apt-repository ppa:ondrej/php \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get -y install zip wget unzip xdg-utils \
|
&& apt-get -y install zip wget unzip xdg-utils \
|
||||||
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
|
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
|
||||||
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
|
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
|
||||||
xfonts-base xfonts-scalable x11-apps \
|
xfonts-base xfonts-scalable x11-apps \
|
||||||
|
|
||||||
# Install Google Chrome
|
|
||||||
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||||
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
&& apt-get -y -f install \
|
&& apt-get -y -f install \
|
||||||
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
&& rm google-chrome-stable_current_amd64.deb \
|
&& rm google-chrome-stable_current_amd64.deb \
|
||||||
|
&& wget https://chromedriver.storage.googleapis.com/${CHROME_DRIVER_VERSION}/chromedriver_linux64.zip \
|
||||||
# Install Chrome Driver
|
|
||||||
&& wget https://chromedriver.storage.googleapis.com/2.31/chromedriver_linux64.zip \
|
|
||||||
&& unzip chromedriver_linux64.zip \
|
&& unzip chromedriver_linux64.zip \
|
||||||
&& mv chromedriver /usr/local/bin/ \
|
&& mv chromedriver /usr/local/bin/ \
|
||||||
&& rm chromedriver_linux64.zip \
|
&& rm chromedriver_linux64.zip \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.0."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.9-71
|
FROM laradock/workspace:2.0-71
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
# Remove Faillog and Lastlog to reduce the size of the final image.
|
# Remove Faillog and Lastlog to reduce the size of the final image.
|
||||||
RUN rm /var/log/lastlog /var/log/faillog
|
RUN rm /var/log/lastlog /var/log/faillog
|
||||||
@ -54,7 +54,8 @@ ENV PUID ${PUID}
|
|||||||
ENV PGID ${PGID}
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
RUN groupadd -g ${PGID} laradock && \
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
useradd -u ${PUID} -g laradock -m laradock
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
usermod -p "*" laradock
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# SOAP:
|
# SOAP:
|
||||||
@ -123,6 +124,13 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
|
|||||||
composer global install \
|
composer global install \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Crontab
|
# Crontab
|
||||||
#####################################
|
#####################################
|
||||||
@ -134,27 +142,30 @@ RUN chmod -R 644 /etc/cron.d
|
|||||||
#####################################
|
#####################################
|
||||||
# User Aliases
|
# User Aliases
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
COPY ./aliases.sh /root/aliases.sh
|
||||||
|
COPY ./aliases.sh /home/laradock/aliases.sh
|
||||||
|
|
||||||
|
RUN sed -i 's/\r//' /root/aliases.sh && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
chown laradock:laradock /home/laradock/aliases.sh && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc
|
||||||
|
|
||||||
USER laradock
|
USER laradock
|
||||||
COPY ./aliases.sh /home/laradock/aliases.sh
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
|
||||||
echo "" >> ~/.bashrc && \
|
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
USER root
|
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc
|
||||||
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
|
||||||
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
#####################################
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
@ -202,6 +213,8 @@ RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \
|
|||||||
&& rm -f /tmp/id_rsa* \
|
&& rm -f /tmp/id_rsa* \
|
||||||
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
||||||
&& chmod 400 /root/.ssh/id_rsa \
|
&& chmod 400 /root/.ssh/id_rsa \
|
||||||
|
&& cp -rf /root/.ssh /home/laradock \
|
||||||
|
&& chown -R laradock:laradock /home/laradock/.ssh \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -218,6 +231,19 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
|
|||||||
ln -s /etc/php/7.1/mods-available/mongodb.ini /etc/php/7.1/cli/conf.d/30-mongodb.ini \
|
ln -s /etc/php/7.1/mods-available/mongodb.ini /etc/php/7.1/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
ENV INSTALL_AMQP ${INSTALL_AMQP}
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
pecl -q install amqp && \
|
||||||
|
echo "extension=amqp.so" >> /etc/php/7.1/mods-available/amqp.ini && \
|
||||||
|
ln -s /etc/php/7.1/mods-available/amqp.ini /etc/php/7.1/cli/conf.d/30-amqp.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# PHP REDIS EXTENSION FOR PHP 7.1
|
# PHP REDIS EXTENSION FOR PHP 7.1
|
||||||
#####################################
|
#####################################
|
||||||
@ -231,6 +257,18 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
phpenmod redis \
|
phpenmod redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl -q install swoole && \
|
||||||
|
echo "extension=swoole.so" >> /etc/php/7.1/mods-available/swoole.ini && \
|
||||||
|
ln -s /etc/php/7.1/mods-available/swoole.ini /etc/php/7.1/cli/conf.d/20-swoole.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Drush:
|
# Drush:
|
||||||
#####################################
|
#####################################
|
||||||
@ -272,14 +310,19 @@ ARG NODE_VERSION=stable
|
|||||||
ENV NODE_VERSION ${NODE_VERSION}
|
ENV NODE_VERSION ${NODE_VERSION}
|
||||||
ARG INSTALL_NODE=false
|
ARG INSTALL_NODE=false
|
||||||
ENV INSTALL_NODE ${INSTALL_NODE}
|
ENV INSTALL_NODE ${INSTALL_NODE}
|
||||||
|
ARG NPM_REGISTRY
|
||||||
|
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
||||||
ENV NVM_DIR /home/laradock/.nvm
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
RUN if [ ${INSTALL_NODE} = true ]; then \
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
# Install nvm (A Node Version Manager)
|
# Install nvm (A Node Version Manager)
|
||||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash && \
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash && \
|
||||||
. $NVM_DIR/nvm.sh && \
|
. $NVM_DIR/nvm.sh && \
|
||||||
nvm install ${NODE_VERSION} && \
|
nvm install ${NODE_VERSION} && \
|
||||||
nvm use ${NODE_VERSION} && \
|
nvm use ${NODE_VERSION} && \
|
||||||
nvm alias ${NODE_VERSION} && \
|
nvm alias ${NODE_VERSION} && \
|
||||||
|
if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi && \
|
||||||
npm install -g gulp bower vue-cli \
|
npm install -g gulp bower vue-cli \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -303,6 +346,9 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
|
|||||||
# Add PATH for node
|
# Add PATH for node
|
||||||
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
||||||
|
|
||||||
|
RUN if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
. ~/.bashrc && npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# YARN:
|
# YARN:
|
||||||
@ -343,14 +389,10 @@ USER root
|
|||||||
ARG INSTALL_AEROSPIKE=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
|
||||||
COPY ./aerospike.ini /etc/php/7.1/cli/conf.d/aerospike.ini
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Fix dependencies for PHPUnit within aerospike extension
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
apt-get update -yqq && \
|
apt-get update -yqq && \
|
||||||
apt-get -y install sudo wget && \
|
apt-get -y install sudo wget && \
|
||||||
|
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
@ -362,10 +404,9 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
|||||||
&& make install \
|
&& make install \
|
||||||
) \
|
) \
|
||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
&& echo 'extension=aerospike.so' >> /etc/php/7.1/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/7.1/cli/conf.d/aerospike.ini \
|
||||||
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
&& echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/7.1/cli/conf.d/aerospike.ini \
|
||||||
rm /etc/php/7.1/cli/conf.d/aerospike.ini \
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -378,9 +419,9 @@ ENV INSTALL_V8JS ${INSTALL_V8JS}
|
|||||||
|
|
||||||
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
# Install the php V8JS extension
|
# Install the php V8JS extension
|
||||||
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
add-apt-repository -y ppa:pinepain/libv8-archived \
|
||||||
&& apt-get update -yqq \
|
&& apt-get update -yqq \
|
||||||
&& apt-get install -y php-xml php-dev php-pear libv8-5.4 \
|
&& apt-get install -y php7.1-xml php7.1-dev php-pear libv8-5.4 \
|
||||||
&& pecl install v8js \
|
&& pecl install v8js \
|
||||||
&& echo "extension=v8js.so" >> /etc/php/7.1/cli/php.ini \
|
&& echo "extension=v8js.so" >> /etc/php/7.1/cli/php.ini \
|
||||||
;fi
|
;fi
|
||||||
@ -413,6 +454,13 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_INSTALLER=false
|
ARG INSTALL_LARAVEL_INSTALLER=false
|
||||||
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
@ -428,14 +476,31 @@ USER laradock
|
|||||||
#####################################
|
#####################################
|
||||||
# Deployer:
|
# Deployer:
|
||||||
#####################################
|
#####################################
|
||||||
USER laradock
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_DEPLOYER=false
|
ARG INSTALL_DEPLOYER=false
|
||||||
ENV INSTALL_DEPLOYER ${INSTALL_DEPLOYER}
|
ENV INSTALL_DEPLOYER ${INSTALL_DEPLOYER}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
||||||
# Install the Deployer
|
# Install the Deployer
|
||||||
composer global require "deployer/deployer" \
|
# Using Phar as currently there is no support for laravel 4 from composer version
|
||||||
|
# Waiting to be resolved on https://github.com/deployphp/deployer/issues/1552
|
||||||
|
curl -LO https://deployer.org/deployer.phar && \
|
||||||
|
mv deployer.phar /usr/local/bin/dep && \
|
||||||
|
chmod +x /usr/local/bin/dep \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Prestissimo:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_PRESTISSIMO=false
|
||||||
|
ENV INSTALL_PRESTISSIMO ${INSTALL_PRESTISSIMO}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_PRESTISSIMO} = true ]; then \
|
||||||
|
# Install Prestissimo
|
||||||
|
composer global require "hirak/prestissimo" \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -447,7 +512,6 @@ ARG INSTALL_LINUXBREW=false
|
|||||||
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
# Preparation
|
# Preparation
|
||||||
apt-get upgrade -y && \
|
apt-get upgrade -y && \
|
||||||
apt-get install -y build-essential make cmake scons curl git \
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
@ -455,13 +519,10 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
gettext libtool flex bison \
|
gettext libtool flex bison \
|
||||||
libbz2-dev libcurl4-openssl-dev \
|
libbz2-dev libcurl4-openssl-dev \
|
||||||
libexpat-dev libncurses-dev && \
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
# Install the Linuxbrew
|
# Install the Linuxbrew
|
||||||
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
|
||||||
# Setup linuxbrew
|
# Setup linuxbrew
|
||||||
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
||||||
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
||||||
@ -476,77 +537,35 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
ARG INSTALL_MSSQL=false
|
ARG INSTALL_MSSQL=false
|
||||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
#####################################
|
|
||||||
# Install Depenencies:
|
|
||||||
#####################################
|
|
||||||
cd / && \
|
|
||||||
apt-get update -yqq && \
|
|
||||||
apt-get install -y --force-yes wget apt-transport-https curl freetds-common libsybdb5 freetds-bin unixodbc unixodbc-dev && \
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# The following steps were taken from
|
# The following steps were taken from
|
||||||
# Microsoft's github account:
|
# https://github.com/Microsoft/msphpsql/wiki/Install-and-configuration
|
||||||
# https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways
|
|
||||||
#####################################
|
#####################################
|
||||||
|
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
|
||||||
# Add PHP 7 repository
|
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
|
||||||
# for Debian jessie
|
apt-get update && \
|
||||||
# And System upgrade
|
ACCEPT_EULA=Y apt-get install -yqq msodbcsql=13.0.1.0-1 mssql-tools=14.0.2.0-1 && \
|
||||||
cd / && \
|
apt-get install -yqq unixodbc-dev-utf16 && \
|
||||||
echo "deb http://packages.dotdeb.org jessie all" \
|
ln -sfn /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd && \
|
||||||
| tee /etc/apt/sources.list.d/dotdeb.list \
|
ln -sfn /opt/mssql-tools/bin/bcp-13.0.1.0 /usr/bin/bcp && \
|
||||||
&& wget -qO- https://www.dotdeb.org/dotdeb.gpg \
|
ACCEPT_EULA=Y apt-get install -yqq \
|
||||||
| apt-key add - \
|
unixodbc \
|
||||||
&& apt-get update -yqq \
|
unixodbc-dev \
|
||||||
&& apt-get upgrade -qq && \
|
libgss3 \
|
||||||
|
odbcinst \
|
||||||
# Install UnixODBC
|
msodbcsql \
|
||||||
# Compile odbc_config as it is not part of unixodbc package
|
locales && \
|
||||||
cd / && \
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
apt-get update -yqq && \
|
locale-gen && \
|
||||||
apt-get install -y whiptail \
|
pecl install sqlsrv-4.3.0 pdo_sqlsrv-4.3.0 && \
|
||||||
unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \
|
apt-get install -y locales && \
|
||||||
&& dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
&& cd unixodbc-*/ \
|
locale-gen && \
|
||||||
&& ./configure && make && make install \
|
echo "extension=sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-sqlsrv.ini && \
|
||||||
&& cp -v ./exe/odbc_config /usr/local/bin/ && \
|
echo "extension=pdo_sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-pdo_sqlsrv.ini \
|
||||||
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
# Fake uname for install.sh
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \
|
|
||||||
| tee /usr/local/bin/uname \
|
|
||||||
&& chmod +x /usr/local/bin/uname && \
|
|
||||||
|
|
||||||
# Microsoft ODBC Driver 13 for Linux
|
|
||||||
# Note: There's a copy of this tar on my hubiC
|
|
||||||
cd / && \
|
|
||||||
wget -nv -O msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
"https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \
|
|
||||||
&& tar -xf msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
&& cd msodbcsql-*/ \
|
|
||||||
&& ldd lib64/libmsodbcsql-13.0.so.0.0 \
|
|
||||||
&& ./install.sh install --accept-license \
|
|
||||||
&& ls -l /opt/microsoft/msodbcsql/ \
|
|
||||||
&& odbcinst -q -d -n "ODBC Driver 13 for SQL Server" && \
|
|
||||||
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Install sqlsrv y pdo_sqlsrv
|
|
||||||
# extensions:
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
pecl install sqlsrv-4.0.8 && \
|
|
||||||
pecl install pdo_sqlsrv-4.0.8 && \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Set locales for the container
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
apt-get install -y locales \
|
|
||||||
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
|
||||||
&& locale-gen \
|
|
||||||
&& echo "extension=sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-sqlsrv.ini \
|
|
||||||
&& echo "extension=pdo_sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-pdo_sqlsrv.ini \
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -585,19 +604,15 @@ USER root
|
|||||||
ARG INSTALL_SYMFONY=false
|
ARG INSTALL_SYMFONY=false
|
||||||
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
||||||
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
||||||
|
|
||||||
mkdir -p /usr/local/bin \
|
mkdir -p /usr/local/bin \
|
||||||
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
||||||
&& chmod a+x /usr/local/bin/symfony \
|
&& chmod a+x /usr/local/bin/symfony \
|
||||||
|
|
||||||
# Symfony 3 alias
|
# Symfony 3 alias
|
||||||
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
||||||
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
# Symfony 2 alias
|
# Symfony 2 alias
|
||||||
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
||||||
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -620,7 +635,8 @@ USER root
|
|||||||
ARG INSTALL_IMAGEMAGICK=false
|
ARG INSTALL_IMAGEMAGICK=false
|
||||||
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
apt-get install -y --force-yes imagemagick php-imagick \
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y --force-yes imagemagick php-imagick \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -675,6 +691,12 @@ RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
|||||||
&& rm chromedriver_linux64.zip \
|
&& rm chromedriver_linux64.zip \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.1."
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
713
workspace/Dockerfile-72
Normal file
713
workspace/Dockerfile-72
Normal file
@ -0,0 +1,713 @@
|
|||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Image Setup
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# To edit the 'workspace' base Image, visit its repository on Github
|
||||||
|
# https://github.com/Laradock/workspace
|
||||||
|
#
|
||||||
|
# To change its version, see the available Tags on the Docker Hub:
|
||||||
|
# https://hub.docker.com/r/laradock/workspace/tags/
|
||||||
|
#
|
||||||
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
|
#
|
||||||
|
|
||||||
|
FROM laradock/workspace:2.0-72
|
||||||
|
|
||||||
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
|
# Remove Faillog and Lastlog to reduce the size of the final image.
|
||||||
|
RUN rm /var/log/lastlog /var/log/faillog
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Mandatory Software's Installation
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Mandatory Software's such as ("php7.2-cli", "git", "vim", ....) are
|
||||||
|
# installed on the base image 'laradock/workspace' image. If you want
|
||||||
|
# to add more Software's or remove existing one, you need to edit the
|
||||||
|
# base image (https://github.com/Laradock/workspace).
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Optional Software's Installation
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Optional Software's will only be installed if you set them to `true`
|
||||||
|
# in the `docker-compose.yml` before the build.
|
||||||
|
# Example:
|
||||||
|
# - INSTALL_NODE=false
|
||||||
|
# - ...
|
||||||
|
#
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Non-Root User:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Add a non-root user to prevent files being created with root permissions on host machine.
|
||||||
|
ARG PUID=1000
|
||||||
|
ARG PGID=1000
|
||||||
|
|
||||||
|
ENV PUID ${PUID}
|
||||||
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
usermod -p "*" laradock
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SOAP:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_SOAP=false
|
||||||
|
ENV INSTALL_SOAP ${INSTALL_SOAP}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
|
# Install the PHP SOAP extension
|
||||||
|
add-apt-repository -y ppa:ondrej/php && \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install libxml2-dev php7.2-soap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
ENV INSTALL_LDAP ${INSTALL_LDAP}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
apt-get install -y php7.2-ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# IMAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_IMAP=false
|
||||||
|
ENV INSTALL_IMAP ${INSTALL_IMAP}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_IMAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y php7.2-imap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Set Timezone
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG TZ=UTC
|
||||||
|
ENV TZ ${TZ}
|
||||||
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Composer:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Add the composer.json
|
||||||
|
COPY ./composer.json /home/laradock/.composer/composer.json
|
||||||
|
|
||||||
|
# Make sure that ~/.composer belongs to laradock
|
||||||
|
RUN chown -R laradock:laradock /home/laradock/.composer
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
# Check if global install need to be ran
|
||||||
|
ARG COMPOSER_GLOBAL_INSTALL=false
|
||||||
|
ENV COMPOSER_GLOBAL_INSTALL ${COMPOSER_GLOBAL_INSTALL}
|
||||||
|
RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
|
||||||
|
# run the install
|
||||||
|
composer global install \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Crontab
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
COPY ./crontab /etc/cron.d
|
||||||
|
RUN chmod -R 644 /etc/cron.d
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# User Aliases
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
COPY ./aliases.sh /root/aliases.sh
|
||||||
|
COPY ./aliases.sh /home/laradock/aliases.sh
|
||||||
|
|
||||||
|
RUN sed -i 's/\r//' /root/aliases.sh && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
chown laradock:laradock /home/laradock/aliases.sh && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
RUN echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source ~/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# xDebug:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_XDEBUG=false
|
||||||
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
|
# Load the xdebug extension only with phpunit commands
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y --force-yes php7.2-xdebug && \
|
||||||
|
sed -i 's/^;//g' /etc/php/7.2/cli/conf.d/20-xdebug.ini && \
|
||||||
|
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
# ADD for REMOTE debugging
|
||||||
|
COPY ./xdebug.ini /etc/php/7.2/cli/conf.d/xdebug.ini
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Blackfire:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_BLACKFIRE=false
|
||||||
|
ARG BLACKFIRE_CLIENT_ID
|
||||||
|
ARG BLACKFIRE_CLIENT_TOKEN
|
||||||
|
|
||||||
|
ENV BLACKFIRE_CLIENT_ID ${BLACKFIRE_CLIENT_ID}
|
||||||
|
ENV BLACKFIRE_CLIENT_TOKEN ${BLACKFIRE_CLIENT_TOKEN}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
||||||
|
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
||||||
|
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install blackfire-agent \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# ssh:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_WORKSPACE_SSH=false
|
||||||
|
ENV INSTALL_WORKSPACE_SSH ${INSTALL_WORKSPACE_SSH}
|
||||||
|
|
||||||
|
ADD insecure_id_rsa /tmp/id_rsa
|
||||||
|
ADD insecure_id_rsa.pub /tmp/id_rsa.pub
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \
|
||||||
|
rm -f /etc/service/sshd/down && \
|
||||||
|
cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys \
|
||||||
|
&& cat /tmp/id_rsa.pub >> /root/.ssh/id_rsa.pub \
|
||||||
|
&& cat /tmp/id_rsa >> /root/.ssh/id_rsa \
|
||||||
|
&& rm -f /tmp/id_rsa* \
|
||||||
|
&& chmod 644 /root/.ssh/authorized_keys /root/.ssh/id_rsa.pub \
|
||||||
|
&& chmod 400 /root/.ssh/id_rsa \
|
||||||
|
&& cp -rf /root/.ssh /home/laradock \
|
||||||
|
&& chown -R laradock:laradock /home/laradock/.ssh \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# MongoDB:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Check if Mongo needs to be installed
|
||||||
|
ARG INSTALL_MONGO=false
|
||||||
|
ENV INSTALL_MONGO ${INSTALL_MONGO}
|
||||||
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
|
# Install the mongodb extension
|
||||||
|
pecl -q install mongodb && \
|
||||||
|
echo "extension=mongodb.so" >> /etc/php/7.2/mods-available/mongodb.ini && \
|
||||||
|
ln -s /etc/php/7.2/mods-available/mongodb.ini /etc/php/7.2/cli/conf.d/30-mongodb.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# AMQP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_AMQP=false
|
||||||
|
ENV INSTALL_AMQP ${INSTALL_AMQP}
|
||||||
|
RUN if [ ${INSTALL_AMQP} = true ]; then \
|
||||||
|
apt-get install librabbitmq-dev -y && \
|
||||||
|
pecl -q install amqp && \
|
||||||
|
echo "extension=amqp.so" >> /etc/php/7.2/mods-available/amqp.ini && \
|
||||||
|
ln -s /etc/php/7.2/mods-available/amqp.ini /etc/php/7.2/cli/conf.d/30-amqp.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP REDIS EXTENSION FOR PHP 7.2
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_PHPREDIS=false
|
||||||
|
ENV INSTALL_PHPREDIS ${INSTALL_PHPREDIS}
|
||||||
|
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
||||||
|
# Install Php Redis extension
|
||||||
|
printf "\n" | pecl -q install -o -f redis && \
|
||||||
|
echo "extension=redis.so" >> /etc/php/7.2/mods-available/redis.ini && \
|
||||||
|
phpenmod redis \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl -q install swoole && \
|
||||||
|
echo "extension=swoole.so" >> /etc/php/7.2/mods-available/swoole.ini && \
|
||||||
|
ln -s /etc/php/7.2/mods-available/swoole.ini /etc/php/7.2/cli/conf.d/20-swoole.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Drush:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ENV DRUSH_VERSION 8.1.2
|
||||||
|
ARG INSTALL_DRUSH=false
|
||||||
|
ENV INSTALL_DRUSH ${INSTALL_DRUSH}
|
||||||
|
RUN if [ ${INSTALL_DRUSH} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install mysql-client && \
|
||||||
|
# Install Drush 8 with the phar file.
|
||||||
|
curl -fsSL -o /usr/local/bin/drush https://github.com/drush-ops/drush/releases/download/$DRUSH_VERSION/drush.phar | bash && \
|
||||||
|
chmod +x /usr/local/bin/drush && \
|
||||||
|
drush core-status \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Drupal Console:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_DRUPAL_CONSOLE=false
|
||||||
|
ENV INSTALL_DRUPAL_CONSOLE ${INSTALL_DRUPAL_CONSOLE}
|
||||||
|
RUN if [ ${INSTALL_DRUPAL_CONSOLE} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install mysql-client && \
|
||||||
|
curl https://drupalconsole.com/installer -L -o drupal.phar && \
|
||||||
|
mv drupal.phar /usr/local/bin/drupal && \
|
||||||
|
chmod +x /usr/local/bin/drupal \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Node / NVM:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Check if NVM needs to be installed
|
||||||
|
ARG NODE_VERSION=stable
|
||||||
|
ENV NODE_VERSION ${NODE_VERSION}
|
||||||
|
ARG INSTALL_NODE=false
|
||||||
|
ENV INSTALL_NODE ${INSTALL_NODE}
|
||||||
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
|
ARG NPM_REGISTRY
|
||||||
|
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
||||||
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
|
# Install nvm (A Node Version Manager)
|
||||||
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash && \
|
||||||
|
. $NVM_DIR/nvm.sh && \
|
||||||
|
nvm install ${NODE_VERSION} && \
|
||||||
|
nvm use ${NODE_VERSION} && \
|
||||||
|
nvm alias ${NODE_VERSION} && \
|
||||||
|
if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi && \
|
||||||
|
npm install -g gulp bower vue-cli \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Wouldn't execute when added to the RUN statement in the above block
|
||||||
|
# Source NVM when loading bash since ~/.profile isn't loaded on non-login shell
|
||||||
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc && \
|
||||||
|
echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Add NVM binaries to root's .bashrc
|
||||||
|
USER root
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export NVM_DIR="/home/laradock/.nvm"' >> ~/.bashrc && \
|
||||||
|
echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Add PATH for node
|
||||||
|
ENV PATH $PATH:$NVM_DIR/versions/node/v${NODE_VERSION}/bin
|
||||||
|
|
||||||
|
RUN if [ ${NPM_REGISTRY} ]; then \
|
||||||
|
. ~/.bashrc && npm config set registry ${NPM_REGISTRY} \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# YARN:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_YARN=false
|
||||||
|
ENV INSTALL_YARN ${INSTALL_YARN}
|
||||||
|
ARG YARN_VERSION=latest
|
||||||
|
ENV YARN_VERSION ${YARN_VERSION}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_YARN} = true ]; then \
|
||||||
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \
|
||||||
|
if [ ${YARN_VERSION} = "latest" ]; then \
|
||||||
|
curl -o- -L https://yarnpkg.com/install.sh | bash; \
|
||||||
|
else \
|
||||||
|
curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version ${YARN_VERSION}; \
|
||||||
|
fi && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="$HOME/.yarn/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
# Add YARN binaries to root's .bashrc
|
||||||
|
USER root
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_YARN} = true ]; then \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export YARN_DIR="/home/laradock/.yarn"' >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="$YARN_DIR/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP Aerospike:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_AEROSPIKE=false
|
||||||
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
|
# Install the php aerospike extension (using 7.2.0-in-progress branch until support for 7.2 on master)
|
||||||
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/7.2.0-in-progress.tar.gz" \
|
||||||
|
&& mkdir -p aerospike-client-php \
|
||||||
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
|
&& ( \
|
||||||
|
cd aerospike-client-php/src \
|
||||||
|
&& phpize \
|
||||||
|
&& ./build.sh \
|
||||||
|
&& make install \
|
||||||
|
) \
|
||||||
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
|
&& echo 'extension=aerospike.so' >> /etc/php/7.2/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/7.2/cli/conf.d/aerospike.ini \
|
||||||
|
&& echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/7.2/cli/conf.d/aerospike.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP V8JS:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_V8JS=false
|
||||||
|
ENV INSTALL_V8JS ${INSTALL_V8JS}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
|
# Install the php V8JS extension
|
||||||
|
add-apt-repository -y ppa:pinepain/libv8-archived \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
&& apt-get install -y php-xml php-dev php-pear libv8-5.4 \
|
||||||
|
&& pecl install v8js \
|
||||||
|
&& echo "extension=v8js.so" >> /etc/php/7.2/cli/php.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Non-root user : PHPUnit path
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# add ./vendor/bin to non-root user's bashrc (needed for phpunit)
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
RUN echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="/var/www/vendor/bin:$PATH"' >> ~/.bashrc
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Envoy:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_ENVOY=false
|
||||||
|
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
||||||
|
# Install the Laravel Envoy
|
||||||
|
composer global require "laravel/envoy=~1.0" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Installer:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG COMPOSER_REPO_PACKAGIST
|
||||||
|
ENV COMPOSER_REPO_PACKAGIST ${COMPOSER_REPO_PACKAGIST}
|
||||||
|
|
||||||
|
RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
||||||
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=false
|
||||||
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
|
# Install the Laravel Installer
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
&& composer global require "laravel/installer" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Deployer:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_DEPLOYER=false
|
||||||
|
ENV INSTALL_DEPLOYER ${INSTALL_DEPLOYER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
||||||
|
# Install the Deployer
|
||||||
|
# Using Phar as currently there is no support for laravel 4 from composer version
|
||||||
|
# Waiting to be resolved on https://github.com/deployphp/deployer/issues/1552
|
||||||
|
curl -LO https://deployer.org/deployer.phar && \
|
||||||
|
mv deployer.phar /usr/local/bin/dep && \
|
||||||
|
chmod +x /usr/local/bin/dep \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Prestissimo:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_PRESTISSIMO=false
|
||||||
|
ENV INSTALL_PRESTISSIMO ${INSTALL_PRESTISSIMO}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_PRESTISSIMO} = true ]; then \
|
||||||
|
# Install Prestissimo
|
||||||
|
composer global require "hirak/prestissimo" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Linuxbrew:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_LINUXBREW=false
|
||||||
|
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
# Preparation
|
||||||
|
apt-get upgrade -y && \
|
||||||
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
|
ruby autoconf automake autoconf-archive \
|
||||||
|
gettext libtool flex bison \
|
||||||
|
libbz2-dev libcurl4-openssl-dev \
|
||||||
|
libexpat-dev libncurses-dev && \
|
||||||
|
# Install the Linuxbrew
|
||||||
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
# Setup linuxbrew
|
||||||
|
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export MANPATH="$LINUXBREWHOME/man:$MANPATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export PKG_CONFIG_PATH="$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
|
RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# The following steps were taken from
|
||||||
|
# https://github.com/Microsoft/msphpsql/wiki/Install-and-configuration
|
||||||
|
#####################################
|
||||||
|
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
|
||||||
|
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
|
||||||
|
apt-get update && \
|
||||||
|
ACCEPT_EULA=Y apt-get install -yqq msodbcsql=13.0.1.0-1 mssql-tools=14.0.2.0-1 && \
|
||||||
|
apt-get install -yqq unixodbc-dev-utf16 && \
|
||||||
|
ln -sfn /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd && \
|
||||||
|
ln -sfn /opt/mssql-tools/bin/bcp-13.0.1.0 /usr/bin/bcp && \
|
||||||
|
ACCEPT_EULA=Y apt-get install -yqq \
|
||||||
|
unixodbc \
|
||||||
|
unixodbc-dev \
|
||||||
|
libgss3 \
|
||||||
|
odbcinst \
|
||||||
|
msodbcsql \
|
||||||
|
locales && \
|
||||||
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
|
locale-gen && \
|
||||||
|
pecl install sqlsrv-4.3.0 pdo_sqlsrv-4.3.0 && \
|
||||||
|
apt-get install -y locales && \
|
||||||
|
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
|
||||||
|
locale-gen && \
|
||||||
|
echo "extension=sqlsrv.so" > /etc/php/7.2/cli/conf.d/20-sqlsrv.ini && \
|
||||||
|
echo "extension=pdo_sqlsrv.so" > /etc/php/7.2/cli/conf.d/20-pdo_sqlsrv.ini \
|
||||||
|
&& php -m | grep -q 'sqlsrv' \
|
||||||
|
&& php -m | grep -q 'pdo_sqlsrv' \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Minio:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_MC=false
|
||||||
|
ENV INSTALL_MC ${INSTALL_MC}
|
||||||
|
|
||||||
|
COPY mc/config.json /root/.mc/config.json
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MC} = true ]; then\
|
||||||
|
curl -fsSL -o /usr/local/bin/mc https://dl.minio.io/client/mc/release/linux-amd64/mc && \
|
||||||
|
chmod +x /usr/local/bin/mc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Image optimizers:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_IMAGE_OPTIMIZERS=false
|
||||||
|
ENV INSTALL_IMAGE_OPTIMIZERS ${INSTALL_IMAGE_OPTIMIZERS}
|
||||||
|
RUN if [ ${INSTALL_IMAGE_OPTIMIZERS} = true ]; then \
|
||||||
|
apt-get install -y --force-yes jpegoptim optipng pngquant gifsicle && \
|
||||||
|
if [ ${INSTALL_NODE} = true ]; then \
|
||||||
|
. ~/.bashrc && npm install -g svgo \
|
||||||
|
;fi\
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Symfony:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_SYMFONY=false
|
||||||
|
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
||||||
|
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
||||||
|
mkdir -p /usr/local/bin \
|
||||||
|
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
||||||
|
&& chmod a+x /usr/local/bin/symfony \
|
||||||
|
# Symfony 3 alias
|
||||||
|
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
||||||
|
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
||||||
|
# Symfony 2 alias
|
||||||
|
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
||||||
|
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PYTHON:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_PYTHON=false
|
||||||
|
ENV INSTALL_PYTHON ${INSTALL_PYTHON}
|
||||||
|
RUN if [ ${INSTALL_PYTHON} = true ]; then \
|
||||||
|
apt-get update \
|
||||||
|
&& apt-get -y install python python-pip python-dev build-essential \
|
||||||
|
&& pip install --upgrade pip \
|
||||||
|
&& pip install --upgrade virtualenv \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# ImageMagick:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_IMAGEMAGICK=false
|
||||||
|
ENV INSTALL_IMAGEMAGICK ${INSTALL_IMAGEMAGICK}
|
||||||
|
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
|
||||||
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y --force-yes imagemagick php-imagick \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Terraform:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_TERRAFORM=false
|
||||||
|
ENV INSTALL_TERRAFORM ${INSTALL_TERRAFORM}
|
||||||
|
RUN if [ ${INSTALL_TERRAFORM} = true ]; then \
|
||||||
|
apt-get update -yqq \
|
||||||
|
&& apt-get -y install sudo wget unzip \
|
||||||
|
&& wget https://releases.hashicorp.com/terraform/0.10.6/terraform_0.10.6_linux_amd64.zip \
|
||||||
|
&& unzip terraform_0.10.6_linux_amd64.zip \
|
||||||
|
&& mv terraform /usr/local/bin \
|
||||||
|
&& rm terraform_0.10.6_linux_amd64.zip \
|
||||||
|
;fi
|
||||||
|
#####################################
|
||||||
|
# pgsql client
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_PG_CLIENT=false
|
||||||
|
ENV INSTALL_PG_CLIENT ${INSTALL_PG_CLIENT}
|
||||||
|
RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
|
||||||
|
# Install the pgsql clint
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install postgresql-client \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Dusk Dependencies:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG CHROME_DRIVER_VERSION=stable
|
||||||
|
ENV CHROME_DRIVER_VERSION ${CHROME_DRIVER_VERSION}
|
||||||
|
ARG INSTALL_DUSK_DEPS=false
|
||||||
|
ENV INSTALL_DUSK_DEPS ${INSTALL_DUSK_DEPS}
|
||||||
|
RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
|
||||||
|
add-apt-repository ppa:ondrej/php \
|
||||||
|
&& apt-get update \
|
||||||
|
&& apt-get -y install zip wget unzip xdg-utils \
|
||||||
|
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
|
||||||
|
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
|
||||||
|
xfonts-base xfonts-scalable x11-apps \
|
||||||
|
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||||
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
|
&& apt-get -y -f install \
|
||||||
|
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
|
||||||
|
&& rm google-chrome-stable_current_amd64.deb \
|
||||||
|
&& wget https://chromedriver.storage.googleapis.com/${CHROME_DRIVER_VERSION}/chromedriver_linux64.zip \
|
||||||
|
&& unzip chromedriver_linux64.zip \
|
||||||
|
&& mv chromedriver /usr/local/bin/ \
|
||||||
|
&& rm chromedriver_linux64.zip \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check PHP version:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
RUN php -v | head -n 1 | grep -q "PHP 7.2."
|
||||||
|
|
||||||
|
#
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# Final Touch
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
USER root
|
||||||
|
RUN apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
|
|
||||||
|
# Set default work directory
|
||||||
|
WORKDIR /var/www
|
@ -1,13 +1,20 @@
|
|||||||
; NOTE: The actual debug.so extention is NOT SET HERE but rather (/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini)
|
; NOTE: The actual debug.so extention is NOT SET HERE but rather (/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini)
|
||||||
|
|
||||||
|
; xdebug.remote_host=dockerhost
|
||||||
|
xdebug.remote_connect_back=1
|
||||||
|
xdebug.remote_port=9000
|
||||||
|
xdebug.idekey=PHPSTORM
|
||||||
|
|
||||||
xdebug.remote_autostart=0
|
xdebug.remote_autostart=0
|
||||||
xdebug.remote_enable=0
|
xdebug.remote_enable=0
|
||||||
xdebug.remote_connect_back=0
|
|
||||||
xdebug.cli_color=0
|
xdebug.cli_color=0
|
||||||
xdebug.profiler_enable=0
|
xdebug.profiler_enable=0
|
||||||
|
xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling"
|
||||||
|
|
||||||
xdebug.remote_handler=dbgp
|
xdebug.remote_handler=dbgp
|
||||||
xdebug.remote_mode=req
|
xdebug.remote_mode=req
|
||||||
|
|
||||||
xdebug.remote_port=9000
|
xdebug.var_display_max_children=-1
|
||||||
xdebug.remote_host=dockerhost
|
xdebug.var_display_max_data=-1
|
||||||
xdebug.idekey=PHPSTORM
|
xdebug.var_display_max_depth=-1
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user