Compare commits

..

232 Commits

Author SHA1 Message Date
Shao Yu-Lung (Allen)
4832adbbff action enable install phpdbg 2022-04-19 19:03:46 +08:00
Shao Yu-Lung (Allen)
baa6ede88d Merge pull request #3195 from PaolaRuby/patch-1
Let choose alpine correct version
2022-04-17 00:07:38 +08:00
PaolaRuby
c7eba246c9 Let choose alpine correct version 2022-04-13 09:16:52 -05:00
Shao Yu-Lung (Allen)
6092304046 Merge pull request #3194 from erikn69/fix_tests
Fix TESTS
2022-04-13 09:17:46 +08:00
Erik Niebla
cb77808a94 Fix tests 2022-04-12 19:10:39 -05:00
Shao Yu-Lung (Allen)
5028e0c37b Merge pull request #3180 from bobbyshaw/patch-1
Do not install tokenizer into laravel-worker when php version is 8.1
2022-03-31 08:15:37 +08:00
Shao Yu-Lung (Allen)
e2e927d03d Merge pull request #3141 from esfahanweb/fix-audiowaveform
try to fix audiowaveform for workspace
2022-03-29 13:18:48 +08:00
Shao Yu-Lung (Allen)
dfbd87bb09 Merge pull request #3186 from erikn69/fix_zmq
Fix php-zmq link
2022-03-29 13:15:12 +08:00
Erik Niebla
ae4e231988 Fix php-zmq link 2022-03-28 14:59:01 -05:00
Shao Yu-Lung (Allen)
cc7ceb0990 Merge pull request #3177 from laradock/dependabot/npm_and_yarn/react/lodash-es-4.17.21
Bump lodash-es from 4.17.15 to 4.17.21 in /react
2022-03-25 23:19:06 +08:00
Shao Yu-Lung (Allen)
eee4d54339 Merge pull request #3182 from JKair/master
fix mongo description style wrong.
2022-03-25 23:18:21 +08:00
Kair
e8ea58a8ad fix mongo description style wrong. 2022-03-25 17:22:38 +08:00
Tom Robertshaw
ddd06fecfd Do not install tokenizer into laravel-worker when php version is 8.1 2022-03-19 16:58:35 +00:00
dependabot[bot]
a28b5bfbe6 Bump lodash-es from 4.17.15 to 4.17.21 in /react
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.15 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.21)

---
updated-dependencies:
- dependency-name: lodash-es
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-15 20:52:46 +00:00
Shao Yu-Lung (Allen)
fee2d33ad8 Merge pull request #3167 from CelaumMm/master
Add extension zmq
2022-03-09 21:49:22 +08:00
Shao Yu-Lung (Allen)
9b41cf0d48 Merge pull request #3168 from yenhi/mssql_pecl
Fix sqlsrv latest not support PHP 7.3
2022-03-09 21:48:29 +08:00
Shao Yu-Lung (Allen)
45c8fd219b Merge pull request #3158 from laradock/dependabot/npm_and_yarn/react/url-parse-1.5.10
Bump url-parse from 1.5.7 to 1.5.10 in /react
2022-03-08 23:34:30 +08:00
Shao Yu-Lung (Allen)
91e0adfe45 Merge pull request #3164 from vlauciani/master
'laravel-horizon' and 'php-worker' - Update php 'FROM' tag to use PHP8.1
2022-03-08 23:32:37 +08:00
YenHai
11b93562c2 Fix sqlsrv latest not support PHP 7.3 2022-03-08 18:17:54 +08:00
Marcelo Camargo
fb22fbf0d7 Add extension zmq 2022-03-07 01:10:38 -03:00
Valentino Lauciani
f5cb352e9f Fix php alpine tag 2022-03-04 17:40:46 +01:00
Valentino Lauciani
905a99efba Update to work with PHP8 and PHP8.1 2022-03-04 17:38:49 +01:00
dependabot[bot]
02d9ed066d Bump url-parse from 1.5.7 to 1.5.10 in /react
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.5.7 to 1.5.10.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.7...1.5.10)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 04:46:27 +00:00
Shao Yu-Lung (Allen)
df4ccf5eb7 Merge pull request #3155 from laradock/dependabot/npm_and_yarn/react/url-parse-1.5.7
Bump url-parse from 1.4.7 to 1.5.7 in /react
2022-02-22 08:46:49 +08:00
dependabot[bot]
2597989cbd Bump url-parse from 1.4.7 to 1.5.7 in /react
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.4.7 to 1.5.7.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](https://github.com/unshiftio/url-parse/compare/1.4.7...1.5.7)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-19 14:36:16 +00:00
Shao Yu-Lung (Allen)
7542f3e595 Merge pull request #3148 from tancou/php-worker-8.x-amqp
Fix php worker 8.x amqp
2022-02-15 19:53:44 +08:00
Shao Yu-Lung (Allen)
88f8e4a951 Merge pull request #3153 from laradock/dependabot/npm_and_yarn/react/lodash-4.17.21
Bump lodash from 4.17.20 to 4.17.21 in /react
2022-02-15 19:52:52 +08:00
Shao Yu-Lung (Allen)
80e885d7e7 Merge pull request #3152 from laradock/dependabot/npm_and_yarn/react/ssri-6.0.2
Bump ssri from 6.0.1 to 6.0.2 in /react
2022-02-15 19:52:29 +08:00
Shao Yu-Lung (Allen)
6915e6071f Merge pull request #3144 from laradock/dependabot/npm_and_yarn/react/node-sass-7.0.0
Bump node-sass from 4.14.1 to 7.0.0 in /react
2022-02-15 19:52:00 +08:00
Shao Yu-Lung (Allen)
e032d58f3d Merge pull request #3145 from npmmirror/master
Update https://registry.npm.taobao.org to https://registry.npmmirror.com
2022-02-15 19:51:17 +08:00
dependabot[bot]
96efc244b8 Bump lodash from 4.17.20 to 4.17.21 in /react
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.20...4.17.21)

---
updated-dependencies:
- dependency-name: lodash
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 11:50:33 +00:00
dependabot[bot]
4001890c7d Bump ssri from 6.0.1 to 6.0.2 in /react
Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/npm/ssri/releases)
- [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md)
- [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: ssri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 11:50:32 +00:00
Shao Yu-Lung (Allen)
cd25e10bca Merge pull request #3151 from laradock/dependabot/npm_and_yarn/react/follow-redirects-1.14.8
Bump follow-redirects from 1.5.10 to 1.14.8 in /react
2022-02-15 19:49:31 +08:00
dependabot[bot]
b713651a53 Bump follow-redirects from 1.5.10 to 1.14.8 in /react
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.5.10 to 1.14.8.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.5.10...v1.14.8)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 05:45:44 +00:00
tancou
349ba1ea50 fix amqp installation 2022-02-13 16:38:47 +01:00
NPM Mirror Bot
4b774583b4 update https://registry.npm.taobao.org to https://registry.npmmirror.com 2022-02-12 03:59:23 +00:00
dependabot[bot]
0c3d3afb30 Bump node-sass from 4.14.1 to 7.0.0 in /react
Bumps [node-sass](https://github.com/sass/node-sass) from 4.14.1 to 7.0.0.
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sass/node-sass/compare/v4.14.1...v7.0.0)

---
updated-dependencies:
- dependency-name: node-sass
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-11 04:37:23 +00:00
tancou
189ce1cdff Do not install tokenizer into php-worker when php version is 8.1 2022-02-09 18:31:41 +01:00
Abolfazl Sharifi
534b7b405f try to fix audiowaveform for workspace 2022-02-09 10:11:53 +03:30
Shao Yu-Lung (Allen)
01ab8c7d1e Merge pull request #3139 from rdvr/fix-issue-3138
fix meilisearch volume mount path closes #3138
2022-02-04 07:36:46 +08:00
Shao Yu-Lung (Allen)
fa95a67a21 Merge pull request #3137 from vlauciani/master
Update docker-in-docker tag image
2022-02-04 07:06:17 +08:00
Ryan van Rensburg
8856efeb3b fix meilisearch volume mount path closes #3138 2022-02-03 09:55:51 +02:00
Valentino Lauciani
63abb6ced8 Update docker-in-docker tag image 2022-01-31 16:28:46 +01:00
Shao Yu-Lung (Allen)
11d387e894 Merge pull request #3131 from vlauciani/fix_pr_3116
PostGIS - Fix bug on PR 3116
2022-01-24 19:00:35 +08:00
Valentino Lauciani
1fa196de84 Use POSTGIS_VERSION argument 2022-01-21 14:26:39 +01:00
Valentino Lauciani
2efec41e55 Add POSTGIS_VERSION argument 2022-01-21 14:25:55 +01:00
Valentino Lauciani
3d18d92ff2 Add POSTGIS_VERSION variable 2022-01-21 14:24:24 +01:00
Shao Yu-Lung (Allen)
6bf1e9498f Merge pull request #3124 from duchymor/master
oci8 fix version
2022-01-16 00:43:12 +08:00
Shao Yu-Lung (Allen)
20d2beee84 Merge pull request #3123 from erikn69/fix_xlswriter
Fix tests on XlsWriter ext
2022-01-13 23:34:28 +08:00
duchymor
cc3aa13594 Merge branch 'laradock:master' into master 2022-01-12 15:54:09 +01:00
duchymor
2759864e2a fix oci8 2022-01-12 15:53:26 +01:00
Erik Niebla
186928fb07 Fix tests on XlsWriter ext 2022-01-12 09:05:42 -05:00
Shao Yu-Lung (Allen)
37b22ebe01 Merge pull request #3118 from yenhi/openresty_pcre
Change PCRE mirror of Openresty
2022-01-11 14:41:45 +08:00
Shao Yu-Lung (Allen)
fc4b534e98 Merge pull request #3116 from vlauciani/issue_to_add_version_for_docker_postgis
PostGIS - 1)Add PostGIS VERSION and 2)add option to install 'pgsql-http' ext
2022-01-11 14:39:03 +08:00
Shao Yu-Lung (Allen)
ba31d63a00 Merge pull request #3112 from Yohoed/master
Add php xlswriter extension
2022-01-11 14:37:53 +08:00
Shao Yu-Lung (Allen)
bf3f000c5f Merge pull request #3121 from laradock/dependabot/npm_and_yarn/react/ws-5.2.3
Bump ws from 5.2.2 to 5.2.3 in /react
2022-01-06 12:30:39 +08:00
Shao Yu-Lung (Allen)
9a232497c5 Merge pull request #3120 from laradock/dependabot/npm_and_yarn/react/tmpl-1.0.5
Bump tmpl from 1.0.4 to 1.0.5 in /react
2022-01-06 12:30:27 +08:00
Shao Yu-Lung (Allen)
9d9a562feb Merge pull request #3119 from laradock/dependabot/npm_and_yarn/react/axios-0.21.2
Bump axios from 0.21.1 to 0.21.2 in /react
2022-01-06 12:30:16 +08:00
dependabot[bot]
6d61cd3d25 Bump ws from 5.2.2 to 5.2.3 in /react
Bumps [ws](https://github.com/websockets/ws) from 5.2.2 to 5.2.3.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/5.2.2...5.2.3)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 13:39:02 +00:00
dependabot[bot]
3ef987ba84 Bump tmpl from 1.0.4 to 1.0.5 in /react
Bumps [tmpl](https://github.com/daaku/nodejs-tmpl) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/daaku/nodejs-tmpl/releases)
- [Commits](https://github.com/daaku/nodejs-tmpl/commits/v1.0.5)

---
updated-dependencies:
- dependency-name: tmpl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 13:38:59 +00:00
dependabot[bot]
7d91cd3348 Bump axios from 0.21.1 to 0.21.2 in /react
Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 13:38:44 +00:00
Shao Yu-Lung (Allen)
a2274e9980 Merge pull request #3113 from erikn69/ci_php_81
ci(PHP 8.1): add CI processes for PHP 8.1
2022-01-04 21:37:55 +08:00
Erik Niebla
4171871ab2 Fix tests(xdebug, mongodb) 2022-01-03 09:31:28 -05:00
YenHai
7c2b1c561a Change PCRE mirror of Openresty 2022-01-03 17:18:49 +08:00
Wuweiming
c906356f46 fix:Add php xlswriter extension 2021-12-30 18:28:14 +08:00
Valentino Lauciani
3a8ff2c329 Update docker-compose.yml 2021-12-22 09:18:33 +01:00
Valentino Lauciani
cf6e2cd843 Update Dockerfile 2021-12-22 09:17:25 +01:00
Valentino Lauciani
3d2194301e Update .env.example 2021-12-21 12:05:56 +01:00
Valentino Lauciani
4885f9ac2d Update .env.example 2021-12-21 12:02:53 +01:00
Valentino Lauciani
9c6f4e0a06 Update Dockerfile 2021-12-21 11:58:32 +01:00
Valentino Lauciani
c6bc986095 Update Dockerfile 2021-12-21 11:50:43 +01:00
Valentino Lauciani
3d2f8074d3 Update docker-compose.yml 2021-12-21 11:43:51 +01:00
Valentino Lauciani
ec4216ed18 Update Dockerfile 2021-12-21 11:41:46 +01:00
Valentino Lauciani
18bf3a7b20 Update .env.example 2021-12-21 10:56:58 +01:00
Erik Niebla
9f0657e2b0 ci(PHP 8.1): add CI processes for PHP 8.1 2021-12-20 10:24:21 -05:00
Wuweiming
084fcaaf8b fix:Add php xlswriter extension 2021-12-20 15:19:02 +08:00
Shao Yu-Lung (Allen)
a70675007d Merge pull request #3111 from erikn69/php_81_ini
Add PHP 8.1 ini file
2021-12-17 23:49:29 +08:00
Shao Yu-Lung (Allen)
d09d67249f Merge pull request #3110 from johnathansantos/patch-1
Extension for Oracle Database, php 8.0
2021-12-17 23:47:48 +08:00
Wuweiming
9536c2e63f fix:Add php xlswriter extension 2021-12-16 15:17:19 +08:00
Shao Yu-Lung (Allen)
fda9e51ad6 Merge pull request #3108 from nisar-med/master
Update newrelic PHP Agent version to support PHP 8.x
2021-12-16 14:06:29 +08:00
Wuweiming
353ed5afb4 add xlswriter extension 2021-12-16 11:49:55 +08:00
Wuweiming
17062bd9d8 add xlswriter extension 2021-12-16 11:12:21 +08:00
Erik Niebla
4debd4f965 Add PHP 8.1 ini file 2021-12-14 09:53:23 -05:00
Johnathan Douglas de Souza Santos
e8137d0c75 Extension for Oracle Database, php 8.0
Error: 
pecl/oci8 requires PHP (version >= 8.1.0), installed version is 8.0.13

--------- 

https://pecl.php.net/package/oci8

The OCI8 extension lets you access Oracle Database.
Use 'pecl install oci8' to install for PHP 8.1.
Use 'pecl install oci8-3.0.1' to install for PHP 8.0.
Use 'pecl install oci8-2.2.0' to install for PHP 7.
Use 'pecl install oci8-2.0.12' to install for PHP 5.2 - PHP 5.6.
Use 'pecl install oci8-1.4.10' to install for PHP 4.3.9 - PHP 5.1.
2021-12-14 10:39:20 -03:00
Shao Yu-Lung (Allen)
27f50abe04 Merge pull request #3100 from vaiil/patch-1
Migrate to official DockerHub repository
2021-11-15 13:40:09 +08:00
vaiil
2b04ed5e0e Migrate to official DockerHub repository
From readme of [phpmyadmin/docker](https://github.com/phpmyadmin/docker)
> Note that since phpMyAdmin has been accepted in to the official DockerHub repository, you can use either that or this older phpMyAdmin repository for your Docker installation. This is maintained as a courtesy to users who have not migrated.

P.S. version from `phpmyadmin` supports `caching_sha2_password`, that makes me happy :)
2021-11-14 16:19:09 +03:00
Mahmoud Zalt
292783b76e display more logos 2021-11-12 15:22:34 +01:00
Shao Yu-Lung (Allen)
b3b0b0c40f Merge pull request #3084 from DowneyL/update-jenkins-version
update jenkins version
2021-11-03 20:25:31 +08:00
DowneyL
986ea48969 update jenkins version 2021-10-28 19:39:07 +08:00
Shao Yu-Lung (Allen)
c7cb79efee Merge pull request #3079 from davlet42/master
RabbitMQ Web STOMP
2021-10-18 13:21:40 +08:00
Shao Yu-Lung (Allen)
42e6f53bc4 Merge pull request #3080 from VVVi/patch-1
Xdebug compatibilyti improvement
2021-10-18 08:08:15 +08:00
VVVi
780d0bb764 Xdebug compatibilyti improvement
Please take a look at https://xdebug.org/docs/compat , for now with PHP 8, 7.3, 7.4 should be used xdebug 3.1.
2021-10-17 11:45:27 +02:00
Artem Davletshin
1d7477b686 Add RabbitMQ Web STOMP 2021-10-16 00:04:28 +03:00
Artem Davletshin
4183251b75 Add RabbitMQ Web STOMP 2021-10-16 00:03:02 +03:00
Shao Yu-Lung (Allen)
b022ce73a2 Merge pull request #3078 from vlauciani/issue_3077
workspace - fix crontab (issue: #3077)
2021-10-13 08:14:50 +08:00
Valentino Lauciani
145864fab2 fix crontab 2021-10-12 12:40:28 +02:00
Shao Yu-Lung (Allen)
6c45aeb074 Merge pull request #3075 from bestlong/ci-enable-ioncube
CI build enable install ioncube
2021-10-09 17:26:14 +08:00
Shao Yu-Lung (Allen)
3a7631c673 CI build enable install ioncube 2021-10-09 15:48:30 +08:00
Shao Yu-Lung (Allen)
50146d5732 Merge pull request #3074 from bestlong/check-fpm-ioncube
Add php-fpm ioncube install check
2021-10-09 12:03:28 +08:00
Shao Yu-Lung (Allen)
d5e990caba php-fpm: add ionCube Loader enabled check 2021-10-09 10:45:57 +08:00
Shao Yu-Lung (Allen)
9a451684f2 up php default version to 7.4 2021-10-09 10:44:21 +08:00
Shao Yu-Lung (Allen)
22d8ad6d1b Merge pull request #3073 from bestlong/fix-3072
fix php5.6 php-worker swoole
2021-10-09 10:19:20 +08:00
Shao Yu-Lung (Allen)
6c50719b75 fix php5.6 php-worker swoole 2021-10-09 01:18:32 +08:00
Shao Yu-Lung (Allen)
45a7f9ad6f CI: skip ENCHANT, PG_CLIENT 2021-10-08 08:51:33 +08:00
Shao Yu-Lung (Allen)
986deb6925 CI: skip install MSSQL 2021-10-08 08:42:30 +08:00
Shao Yu-Lung (Allen)
8ddd12f94c Merge pull request #3070 from bestlong/fix-3069
php7.0 mongodb fixed version number
2021-10-08 00:07:51 +08:00
Shao Yu-Lung (Allen)
50300f5bb1 php-worker mongodb 2021-10-07 23:39:34 +08:00
Shao Yu-Lung (Allen)
67b7d18607 fix typo 2021-10-07 23:32:57 +08:00
Shao Yu-Lung (Allen)
4439c16acd CI: skip install PG_CLIENT 2021-10-07 22:58:28 +08:00
Shao Yu-Lung (Allen)
ee80578fc6 php7.0 mongodb fixed version number 2021-10-07 22:49:24 +08:00
Shao Yu-Lung (Allen)
82d2b2e313 Merge pull request #3068 from bestlong/check-3067
workspace: add ionCube Loader enabled check
2021-10-07 22:17:44 +08:00
Shao Yu-Lung (Allen)
ee99550258 CI: skip ENCHANT 2021-10-07 22:04:06 +08:00
Shao Yu-Lung (Allen)
c393bf226b workspace: add ionCube Loader enabled check 2021-10-07 21:57:09 +08:00
Shao Yu-Lung (Allen)
8184e801d8 Merge pull request #3050 from lilashih/master
laravel octane nginx configuration added
2021-10-07 20:47:20 +08:00
Shao Yu-Lung (Allen)
e718e2ee4d Merge pull request #3066 from dhtmdgkr123/master
fix weaver conf
2021-10-05 22:04:09 +08:00
dhtmdgkr123
42abd8b390 fix docker-compose up error
FIx docker-compose up error
2021-10-04 17:59:11 +09:00
Nisar Ahmed
306a8a6050 Update newrelic PHP Agent version to support PHP 8.x 2021-09-28 12:57:04 +10:00
Shao Yu-Lung (Allen)
1008cdcee5 Merge pull request #3058 from GautierDele/master
 Add mongo crendentials to environment
2021-09-22 17:25:33 +08:00
Shao Yu-Lung (Allen)
8b0ffac149 Merge pull request #3057 from marcos-kubis-mk/master
Add php trader extension
2021-09-22 17:24:36 +08:00
Shao Yu-Lung (Allen)
224266dc88 Merge pull request #3061 from bestlong/fix-3060
Fix #3060
2021-09-22 17:23:38 +08:00
Shao Yu-Lung (Allen)
cb9d98476a Fix #3060 2021-09-22 17:20:45 +08:00
Shao Yu-Lung (Allen)
ebd5a22568 Merge pull request #3053 from duchymor/master
fix php8 oci8
2021-09-22 14:42:49 +08:00
Shao Yu-Lung (Allen)
50fa29feee Merge pull request #3055 from Geovanek/master
Set phyton version to work laravel-echo-server
2021-09-22 14:40:26 +08:00
Shao Yu-Lung (Allen)
c92ced5c2f Merge branch 'master' into master 2021-09-22 14:40:01 +08:00
Shao Yu-Lung (Allen)
2c52d10a39 Merge pull request #3052 from eric-reichenbach/patch-1
Fix the python dependancies in laravel echo server
2021-09-22 14:36:02 +08:00
Gautier DELEGLISE
00a3e0cb64 added mongo credentials 2021-09-20 11:13:47 +02:00
Gautier DELEGLISE
147ff33530 added mongo credentials 2021-09-20 11:13:00 +02:00
Gautier DELEGLISE
aaf04367e6 🐛 duplicates apt-get install 2021-09-20 11:11:45 +02:00
Marcos Kubis
2dc5954bbf Add php trader extension 2021-09-19 17:48:42 -03:00
Geovanek
7511d4f148 Set phyton version to work laravel-echo-server 2021-09-14 09:43:27 -03:00
Adam Ducho
5b04b8a6d1 php fix oci8 versions 2021-09-10 09:36:58 +02:00
Adam Ducho
70ff1d6da7 php fix oci8 versions 2021-09-10 09:32:43 +02:00
eric-reichenbach
a8be1768b9 Fix the python dependancies in laravel echo server
The build fail with the previous Dockerfile
2021-09-10 09:04:53 +02:00
Shao Yu-Lung (Allen)
bc894b6ee0 Merge pull request #3048 from joe-niland/php-worker-mssql
Add ability to install MSSQL drivers in php-worker
2021-09-09 17:54:43 +08:00
lila
71d73e0d83 fix for laravel octane watch 2021-09-07 22:47:55 +08:00
lila
2117e7765b laravel octane nginx configuration added 2021-09-07 22:46:51 +08:00
Shao Yu-Lung (Allen)
5ccb43659a Merge pull request #3049 from nisar-med/master
PHP-FPM: Fix arguments passed to PHP-FPM Dockerfile to install NEWRELIC
2021-09-06 15:23:16 +08:00
Nisar Ahmed
2d09864c96 PHP-FPM: Fix arguments passed to PHP-FPM Dockerfile to install NEWRELIC 2021-09-06 12:00:58 +10:00
Joe Niland
850eadc143 Add ability to install MSSQL drivers in php-worker 2021-09-06 10:13:43 +10:00
Shao Yu-Lung (Allen)
fffe51c51c Merge pull request #3045 from amorZhu/master
Update workspace and php-fpm mirror links
2021-08-31 22:47:22 +08:00
Shao Yu-Lung (Allen)
f0fbfa0956 Merge pull request #3046 from GautierDele/patch-1
🐛 ♻️ smbclient wasn't working + refactored mssql
2021-08-31 22:42:23 +08:00
Gautier DELEGLISE
6c9ca44573 🐛 wrong command 2021-08-30 14:10:24 +02:00
Gautier DELEGLISE
c784aad5a7 🐛 ♻️ smbclient wasn't working + refactored mssql
Relates #3042
2021-08-30 12:50:37 +02:00
Amor
7298c60d0f change workspace dockerfile mirror link 2021-08-30 18:29:47 +08:00
Amor
d544a1a63c Remove workspace docker image redundant mirror links & Update php-fpm docker image link to Tsinghua University 2021-08-30 13:54:03 +08:00
Amor
53b5166236 reset php-fpm/Dockerfile 2021-08-30 10:55:31 +08:00
Amor
fa407d2b2f update .env and README 2021-08-27 17:32:40 +08:00
Shao Yu-Lung (Allen)
47d25b0c97 Merge pull request #3043 from bestlong/fix-workspace-sqlsrv
fix workspace sqlsrv extension install
2021-08-27 17:30:50 +08:00
Amor
e11e9053ed update ubuntu source 2021-08-27 17:26:47 +08:00
Amor
4bc5942ad5 update ubuntu source 2021-08-27 17:25:27 +08:00
Amor
044bbc734b remove source.sh & update nvm git address 2021-08-27 17:23:22 +08:00
Shao Yu-Lung (Allen)
1d2bc53833 fix workspace sqlsrv extension install 2021-08-27 16:49:10 +08:00
Shao Yu-Lung (Allen)
910211ba2d CI job Add path filter 2021-08-19 17:20:18 +08:00
Shao Yu-Lung (Allen)
a2440e9f48 CI job Add path filter 2021-08-19 17:19:33 +08:00
Mahmoud Zalt
e72d849007 fix doc style 2021-08-18 19:06:27 +02:00
Shao Yu-Lung (Allen)
c3f9863799 Merge pull request #3040 from zhuocwang/master
feat:support rabbitmq v3.9
2021-08-17 17:32:16 +08:00
zhuocwang
32ffc84d01 clean up .env.example 2021-08-17 13:49:27 +08:00
Shao Yu-Lung (Allen)
76ca731b8e deploy docs only on master branch 2021-08-17 09:46:19 +08:00
Shao Yu-Lung (Allen)
bb3e24260e CI job skip install SSDB extension. 2021-08-17 08:58:21 +08:00
Shao Yu-Lung (Allen)
75e5a56c70 only on laradock repo run build docs job 2021-08-17 07:56:45 +08:00
zhuocwang
f16445c9f2 feat:support rabbitmq v3.9 2021-08-16 21:44:49 +08:00
Mahmoud Zalt
9707cb44b1 fix the build and deployment of the hugo site 2021-08-13 18:05:55 +02:00
Shao Yu-Lung (Allen)
4d7a3f3c84 Merge pull request #3000 from 51/master
Add OpenResty, SSDB and php-ssdb extension to Laradock.
2021-08-13 17:11:10 +08:00
Shao Yu-Lung (Allen)
d411d907c1 Merge pull request #3036 from glorand/patch-2
Update available php version list
2021-08-13 17:09:34 +08:00
Lorand Gombos
68833d188c Update available php version list 2021-08-13 10:16:48 +03:00
Shao Yu-Lung (Allen)
0d1479b2b7 Merge pull request #2699 from lionslair/feature/upgrade-caddy-version-2
Upgrade Caddy Webserver to version 2
2021-08-12 17:07:45 +08:00
Shao Yu-Lung (Allen)
aca0b9b15c Merge pull request #3032 from bestlong/fix-3017
fix build error for PHP-FPM Audiowaveform
2021-08-12 17:03:06 +08:00
Shao Yu-Lung (Allen)
acbfd7d049 Merge pull request #3020 from memochou1993/master
Add console port and fix environments for minio
2021-08-12 16:55:48 +08:00
Shao Yu-Lung (Allen)
fa163901bf Merge branch 'master' into fix-3017 2021-08-12 16:54:53 +08:00
Mahmoud Zalt
471e69977c build the hugo site using github actions 2021-07-31 15:42:39 +02:00
Mahmoud Zalt
e494712a5b add sponsor logo 2021-07-30 11:06:10 +02:00
Shao Yu-Lung (Allen)
00ee9d74d5 fix build error for PHP-FPM Audiowaveform
#3017, #3030, #3031
2021-07-29 17:24:39 +08:00
Shao Yu-Lung (Allen)
15e65664e9 Merge pull request #3031 from bestlong/fix-3030
skip install AUDIOWAVEFORM
2021-07-29 16:10:07 +08:00
Shao Yu-Lung (Allen)
87b416769c skip install AUDIOWAVEFORM extension
#3030
2021-07-29 10:04:34 +08:00
Shao Yu-Lung (Allen)
48eb9afc1d Merge pull request #3009 from vlauciani/issue_3008
laravel-horizon - Add Alpine version in the FROM instruction
2021-07-29 10:03:14 +08:00
Larry
b7de2868eb fix bug in php-worker 2021-07-21 13:46:21 +08:00
Memo Chou
96e5e8220e Use dotenv for env keys 2021-07-11 00:38:01 +08:00
Memo Chou
2ac65c3fea Add console port and fix environments for minio 2021-07-11 00:13:15 +08:00
Valentino Lauciani
58edaa6421 Add Alpine version to solve issue: https://github.com/laradock/laradock/issues/3008 2021-07-01 12:22:46 +02:00
Larry
b0d928762e restore default.conf root path for openresty 2021-06-26 00:45:55 +08:00
Larry
46e5daa160 add openresty and ssdb setting in .env.example 2021-06-26 00:15:19 +08:00
Shao Yu-Lung (Allen)
2bbe850d28 Merge pull request #2999 from egege/master
change README-zh
2021-06-24 22:58:47 +08:00
Larry
b0f6fec975 remove dns setting in ssdb 2021-06-24 00:13:46 +08:00
Larry
e0a88ac371 add openresty and ssdb 2021-06-23 22:56:12 +08:00
zhangxuejiang
ae57d2bd1f change README-zh 2021-06-22 23:41:00 +08:00
Shao Yu-Lung (Allen)
ef88ad84fd Merge pull request #2995 from garbinmarcelo/master
Changed startup.sh from supervisord to apache2ctl
2021-06-16 21:31:51 +08:00
Larry
0b6c266744 fix bug 2021-06-12 21:28:43 +08:00
Larry
898434b59e add php ssdb extension 2021-06-12 20:49:45 +08:00
Shao Yu-Lung (Allen)
ef1140dc4a Merge pull request #2046 from lanphan/mssql
update adminer to support SQL Server
2021-06-12 10:50:41 +08:00
Shao Yu-Lung (Allen)
329bdce155 Merge pull request #2854 from erfantkerfan/master
allow larage file imports
2021-06-12 10:47:30 +08:00
Shao Yu-Lung (Allen)
bc34cfe362 Merge pull request #2985 from SinCOS/master
update source.sh for chinese source
2021-06-12 10:45:23 +08:00
Shao Yu-Lung (Allen)
ad072b50fb Merge pull request #2989 from blite/patch-1
Documentation Fix: Correct port number on phpmyadmin setup
2021-06-11 16:36:05 +08:00
Shao Yu-Lung (Allen)
dd596be437 Merge pull request #2972 from AxelPAL/nats
Add NATS messaging system
2021-06-11 16:34:24 +08:00
Marcelo Garbin
90660fbb77 changed startup from supervisor to apache2ctl 2021-06-10 00:06:56 -03:00
ben
eda21c22ff Correct port number on phpmyadmin setup
Port was 8080 but the default is set to 8081
2021-06-06 15:01:06 -07:00
SinCOS
b45c68a1d0 Merge pull request #1 from SinCOS/update-ubuntu-mirrors-version-for-chinese
Update sources.sh
2021-06-04 22:23:50 +08:00
SinCOS
fb6c672cae Update sources.sh 2021-06-04 22:22:51 +08:00
Alexander Palchikov
0c7f5a2b2a nats messaging system 2021-06-04 18:32:37 +05:00
Shao Yu-Lung (Allen)
3d57064466 Merge pull request #2982 from aa-ahmed-aa/custom_composer_version
give laradock the ability to install custom composer version
2021-06-04 20:55:03 +08:00
Shao Yu-Lung (Allen)
9618f069d3 Merge pull request #2981 from AxelPAL/tarantool
Add Tarantool platform
2021-06-04 20:53:41 +08:00
Shao Yu-Lung (Allen)
82d3bf4c97 Merge pull request #2984 from da-mask/master
Update multiple projects section
2021-06-04 13:05:41 +08:00
da-mask
5d19a3646e Update multiple projects section
Added some extra clarification on a point that tricked me up for a bit.
2021-06-03 14:18:53 +10:00
aa-ahmed-aa
da1124aacb give laradock the ability to install custom composer version 2021-06-02 19:14:30 +02:00
AxelPAL
885e47d117 added tarantool admin service 2021-06-02 15:20:22 +05:00
Alexander Palchikov
e92ce2eb6c adding Tarantool 2021-05-27 23:28:58 +05:00
Shao Yu-Lung (Allen)
77be7c4001 Merge pull request #2976 from ahkui/ahkui-fix-python-pip
workspace - install pip from python script
2021-05-26 18:32:11 +08:00
Shao Yu-Lung (Allen)
399d1c8181 Merge branch 'master' into ahkui-fix-python-pip 2021-05-26 12:22:58 +08:00
Shao Yu-Lung (Allen)
09043c4992 Merge pull request #2973 from mics8128/master
fix build workspace error when WORKSPACE_INSTALL_MSSQL=true
2021-05-26 12:19:12 +08:00
Mahmoud Zalt
5cf7449d42 update sponsors logos 2021-05-25 20:33:23 +02:00
ahkui
cc88f7b382 workspace - install pip from python script 2021-05-24 03:06:31 +08:00
Mahmoud Zalt
f031ded6dd update sponsors logos 2021-05-21 17:40:47 +02:00
Mics
e138f03d50 fix build workspace error when WORKSPACE_INSTALL_MSSQL=true 2021-05-20 18:16:42 +08:00
Shao Yu-Lung (Allen)
8fb2cccdd9 Merge pull request #2965 from garbinmarcelo/master
removed gitkeep from apache2/ssl and duplication APACHE_SSL_PATH
2021-05-20 13:08:57 +08:00
Shao Yu-Lung (Allen)
74528be87b Merge pull request #2970 from egege/egege-pr
elk change to docker official repository
2021-05-19 09:33:33 +08:00
zhangxuejiang
a98cc18a74 elk change to docker official repository 2021-05-14 17:39:35 +08:00
Marcelo Garbin
c548447d9a removed gitkeep from apache2/ssl and duplication APACHE_SSL_PATH 2021-05-04 08:55:20 -03:00
Shao Yu-Lung (Allen)
477428146e Merge pull request #2964 from DocLM/bugfix/postgres-permissions
Fix PostgreSQL initialization scripts permissions
2021-05-01 23:53:33 +08:00
Shao Yu-Lung (Allen)
e678fafc07 Merge pull request #2962 from ryan1068/patch-1
Add Kafka Service
2021-05-01 23:37:21 +08:00
Leonardo Medici
6a4d93ee2f Fix PostgreSQL initialization scripts permissions 2021-05-01 11:26:49 +02:00
Ryan
e95bfd835e Update docker-compose.yml 2021-04-26 11:26:40 +08:00
Shao Yu-Lung (Allen)
618a9d180c Merge pull request #2960 from laradock/fix-ci
feat(CI build failed):  php-fpm AMQP
2021-04-26 10:38:14 +08:00
Shao Yu-Lung (Allen)
f49b0cbc3a clean up 2021-04-25 23:49:07 +08:00
Shao Yu-Lung (Allen)
78e0d4d54c fix amqp build faild
#2959
2021-04-25 23:48:10 +08:00
Shao Yu-Lung (Allen)
91575b115c Merge pull request #2958 from laradock/ldap
feat(ldap extension): php-worker horizon
2021-04-23 21:49:11 +08:00
Shao Yu-Lung (Allen)
b79d306004 feat(ldap extension): php-worker horizon
#2956
2021-04-22 23:34:17 +08:00
Shao Yu-Lung (Allen)
3778c90932 Merge pull request #2805 from apasov/patch-1
fix incomplete SSL chain error
2021-04-17 21:11:11 +08:00
Erfan
c1f76443b1 allow larage file imports 2021-03-04 17:26:10 +03:30
Ilya Apasov
fbda1f542f fix incomplete SSL chain error
fixes #2804
2020-12-22 16:27:31 +02:00
Nathan Rzepecki
6a48af7730 Update the Caddyfile to serve a simple https local environment 2020-09-06 15:49:23 +08:00
Nathan Rzepecki
283ea64fbf Update the Dockerfile to use the official caddy2 docker images 2020-09-06 15:48:43 +08:00
Nathan Rzepecki
568683dbf8 Remove the auth list. see the caddy docks if needed 2020-09-06 15:48:11 +08:00
Lan Phan
897b5704dc update adminer to support SQL Server 2019-03-19 22:57:20 +07:00
68 changed files with 4426 additions and 867 deletions

View File

@@ -39,7 +39,7 @@ COMPOSE_PROJECT_NAME=laradock
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).
# Accepted values: 8.0 - 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
PHP_VERSION=7.3
PHP_VERSION=7.4
### Phalcon Version ###########################################
@@ -74,8 +74,6 @@ COMPOSE_CONVERT_WINDOWS_PATHS=1
# If you need to change the sources (i.e. to China), set CHANGE_SOURCE to true
CHANGE_SOURCE=false
# Set CHANGE_SOURCE and UBUNTU_SOURCE option if you want to change the Ubuntu system sources.list file.
UBUNTU_SOURCE=aliyun
# Set ORACLE INSTANT_CLIENT_MIRROR option if you want to use Intranet improve download, you can download files first
ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/diogomascarenha/oracle-instantclient/raw/master/
@@ -101,7 +99,7 @@ SHELL_OH_MY_ZSH_ALIASES=false
WORKSPACE_BASE_IMAGE_TAG_PREFIX=latest
WORKSPACE_COMPOSER_GLOBAL_INSTALL=true
WORKSPACE_COMPOSER_VERSION=2
WORKSPACE_COMPOSER_AUTH=false
WORKSPACE_COMPOSER_AUTH_JSON=false
WORKSPACE_COMPOSER_REPO_PACKAGIST=
WORKSPACE_NVM_NODEJS_ORG_MIRROR=
WORKSPACE_INSTALL_NODE=true
@@ -136,6 +134,7 @@ WORKSPACE_INSTALL_IMAP=false
WORKSPACE_INSTALL_MONGO=false
WORKSPACE_INSTALL_AMQP=false
WORKSPACE_INSTALL_CASSANDRA=false
WORKSPACE_INSTALL_ZMQ=false
WORKSPACE_INSTALL_GEARMAN=false
WORKSPACE_INSTALL_MSSQL=false
WORKSPACE_INSTALL_DRUSH=false
@@ -147,6 +146,7 @@ WORKSPACE_INSTALL_OCI8=false
WORKSPACE_INSTALL_V8JS=false
WORKSPACE_INSTALL_LARAVEL_ENVOY=false
WORKSPACE_INSTALL_LARAVEL_INSTALLER=false
WORKSPACE_INSTALL_XLSWRITER=false
WORKSPACE_INSTALL_DEPLOYER=false
WORKSPACE_INSTALL_PRESTISSIMO=false
WORKSPACE_INSTALL_LINUXBREW=false
@@ -199,6 +199,8 @@ WORKSPACE_INSTALL_LNAV=false
WORKSPACE_INSTALL_PROTOC=false
WORKSPACE_INSTALL_PHPDECIMAL=false
WORKSPACE_INSTALL_ZOOKEEPER=false
WORKSPACE_INSTALL_SSDB=false
WORKSPACE_INSTALL_TRADER=false
WORKSPACE_PROTOC_VERSION=latest
WORKSPACE_INSTALL_MEMCACHED=true
@@ -227,6 +229,7 @@ PHP_FPM_INSTALL_IMAP=false
PHP_FPM_INSTALL_MONGO=false
PHP_FPM_INSTALL_AMQP=false
PHP_FPM_INSTALL_CASSANDRA=false
PHP_FPM_INSTALL_ZMQ=false
PHP_FPM_INSTALL_GEARMAN=false
PHP_FPM_INSTALL_MSSQL=false
PHP_FPM_INSTALL_SSH2=false
@@ -260,8 +263,11 @@ PHP_FPM_INSTALL_PING=false
PHP_FPM_INSTALL_SSHPASS=false
PHP_FPM_INSTALL_MAILPARSE=false
PHP_FPM_INSTALL_WKHTMLTOPDF=false
PHP_FPM_INSTALL_XLSWRITER=false
PHP_FPM_INSTALL_PHPDECIMAL=false
PHP_FPM_INSTALL_ZOOKEEPER=false
PHP_FPM_INSTALL_SSDB=false
PHP_FPM_INSTALL_TRADER=false
PHP_FPM_FFMPEG=false
PHP_FPM_AUDIOWAVEFORM=false
PHP_FPM_ADDITIONAL_LOCALES="en_US.UTF-8 es_ES.UTF-8 fr_FR.UTF-8"
@@ -282,16 +288,19 @@ PHP_FPM_NEW_RELIC_APP_NAME=app_name
PHP_WORKER_INSTALL_BZ2=false
PHP_WORKER_INSTALL_GD=false
PHP_WORKER_INSTALL_XLSWRITER=false
PHP_WORKER_INSTALL_IMAGEMAGICK=false
PHP_WORKER_IMAGEMAGICK_VERSION=latest
PHP_WORKER_INSTALL_GMP=false
PHP_WORKER_INSTALL_GNUPG=false
PHP_WORKER_INSTALL_LDAP=false
PHP_WORKER_INSTALL_PGSQL=false
PHP_WORKER_INSTALL_MONGO=false
PHP_WORKER_INSTALL_BCMATH=false
PHP_WORKER_INSTALL_MEMCACHED=false
# PHP_WORKER_INSTALL_OCI8 Does not work in php5.6 version
PHP_WORKER_INSTALL_OCI8=false
PHP_WORKER_INSTALL_MSSQL=false
PHP_WORKER_INSTALL_PHALCON=false
PHP_WORKER_INSTALL_SOAP=false
PHP_WORKER_INSTALL_ZIP_ARCHIVE=false
@@ -307,6 +316,7 @@ PHP_WORKER_INSTALL_GEARMAN=false
PHP_WORKER_INSTALL_REDIS=false
PHP_WORKER_INSTALL_IMAP=false
PHP_WORKER_INSTALL_XMLRPC=false
PHP_WORKER_INSTALL_SSDB=false
PHP_WORKER_PUID=1000
PHP_WORKER_PGID=1000
@@ -321,12 +331,23 @@ NGINX_PHP_UPSTREAM_CONTAINER=php-fpm
NGINX_PHP_UPSTREAM_PORT=9000
NGINX_SSL_PATH=./nginx/ssl/
### OpenResty #################################################
OPENRESTY_HOST_HTTP_PORT=80
OPENRESTY_HOST_HTTPS_PORT=443
OPENRESTY_HOST_LOG_PATH=./logs/openresty/
OPENRESTY_SITES_PATH=./openresty/sites/
OPENRESTY_PHP_UPSTREAM_CONTAINER=php-fpm
OPENRESTY_PHP_UPSTREAM_PORT=9000
OPENRESTY_SSL_PATH=./openresty/ssl/
### LARAVEL_HORIZON ################################################
LARAVEL_HORIZON_INSTALL_BZ2=false
LARAVEL_HORIZON_INSTALL_GD=false
LARAVEL_HORIZON_INSTALL_GMP=false
LARAVEL_HORIZON_INSTALL_GNUPG=false
LARAVEL_HORIZON_INSTALL_LDAP=false
LARAVEL_HORIZON_INSTALL_IMAGEMAGICK=false
LARAVEL_HORIZON_IMAGEMAGICK_VERSION=latest
LARAVEL_HORIZON_INSTALL_SOCKETS=false
@@ -346,7 +367,6 @@ APACHE_HOST_HTTP_PORT=80
APACHE_HOST_HTTPS_PORT=443
APACHE_HOST_LOG_PATH=./logs/apache2
APACHE_SITES_PATH=./apache2/sites
APACHE_SSL_PATH=./apache2/ssl
APACHE_PHP_UPSTREAM_CONTAINER=php-fpm
APACHE_PHP_UPSTREAM_PORT=9000
APACHE_PHP_UPSTREAM_TIMEOUT=60
@@ -386,6 +406,10 @@ REDIS_PORT=6379
REDIS_CLUSTER_PORT_RANGE=7000-7005
### SSDB #################################################
SSDB_PORT=16801
### ZooKeeper #############################################
ZOOKEEPER_PORT=2181
@@ -424,6 +448,11 @@ POSTGRES_PASSWORD=secret
POSTGRES_PORT=5432
POSTGRES_ENTRYPOINT_INITDB=./postgres/docker-entrypoint-initdb.d
### POSTGRES-POSTGIS ##############################################
POSTGIS_VERSION=latest
POSTGIS_INSTALL_PGSQL_HTTP_FOR_POSTGIS13=false
### SQS ##############################################
SQS_NODE_HOST_PORT=9324
@@ -434,8 +463,7 @@ SQS_MANAGEMENT_HTTP_HOST_PORT=9325
RABBITMQ_NODE_HOST_PORT=5672
RABBITMQ_MANAGEMENT_HTTP_HOST_PORT=15672
RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT=15671
RABBITMQ_DEFAULT_USER=guest
RABBITMQ_DEFAULT_PASS=guest
RABBITMQ_WEB_STOMP_HOST_PORT=15674
### MERCURE ##############################################
@@ -485,6 +513,9 @@ SELENIUM_PORT=4444
### MINIO #################################################
MINIO_PORT=9000
MINIO_CONSOLE_PORT=9001
MINIO_ROOT_USER=laradock
MINIO_ROOT_PASSWORD=laradock
### ADMINER ###############################################
@@ -594,6 +625,8 @@ RETHINKDB_PORT=8090
### MONGODB ###############################################
MONGODB_PORT=27017
MONGO_USERNAME=root
MONGO_PASSWORD=example
### CADDY #################################################
@@ -998,3 +1031,12 @@ GEARMAN_MYSQL_TABLE=gearman_queue
### ELK Stack ##################################################
ELK_VERSION=7.9.1
### Tarantool ##################################################
TARANTOOL_PORT=3301
TARANTOOL_ADMIN_PORT=8002
### NATS ##################################################
NATS_CLIENT_PORT=4222
NATS_MONITORING_PORT=6222
NATS_ROUTE_PORT=8222

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

39
.github/workflows/build-deploy-docs.yml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: Build Deploy Docs
on:
push:
branches:
- master
paths:
- '.github/workflows/build-deploy-docs.yml'
- 'DOCUMENTATION/**'
jobs:
build-deploy-docs:
if: github.repository == 'laradock/laradock'
runs-on: ubuntu-20.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
defaults:
run:
working-directory: ./DOCUMENTATION
steps:
- name: Checkout Source Code
uses: actions/checkout@v2
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.55.0'
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
- name: Build Hugo Site
run: hugo --minify
- name: Deploy Hugo Site to Github Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages
publish_dir: ./docs

View File

@@ -4,9 +4,12 @@ on:
push:
branches: '**'
tags: '**'
paths-ignore:
- '.github/workflows/build-deploy-docs.yml'
- 'DOCUMENTATION/**'
pull_request:
schedule:
- cron: '0 0 * * 0'
- cron: '0 0 * * 0'
jobs:
build-php:
@@ -16,32 +19,35 @@ jobs:
strategy:
fail-fast: false
matrix:
php_version: ["5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0"]
service: [php-fpm, php-worker, workspace, laravel-horizon]
php_version: [ "5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0", "8.1" ]
service: [ php-fpm, php-worker, workspace ]
steps:
- uses: actions/checkout@v2
- name: Build the Docker image
env:
PHP_VERSION: ${{ matrix.php_version }}
run: |
set -eux
cp .env.example .env
sed -i -- 's/=false/=true/g' .env
sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
sed -i -- 's/PHPDBG=true/PHPDBG=false/g' .env
sed -i -- 's/CASSANDRA=true/CASSANDRA=false/g' .env
sed -i -- 's/GEARMAN=true/GEARMAN=false/g' .env
sed -i -- 's/AEROSPIKE=true/AEROSPIKE=false/g' .env
sed -i -- 's/PHALCON=true/PHALCON=false/g' .env
sed -i -- 's/RDKAFKA=true/RDKAFKA=false/g' .env
sed -i -- 's/MAILPARSE=true/MAILPARSE=false/g' .env
sed -i -- 's/OCI8=true/OCI8=false/g' .env
sed -i -- 's/IONCUBE=true/IONCUBE=false/g' .env
sed -i -- 's/V8JS=true/V8JS=false/g' .env
docker-compose build ${{ matrix.service }}
docker-compose up -d --no-deps -- ${{ matrix.service }}
docker-compose exec -T -- ${{ matrix.service }} php -m
docker-compose down
- uses: actions/checkout@v2
- name: Build the Docker image
env:
PHP_VERSION: ${{ matrix.php_version }}
run: |
set -eux
cp .env.example .env
sed -i -- 's/=false/=true/g' .env
sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
sed -i -- 's/CASSANDRA=true/CASSANDRA=false/g' .env
sed -i -- 's/GEARMAN=true/GEARMAN=false/g' .env
sed -i -- 's/AEROSPIKE=true/AEROSPIKE=false/g' .env
sed -i -- 's/PHALCON=true/PHALCON=false/g' .env
sed -i -- 's/RDKAFKA=true/RDKAFKA=false/g' .env
sed -i -- 's/MAILPARSE=true/MAILPARSE=false/g' .env
sed -i -- 's/OCI8=true/OCI8=false/g' .env
sed -i -- 's/V8JS=true/V8JS=false/g' .env
sed -i -- 's/AUDIOWAVEFORM=true/AUDIOWAVEFORM=false/g' .env
sed -i -- 's/SSDB=true/SSDB=false/g' .env
sed -i -- 's/ENCHANT=true/ENCHANT=false/g' .env
sed -i -- 's/PG_CLIENT=true/PG_CLIENT=false/g' .env
sed -i -- 's/MSSQL=true/MSSQL=false/g' .env
docker-compose build ${{ matrix.service }}
docker-compose up -d --no-deps -- ${{ matrix.service }}
docker-compose exec -T -- ${{ matrix.service }} php -m
docker-compose down
build-other:
# Don't trigger on schedule event when in a fork
@@ -50,12 +56,12 @@ jobs:
strategy:
fail-fast: false
matrix:
service: ['nginx', 'redis', 'mysql', 'mariadb', 'percona', 'minio', 'mongo']
service: [ 'nginx', 'redis', 'mysql', 'mariadb', 'percona', 'minio', 'mongo' ]
steps:
- uses: actions/checkout@v2
- name: Build the Docker image
run: |
cp .env.example .env
sed -i -- 's/=false/=true/g' .env
sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
docker-compose build ${{ matrix.service }}
- uses: actions/checkout@v2
- name: Build the Docker image
run: |
cp .env.example .env
sed -i -- 's/=false/=true/g' .env
sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
docker-compose build ${{ matrix.service }}

View File

@@ -16,6 +16,7 @@ env:
- PHP_VERSION=7.3 BUILD_SERVICE=php-worker
- PHP_VERSION=7.4 BUILD_SERVICE=php-worker
- PHP_VERSION=8.0 BUILD_SERVICE=php-worker
- PHP_VERSION=8.1 BUILD_SERVICE=php-worker
- PHP_VERSION=7.0 BUILD_SERVICE=laravel-horizon
- PHP_VERSION=7.1 BUILD_SERVICE=laravel-horizon
@@ -23,6 +24,7 @@ env:
- PHP_VERSION=7.3 BUILD_SERVICE=laravel-horizon
- PHP_VERSION=7.4 BUILD_SERVICE=laravel-horizon
- PHP_VERSION=8.0 BUILD_SERVICE=laravel-horizon
- PHP_VERSION=8.1 BUILD_SERVICE=laravel-horizon
- PHP_VERSION=NA BUILD_SERVICE=solr
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"

View File

@@ -915,11 +915,7 @@ run from any cli: <br>`curl -X PURGE https://yourwebsite.com/`.
// ...
],
// ...
],
```
```
5 - Open your Laravel's `.env` file and update the following variables:
@@ -958,7 +954,7 @@ More details about this [here](https://github.com/jenssegers/laravel-mongodb#ins
docker-compose up -d mariadb phpmyadmin
```
*Note: To use with MariaDB, open `.env` and set `PMA_DB_ENGINE=mysql` to `PMA_DB_ENGINE=mariadb`.*
2. Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
2. Open your browser and visit the localhost on port **8081**: `http://localhost:8081`, use server: "mysql", user: "default" and password: "secret for the default mysql setup.
@@ -1467,8 +1463,31 @@ docker-compose up -d mosquitto
5 - Publish: `mqtt pub -t 'test' -h localhost -p 9001 -C 'ws' -m 'Hello!'`
<br>
<a name="Use-Tarantool"></a>
## Use Tarantool (+ Admin panel)
1 - Configure Tarantool Port and Tarantool Admin Port using environment variables: `TARANTOOL_PORT` and `TARANTOOL_ADMIN_PORT`. Default ports are 3301 and 8002.
2 - Run the Tarantool and Tarantool Admin tool using `docker-compose up`command:
```bash
docker-compose up -d tarantool tarantool-admin
```
3 - You can open admin tool visiting localhost:8002
4 - There you should set `Hostname` with the value `tarantool`
5 - After that your tarantool data will be available inside admin panel.
6 - Also you can connect to tarantool server in console mode with this command:
```bash
docker-compose exec tarantool console
```
7 - There you can operate with tarantool database ([official documentation](https://www.tarantool.io/en/doc/latest/) can be helpful).
<br>

View File

@@ -107,6 +107,12 @@ Your folder structure should look like this:
* project-2
```
Make sure the `APP_CODE_PATH_HOST` variable points to parent directory.
```
APP_CODE_PATH_HOST=../
```
2 - Go to your web server and create config files to point to different project directory when visiting different domains:
For **Nginx** go to `nginx/sites`, for **Apache2** `apache2/sites`.

View File

@@ -97,7 +97,7 @@ In China, the origin source of composer and npm is very slow. You can add `WORKS
Example:
```bash
WORKSPACE_NPM_REGISTRY=https://registry.npm.taobao.org
WORKSPACE_NPM_REGISTRY=https://registry.npmmirror.com
WORKSPACE_COMPOSER_REPO_PACKAGIST=https://packagist.phpcomposer.com
```

View File

@@ -17,7 +17,7 @@ It supports a variety of common services, all pre-configured to provide a ready
<a name="features"></a>
## Features
- Easy switch between PHP versions: 7.4, 7.3, 7.2, 7.1, 5.6...
- Easy switch between PHP versions: 8.0, 7.4, 7.3, 7.2, 7.1, 5.6...
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
- Run your own stack: Memcached, HHVM, RabbitMQ...
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
@@ -385,9 +385,12 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti" ></a>
<a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a>
<a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a>
<a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a>
<a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti"></a>
<a href="https://opencollective.com/laradock/tiers/gold-sponsors/0/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/gold-sponsors/0/avatar.svg?button=false&isActive=true" height="75px"></a>
@@ -414,6 +417,9 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://veepn.com/vpn-apps/vpn-for-chrome/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/VeePN.png" height="65px" alt="VeePN Chrome extension"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/0/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/0/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/1/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/1/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/2/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/2/avatar.svg?button=false&isActive=true" height="65px"></a>
@@ -436,6 +442,13 @@ Sponsoring is an act of giving in a different fashion. 🌱
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/18/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/18/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/19/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/19/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/20/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/20/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/21/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/21/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/22/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/22/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/23/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/23/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/24/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/24/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/25/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/25/avatar.svg?button=false&isActive=true" height="65px"></a>
</p>
### Bronze Sponsors
@@ -475,6 +488,39 @@ Sponsoring is an act of giving in a different fashion. 🌱
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/28/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/28/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/29/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/29/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/30/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/30/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/31/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/31/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/32/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/32/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/33/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/33/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/34/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/34/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/35/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/35/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/36/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/36/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/37/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/37/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/38/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/38/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/39/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/39/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/40/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/40/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/41/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/41/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/42/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/42/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/43/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/43/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/44/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/44/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/45/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/45/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/46/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/46/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/47/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/47/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/48/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/48/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/49/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/49/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/50/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/50/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/51/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/51/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/52/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/52/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/53/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/53/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/54/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/54/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/55/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/55/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/56/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/56/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/57/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/57/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/58/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/58/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/59/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/59/avatar.svg?button=false&isActive=true" height="55px"></a>
</p>

View File

@@ -72,6 +72,19 @@ git clone https://github.com/laradock/laradock.git
```bash
cp .env.example .env
```
如果你在中国内地可以修改一些配置来进行镜像加速不过build时还是会请求GitHub来下载一些文件此时需要保证你的计算机能连上GitHub
(1配置DockerHub镜像加速[链接](https://www.runoob.com/docker/docker-mirror-acceleration.html)
(2) 修改.env
```
# 开启ubuntu国内源
CHANGE_SOURCE=true
# composer镜像源
WORKSPACE_COMPOSER_REPO_PACKAGIST=https://mirrors.aliyun.com/composer/
# nvm镜像源
WORKSPACE_NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node
# npm镜像源
WORKSPACE_NPM_REGISTRY=https://registry.npmmirror.com
```
3. 运行这些容器。
```bash

View File

@@ -192,9 +192,12 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti" ></a>
<a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a>
<a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a>
<a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a>
<a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti"></a>
<a href="https://opencollective.com/laradock/tiers/gold-sponsors/0/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/gold-sponsors/0/avatar.svg?button=false&isActive=true" height="75px"></a>
@@ -221,6 +224,9 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://veepn.com/vpn-apps/vpn-for-chrome/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/VeePN.png" height="65px" alt="VeePN Chrome extension"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/0/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/0/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/1/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/1/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/2/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/2/avatar.svg?button=false&isActive=true" height="65px"></a>
@@ -243,6 +249,13 @@ Sponsoring is an act of giving in a different fashion. 🌱
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/18/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/18/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/19/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/19/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/20/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/20/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/21/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/21/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/22/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/22/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/23/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/23/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/24/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/24/avatar.svg?button=false&isActive=true" height="65px"></a>
<a href="https://opencollective.com/laradock/tiers/silver-sponsors/25/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/silver-sponsors/25/avatar.svg?button=false&isActive=true" height="65px"></a>
</p>
### Bronze Sponsors
@@ -282,6 +295,39 @@ Sponsoring is an act of giving in a different fashion. 🌱
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/28/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/28/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/29/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/29/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/30/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/30/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/31/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/31/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/32/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/32/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/33/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/33/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/34/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/34/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/35/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/35/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/36/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/36/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/37/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/37/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/38/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/38/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/39/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/39/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/40/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/40/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/41/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/41/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/42/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/42/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/43/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/43/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/44/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/44/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/45/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/45/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/46/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/46/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/47/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/47/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/48/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/48/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/49/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/49/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/50/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/50/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/51/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/51/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/52/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/52/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/53/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/53/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/54/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/54/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/55/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/55/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/56/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/56/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/57/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/57/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/58/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/58/avatar.svg?button=false&isActive=true" height="55px"></a>
<a href="https://opencollective.com/laradock/tiers/bronze-sponsors/59/website" target="_blank"><img src="https://opencollective.com/laradock/tiers/bronze-sponsors/59/avatar.svg?button=false&isActive=true" height="55px"></a>
</p>

View File

@@ -9,19 +9,19 @@ VOLUME /sessions
# SQL SERVER:
#####################################
USER root
ARG INSTALL_MSSQL=false
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
RUN if [ ${INSTALL_MSSQL} = true ]; then \
set -xe \
# && apk --update add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc unixodbc-dev \
# && pecl channel-update pecl.php.net \
# && pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
# && echo "extension=sqlsrv.so" > /usr/local/etc/php/conf.d/20-sqlsrv.ini \
# && echo "extension=pdo_sqlsrv.so" > /usr/local/etc/php/conf.d/20-pdo_sqlsrv.ini \
&& apk --update add --no-cache freetds unixodbc \
&& apk --update add --no-cache --virtual .build-deps $PHPIZE_DEPS freetds-dev unixodbc-dev \
&& docker-php-ext-install pdo_dblib \
&& apk del .build-deps \
&& apk update \
&& apk add --no-cache --virtual .php-build-dependencies unixodbc-dev freetds-dev \
&& apk add --virtual .php-runtime-dependencies unixodbc freetds \
&& docker-php-ext-configure pdo_odbc --with-pdo-odbc=unixODBC,/usr \
&& docker-php-ext-install pdo_odbc pdo_dblib \
&& apk del .php-build-dependencies \
&& rm -rf /var/cache/apk/* \
;fi
USER adminer

View File

View File

@@ -17,5 +17,5 @@ if [ ${APACHE_HTTP2} = true ]; then
service apache2 restart
fi
# Start supervisord in foreground
supervisord
# Start apache in foreground
/usr/sbin/apache2ctl -D FOREGROUND

View File

@@ -1,5 +1,5 @@
FROM abiosoft/caddy:no-stats
FROM caddy/caddy:latest
CMD ["--conf", "/etc/caddy/Caddyfile", "--log", "stdout", "--agree=true"]
COPY ./caddy/Caddyfile /etc/caddy/Caddyfile
EXPOSE 80 443 2015
EXPOSE 80 443

View File

@@ -1,51 +1,9 @@
# Docs: https://caddyserver.com/docs/caddyfile
0.0.0.0:80 {
root /var/www/public
fastcgi / php-fpm:9000 php {
index index.php
}
laradock.test {
root * /var/www/public
php_fastcgi php-fpm:9000
file_server
# To handle .html extensions with laravel change ext to
# ext / .html
rewrite {
to {path} {path}/ /index.php?{query}
}
gzip
browse
log /var/log/caddy/access.log
errors /var/log/caddy/error.log
# Uncomment to enable TLS (HTTPS)
# Change the first list to listen on port 443 when enabling TLS
#tls self_signed
# To use Lets encrpt tls with a DNS provider uncomment these
# lines and change the provider as required
#tls {
# dns cloudflare
#}
encode gzip
tls internal
}
laradock1.demo:80 {
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
}
laradock3.demo:80 {
import authlist.conf
root /var/www/public
}

View File

@@ -1 +0,0 @@
basicauth / laradock laradock

View File

@@ -3,5 +3,7 @@
letsencrypt certonly --webroot -w /var/www/letsencrypt -d "$CN" --agree-tos --email "$EMAIL" --non-interactive --text
cp /etc/letsencrypt/archive/"$CN"/cert1.pem /var/certs/"$CN"-cert1.pem
cp /etc/letsencrypt/archive/"$CN"/chain1.pem /var/certs/chain1.pem
cp /etc/letsencrypt/archive/"$CN"/fullchain1.pem /var/certs/fullchain1.pem
cp /etc/letsencrypt/archive/"$CN"/privkey1.pem /var/certs/"$CN"-privkey1.pem

View File

@@ -5,7 +5,6 @@ networks:
driver: ${NETWORKS_DRIVER}
backend:
driver: ${NETWORKS_DRIVER}
volumes:
mysql:
driver: ${VOLUMES_DRIVER}
@@ -67,7 +66,6 @@ services:
- SHELL_OH_MY_ZSH=${SHELL_OH_MY_ZSH}
- SHELL_OH_MY_ZSH_AUTOSUGESTIONS=${SHELL_OH_MY_ZSH_AUTOSUGESTIONS}
- SHELL_OH_MY_ZSH_ALIASES=${SHELL_OH_MY_ZSH_ALIASES}
- UBUNTU_SOURCE=${UBUNTU_SOURCE}
- BASE_IMAGE_TAG_PREFIX=${WORKSPACE_BASE_IMAGE_TAG_PREFIX}
- LARADOCK_PHP_VERSION=${PHP_VERSION}
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
@@ -88,6 +86,7 @@ services:
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
- INSTALL_CASSANDRA=${WORKSPACE_INSTALL_CASSANDRA}
- INSTALL_ZMQ=${WORKSPACE_INSTALL_ZMQ}
- INSTALL_GEARMAN=${WORKSPACE_INSTALL_GEARMAN}
- INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS}
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
@@ -112,11 +111,12 @@ services:
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
- COMPOSER_VERSION=${WORKSPACE_COMPOSER_VERSION}
- COMPOSER_AUTH=${WORKSPACE_COMPOSER_AUTH}
- COMPOSER_AUTH_JSON=${WORKSPACE_COMPOSER_AUTH_JSON}
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_LARAVEL_INSTALLER=${WORKSPACE_INSTALL_LARAVEL_INSTALLER}
- INSTALL_XLSWRITER=${WORKSPACE_INSTALL_XLSWRITER}
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
- INSTALL_PRESTISSIMO=${WORKSPACE_INSTALL_PRESTISSIMO}
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
@@ -167,6 +167,8 @@ services:
- INSTALL_PROTOC=${WORKSPACE_INSTALL_PROTOC}
- INSTALL_PHPDECIMAL=${WORKSPACE_INSTALL_PHPDECIMAL}
- INSTALL_ZOOKEEPER=${WORKSPACE_INSTALL_ZOOKEEPER}
- INSTALL_SSDB=${WORKSPACE_INSTALL_SSDB}
- INSTALL_TRADER=${WORKSPACE_INSTALL_TRADER}
- PROTOC_VERSION=${WORKSPACE_PROTOC_VERSION}
- INSTALL_DOCKER_CLIENT=${WORKSPACE_INSTALL_DOCKER_CLIENT}
- INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED}
@@ -193,6 +195,7 @@ services:
- DOCKER_TLS_VERIFY=1
- DOCKER_TLS_CERTDIR=/certs
- DOCKER_CERT_PATH=/certs/client
- CHOKIDAR_USEPOLLING=true
networks:
- frontend
- backend
@@ -224,6 +227,7 @@ services:
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
- INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
- INSTALL_ZMQ=${PHP_FPM_INSTALL_ZMQ}
- INSTALL_GEARMAN=${PHP_FPM_INSTALL_GEARMAN}
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
@@ -246,6 +250,7 @@ services:
- INSTALL_IMAGE_OPTIMIZERS=${PHP_FPM_INSTALL_IMAGE_OPTIMIZERS}
- INSTALL_IMAGEMAGICK=${PHP_FPM_INSTALL_IMAGEMAGICK}
- INSTALL_CALENDAR=${PHP_FPM_INSTALL_CALENDAR}
- INSTALL_XLSWRITER=${PHP_FPM_INSTALL_XLSWRITER}
- INSTALL_FAKETIME=${PHP_FPM_INSTALL_FAKETIME}
- INSTALL_IONCUBE=${PHP_FPM_INSTALL_IONCUBE}
- INSTALL_APCU=${PHP_FPM_INSTALL_APCU}
@@ -267,6 +272,8 @@ services:
- INSTALL_XMLRPC=${PHP_FPM_INSTALL_XMLRPC}
- INSTALL_PHPDECIMAL=${PHP_FPM_INSTALL_PHPDECIMAL}
- INSTALL_ZOOKEEPER=${PHP_FPM_INSTALL_ZOOKEEPER}
- INSTALL_SSDB=${PHP_FPM_INSTALL_SSDB}
- INSTALL_TRADER=${PHP_FPM_INSTALL_TRADER}
- DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL=${PHP_DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL}
- PUID=${PHP_FPM_PUID}
- PGID=${PHP_FPM_PGID}
@@ -316,12 +323,15 @@ services:
- INSTALL_IMAGEMAGICK=${PHP_WORKER_INSTALL_IMAGEMAGICK}
- INSTALL_GMP=${PHP_WORKER_INSTALL_GMP}
- INSTALL_GNUPG=${PHP_WORKER_INSTALL_GNUPG}
- INSTALL_LDAP=${PHP_WORKER_INSTALL_LDAP}
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
- INSTALL_MONGO=${PHP_WORKER_INSTALL_MONGO}
- INSTALL_BCMATH=${PHP_WORKER_INSTALL_BCMATH}
- INSTALL_MEMCACHED=${PHP_WORKER_INSTALL_MEMCACHED}
- INSTALL_OCI8=${PHP_WORKER_INSTALL_OCI8}
- INSTALL_MSSQL=${PHP_WORKER_INSTALL_MSSQL}
- INSTALL_PHALCON=${PHP_WORKER_INSTALL_PHALCON}
- INSTALL_XLSWRITER=${PHP_WORKER_INSTALL_XLSWRITER}
- INSTALL_SOAP=${PHP_WORKER_INSTALL_SOAP}
- INSTALL_ZIP_ARCHIVE=${PHP_WORKER_INSTALL_ZIP_ARCHIVE}
- INSTALL_MYSQL_CLIENT=${PHP_WORKER_INSTALL_MYSQL_CLIENT}
@@ -336,6 +346,7 @@ services:
- INSTALL_REDIS=${PHP_WORKER_INSTALL_REDIS}
- INSTALL_IMAP=${PHP_WORKER_INSTALL_IMAP}
- INSTALL_XMLRPC=${PHP_WORKER_INSTALL_XMLRPC}
- INSTALL_SSDB=${PHP_WORKER_INSTALL_SSDB}
- PUID=${PHP_WORKER_PUID}
- PGID=${PHP_WORKER_PGID}
- IMAGEMAGICK_VERSION=${PHP_WORKER_IMAGEMAGICK_VERSION}
@@ -359,6 +370,7 @@ services:
- INSTALL_GD=${LARAVEL_HORIZON_INSTALL_GD}
- INSTALL_GMP=${LARAVEL_HORIZON_INSTALL_GMP}
- INSTALL_GNUPG=${LARAVEL_HORIZON_INSTALL_GNUPG}
- INSTALL_LDAP=${LARAVEL_HORIZON_INSTALL_LDAP}
- INSTALL_IMAGEMAGICK=${LARAVEL_HORIZON_INSTALL_IMAGEMAGICK}
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
- INSTALL_ZIP_ARCHIVE=${LARAVEL_HORIZON_INSTALL_ZIP_ARCHIVE}
@@ -410,6 +422,32 @@ services:
- frontend
- backend
### OpenResty Server #########################################
openresty:
build:
context: ./openresty
args:
- CHANGE_SOURCE=${CHANGE_SOURCE}
- PHP_UPSTREAM_CONTAINER=${OPENRESTY_PHP_UPSTREAM_CONTAINER}
- PHP_UPSTREAM_PORT=${OPENRESTY_PHP_UPSTREAM_PORT}
- http_proxy
- https_proxy
- no_proxy
volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- ${OPENRESTY_HOST_LOG_PATH}:/var/log/nginx
- ${OPENRESTY_SITES_PATH}:/etc/nginx/sites-available
- ${OPENRESTY_SSL_PATH}:/etc/nginx/ssl
ports:
- "${OPENRESTY_HOST_HTTP_PORT}:80"
- "${OPENRESTY_HOST_HTTPS_PORT}:443"
- "${VARNISH_BACKEND_PORT}:81"
depends_on:
- php-fpm
networks:
- frontend
- backend
### Blackfire ########################################
blackfire:
image: blackfire/blackfire
@@ -466,9 +504,10 @@ services:
- ${DATA_PATH_HOST}/minio/config:/root/.minio
ports:
- "${MINIO_PORT}:9000"
- "${MINIO_CONSOLE_PORT}:9001"
environment:
- MINIO_ACCESS_KEY=access
- MINIO_SECRET_KEY=secretkey
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
networks:
- frontend
- backend
@@ -520,7 +559,7 @@ services:
- SA_PASSWORD=${MSSQL_PASSWORD}
- ACCEPT_EULA=Y
volumes:
- ${DATA_PATH_HOST}/mssql:/var/opt/mssql
- mssql:/var/opt/mssql
ports:
- "${MSSQL_PORT}:1433"
networks:
@@ -585,7 +624,11 @@ services:
### PostgreSQL PostGis ###################################
postgres-postgis:
build: ./postgres-postgis
build:
context: ./postgres-postgis
args:
- POSTGIS_VERSION=${POSTGIS_VERSION}
- INSTALL_PGSQL_HTTP_FOR_POSTGIS13=${POSTGIS_INSTALL_PGSQL_HTTP_FOR_POSTGIS13}
volumes:
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
ports:
@@ -610,12 +653,24 @@ services:
image: 'neo4j:latest'
networks:
- backend
### Nats ################################################
nats:
build: ./nats
ports:
- "${NATS_CLIENT_PORT}:4222"
- "${NATS_MONITORING_PORT}:6222"
- "${NATS_ROUTE_PORT}:8222"
networks:
- backend
### MongoDB ##############################################
mongo:
build: ./mongo
ports:
- "${MONGODB_PORT}:27017"
environment:
- MONGO_INITDB_ROOT_USERNAME=${MONGO_USERNAME}
- MONGO_INITDB_ROOT_PASSWORD=${MONGO_PASSWORD}
volumes:
- ${DATA_PATH_HOST}/mongo:/data/db
- ${DATA_PATH_HOST}/mongo_config:/data/configdb
@@ -680,6 +735,15 @@ services:
- "${REDIS_CLUSTER_PORT_RANGE}:7000-7005"
networks:
- backend
### SSDB ################################################
ssdb:
build: ./ssdb
volumes:
- ${DATA_PATH_HOST}/ssdb:/data
ports:
- "${SSDB_PORT}:8888"
networks:
- backend
### ZooKeeper #########################################
zookeeper:
@@ -754,13 +818,13 @@ services:
- "${RABBITMQ_NODE_HOST_PORT}:5672"
- "${RABBITMQ_MANAGEMENT_HTTP_HOST_PORT}:15672"
- "${RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT}:15671"
- "${RABBITMQ_WEB_STOMP_HOST_PORT}:15674"
privileged: true
environment:
- RABBITMQ_DEFAULT_USER=${RABBITMQ_DEFAULT_USER}
- RABBITMQ_DEFAULT_PASS=${RABBITMQ_DEFAULT_PASS}
hostname: laradock-rabbitmq
volumes:
- ${DATA_PATH_HOST}/rabbitmq:/var/lib/rabbitmq
- ./rabbitmq/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
- ./rabbitmq/management_agent.disable_metrics_collector.conf:/etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf
depends_on:
- php-fpm
networks:
@@ -933,7 +997,7 @@ services:
meilisearch:
image: getmeili/meilisearch:latest
volumes:
- ${DATA_PATH_HOST}/meilisearch:/var/lib/meilisearch
- ${DATA_PATH_HOST}/meilisearch:/data.ms
ports:
- "${MEILISEARCH_HOST_PORT}:7700"
networks:
@@ -1454,7 +1518,7 @@ services:
### Docker-in-Docker ################################################
docker-in-docker:
image: docker:19.03-dind
image: docker:20.10-dind
environment:
DOCKER_TLS_SAN: DNS:docker-in-docker
privileged: true
@@ -1948,3 +2012,48 @@ services:
volumes:
- ./react:/usr/src/app/react
- /usr/src/app/react/node_modules
### kafka ####################################################
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://127.0.0.1:9092
KAFKA_MESSAGE_MAX_BYTES: 2000000
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- ${DATA_PATH_HOST}/kafka:/kafka
- /var/run/docker.sock:/var/run/docker.sock
networks:
- backend
### kafka-manager ###########################################
kafka-manager:
image: sheepkiller/kafka-manager
ports:
- 9020:9000
environment:
ZK_HOSTS: zookeeper:2181
networks:
- backend
### tarantool ###########################################
tarantool:
build: ./tarantool
volumes:
- ${DATA_PATH_HOST}/tarantool:/var/lib/tarantool
- ./tarantool/lua:/opt/tarantool
ports:
- ${TARANTOOL_PORT}:3301
networks:
- backend
tarantool-admin:
build: ./tarantool-admin
ports:
- ${TARANTOOL_ADMIN_PORT}:80
networks:
- backend

View File

@@ -1,4 +1,4 @@
ARG ELK_VERSION
FROM docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}
FROM elasticsearch:${ELK_VERSION}
EXPOSE 9200 9300

View File

@@ -36,11 +36,11 @@ COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-agent-port.groov
# jenkins version being bundled in this docker image
ARG JENKINS_VERSION
ENV JENKINS_VERSION ${JENKINS_VERSION:-2.89.2}
ENV JENKINS_VERSION ${JENKINS_VERSION:-2.303.2}
# jenkins.war checksum, download will be validated using it
# 2.89.2
ARG JENKINS_SHA=014f669f32bc6e925e926e260503670b32662f006799b133a031a70a794c8a14
# 2.303.2
ARG JENKINS_SHA=c4b8532e25a33001a3d8883d3cd87a664953ace239b486839b683065817d29cf
# Can be used to customize where jenkins.war get downloaded from

View File

@@ -1,4 +1,4 @@
ARG ELK_VERSION
FROM docker.elastic.co/kibana/kibana:${ELK_VERSION}
FROM kibana:${ELK_VERSION}
EXPOSE 5601

View File

@@ -16,9 +16,9 @@ RUN if [ ${CHANGE_SOURCE} = true ]; then \
;fi
RUN apk add --update \
python \
python-dev \
py-pip \
python3 \
python3-dev \
py3-pip \
build-base
RUN npm install

View File

@@ -37,7 +37,12 @@ RUN apk --update add wget \
procps
RUN pecl channel-update pecl.php.net; \
docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl
docker-php-ext-install mysqli mbstring pdo pdo_mysql xml pcntl; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
php -m | grep -q 'tokenizer'; \
else \
docker-php-ext-install tokenizer; \
fi
# Add a non-root user to help install ffmpeg:
ARG PUID=1000
@@ -64,14 +69,18 @@ ARG INSTALL_GNUPG=false
RUN set -eux; if [ ${INSTALL_GNUPG} = true ]; then \
apk add --no-cache --no-progress --virtual BUILD_DEPS_PHP_GNUPG gpgme-dev; \
apk add --no-cache --no-progress gpgme; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install gnupg-1.5.0RC2; \
else \
pecl install gnupg; \
fi; \
pecl install gnupg; \
docker-php-ext-enable gnupg; \
fi
#Install LDAP
ARG INSTALL_LDAP=false;
RUN set -eux; if [ ${INSTALL_LDAP} = true ]; then \
apk add --no-cache --no-progress openldap-dev; \
docker-php-ext-install ldap; \
php -m | grep -oiE '^ldap$'; \
fi
#Install GD package:
ARG INSTALL_GD=false
RUN if [ ${INSTALL_GD} = true ]; then \

View File

@@ -1,5 +1,5 @@
ARG ELK_VERSION
FROM docker.elastic.co/logstash/logstash:${ELK_VERSION}
FROM logstash:${ELK_VERSION}
USER root
RUN rm -f /usr/share/logstash/pipeline/logstash.conf

View File

@@ -5,3 +5,6 @@
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
[mysqld]
innodb_log_file_size = 4048M
innodb_strict_mode = 0

View File

@@ -2,4 +2,4 @@ FROM minio/minio
LABEL maintainer="Thor Erik Lie <thor@thorerik.com>"
ENTRYPOINT ["minio", "server", "/export"]
ENTRYPOINT ["minio", "server", "--console-address", ":9001", "/export"]

5
nats/Dockerfile Normal file
View File

@@ -0,0 +1,5 @@
FROM nats:latest
LABEL maintainer="Alexander Palchikov <axelpal@gmail.com>"
COPY nats-server.conf /etc/nats/nats-server.conf

25
nats/nats-server.conf Normal file
View File

@@ -0,0 +1,25 @@
# Client port of 4222 on all interfaces
port: 4222
# HTTP monitoring port
monitor_port: 8222
# This is for clustering multiple servers together.
cluster {
# Route connections to be received on any interface on port 6222
port: 6222
# Routes are protected, so need to use them with --routes flag
# e.g. --routes=nats-route://ruser:T0pS3cr3t@otherdockerhost:6222
authorization {
user: ruser
password: T0pS3cr3t
timeout: 2
}
# Routes are actively solicited and connected to from this server.
# This Docker image has none by default, but you can pass a
# flag to the gnatsd docker image to create one to an existing server.
routes = []
}

View File

@@ -0,0 +1,56 @@
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream octane {
server workspace:8000 weight=5 max_fails=3 fail_timeout=30s;
keepalive 16;
}
server {
listen 80;
listen [::]:80;
server_name octane.test;
server_tokens off;
root /var/www/octane/public;
index index.php;
charset utf-8;
location /index.php {
try_files /not_exists @octane;
}
location / {
try_files $uri $uri/ @octane;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location @octane {
set $suffix "";
if ($uri = /index.php) {
set $suffix ?$query_string;
}
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header Scheme $scheme;
proxy_set_header SERVER_PORT $server_port;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_pass http://octane$suffix;
}
error_log /var/log/nginx/octane_error.log;
access_log /var/log/nginx/octane_access.log;
}

211
openresty/Dockerfile Normal file
View File

@@ -0,0 +1,211 @@
# Dockerfile - alpine
# https://github.com/openresty/docker-openresty
ARG RESTY_IMAGE_BASE="alpine"
ARG RESTY_IMAGE_TAG="3.13"
FROM ${RESTY_IMAGE_BASE}:${RESTY_IMAGE_TAG}
LABEL maintainer="Evan Wies <evan@neomantra.net>"
# Docker Build Arguments
ARG RESTY_IMAGE_BASE="alpine"
ARG RESTY_IMAGE_TAG="3.13"
ARG RESTY_VERSION="1.19.3.2"
ARG RESTY_OPENSSL_VERSION="1.1.1k"
ARG RESTY_OPENSSL_PATCH_VERSION="1.1.1f"
ARG RESTY_OPENSSL_URL_BASE="https://www.openssl.org/source"
ARG RESTY_PCRE_VERSION="8.44"
ARG RESTY_J="1"
ARG RESTY_CONFIG_OPTIONS="\
--with-compat \
--with-file-aio \
--with-http_addition_module \
--with-http_auth_request_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_geoip_module=dynamic \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_image_filter_module=dynamic \
--with-http_mp4_module \
--with-http_random_index_module \
--with-http_realip_module \
--with-http_secure_link_module \
--with-http_slice_module \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_sub_module \
--with-http_v2_module \
--with-http_xslt_module=dynamic \
--with-ipv6 \
--with-mail \
--with-mail_ssl_module \
--with-md5-asm \
--with-pcre-jit \
--with-sha1-asm \
--with-stream \
--with-stream_ssl_module \
--with-threads \
"
ARG RESTY_CONFIG_OPTIONS_MORE="\
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--user=www-data \
--group=www-data \
--with-http_iconv_module \
--add-module=/tmp/nginx-ct-master \
--add-module=/tmp/nginx-dav-ext-module-master \
--add-module=/tmp/ngx_brotli \
--add-module=/tmp/ngx_cache_purge-master \
--add-module=/tmp/ngx_http_substitutions_filter_module-master \
"
ARG RESTY_LUAJIT_OPTIONS="--with-luajit-xcflags='-DLUAJIT_NUMMODE=2 -DLUAJIT_ENABLE_LUA52COMPAT'"
ARG RESTY_ADD_PACKAGE_BUILDDEPS=""
ARG RESTY_ADD_PACKAGE_RUNDEPS=""
ARG RESTY_EVAL_PRE_CONFIGURE=""
ARG RESTY_EVAL_POST_MAKE=""
# These are not intended to be user-specified
ARG _RESTY_CONFIG_DEPS="--with-pcre \
--with-cc-opt='-DNGX_LUA_ABORT_AT_PANIC -I/usr/local/openresty/pcre/include -I/usr/local/openresty/openssl/include' \
--with-ld-opt='-L/usr/local/openresty/pcre/lib -L/usr/local/openresty/openssl/lib -Wl,-rpath,/usr/local/openresty/pcre/lib:/usr/local/openresty/openssl/lib' \
"
LABEL resty_image_base="${RESTY_IMAGE_BASE}"
LABEL resty_image_tag="${RESTY_IMAGE_TAG}"
LABEL resty_version="${RESTY_VERSION}"
LABEL resty_openssl_version="${RESTY_OPENSSL_VERSION}"
LABEL resty_openssl_patch_version="${RESTY_OPENSSL_PATCH_VERSION}"
LABEL resty_openssl_url_base="${RESTY_OPENSSL_URL_BASE}"
LABEL resty_pcre_version="${RESTY_PCRE_VERSION}"
LABEL resty_config_options="${RESTY_CONFIG_OPTIONS}"
LABEL resty_config_options_more="${RESTY_CONFIG_OPTIONS_MORE}"
LABEL resty_config_deps="${_RESTY_CONFIG_DEPS}"
LABEL resty_add_package_builddeps="${RESTY_ADD_PACKAGE_BUILDDEPS}"
LABEL resty_add_package_rundeps="${RESTY_ADD_PACKAGE_RUNDEPS}"
LABEL resty_eval_pre_configure="${RESTY_EVAL_PRE_CONFIGURE}"
LABEL resty_eval_post_make="${RESTY_EVAL_POST_MAKE}"
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 set -x ; \
addgroup -g 82 -S www-data ; \
adduser -u 82 -D -S -G www-data www-data && exit 0 ; exit 1
RUN apk add --no-cache --virtual .build-deps \
build-base \
coreutils \
curl \
gd-dev \
geoip-dev \
libxslt-dev \
linux-headers \
make \
perl-dev \
readline-dev \
zlib-dev \
${RESTY_ADD_PACKAGE_BUILDDEPS} \
&& apk add --no-cache \
gd \
geoip \
libgcc \
libxslt \
zlib \
bash \
logrotate \
openssl \
${RESTY_ADD_PACKAGE_RUNDEPS} \
&& cd /tmp \
&& if [ -n "${RESTY_EVAL_PRE_CONFIGURE}" ]; then eval $(echo ${RESTY_EVAL_PRE_CONFIGURE}); fi \
&& cd /tmp \
&& curl -fSL "${RESTY_OPENSSL_URL_BASE}/openssl-${RESTY_OPENSSL_VERSION}.tar.gz" -o openssl-${RESTY_OPENSSL_VERSION}.tar.gz \
&& tar xzf openssl-${RESTY_OPENSSL_VERSION}.tar.gz \
&& cd openssl-${RESTY_OPENSSL_VERSION} \
&& if [ $(echo ${RESTY_OPENSSL_VERSION} | cut -c 1-5) = "1.1.1" ] ; then \
echo 'patching OpenSSL 1.1.1 for OpenResty' \
&& curl -s https://raw.githubusercontent.com/openresty/openresty/master/patches/openssl-${RESTY_OPENSSL_PATCH_VERSION}-sess_set_get_cb_yield.patch | patch -p1 ; \
fi \
&& if [ $(echo ${RESTY_OPENSSL_VERSION} | cut -c 1-5) = "1.1.0" ] ; then \
echo 'patching OpenSSL 1.1.0 for OpenResty' \
&& curl -s https://raw.githubusercontent.com/openresty/openresty/ed328977028c3ec3033bc25873ee360056e247cd/patches/openssl-1.1.0j-parallel_build_fix.patch | patch -p1 \
&& curl -s https://raw.githubusercontent.com/openresty/openresty/master/patches/openssl-${RESTY_OPENSSL_PATCH_VERSION}-sess_set_get_cb_yield.patch | patch -p1 ; \
fi \
&& ./config \
no-threads shared zlib -g \
enable-ssl3 enable-ssl3-method \
--prefix=/usr/local/openresty/openssl \
--libdir=lib \
-Wl,-rpath,/usr/local/openresty/openssl/lib \
&& make -j${RESTY_J} \
&& make -j${RESTY_J} install_sw \
&& cd /tmp \
&& curl -fSL https://downloads.sourceforge.net/project/pcre/pcre/${RESTY_PCRE_VERSION}/pcre-${RESTY_PCRE_VERSION}.tar.gz -o pcre-${RESTY_PCRE_VERSION}.tar.gz \
&& tar xzf pcre-${RESTY_PCRE_VERSION}.tar.gz \
&& cd /tmp/pcre-${RESTY_PCRE_VERSION} \
&& ./configure \
--prefix=/usr/local/openresty/pcre \
--disable-cpp \
--enable-jit \
--enable-utf \
--enable-unicode-properties \
&& make -j${RESTY_J} \
&& make -j${RESTY_J} install \
&& cd /tmp \
&& curl -fSL https://openresty.org/download/openresty-${RESTY_VERSION}.tar.gz -o openresty-${RESTY_VERSION}.tar.gz \
&& tar xzf openresty-${RESTY_VERSION}.tar.gz \
&& curl -fSL https://github.com/grahamedgecombe/nginx-ct/archive/master.tar.gz -o nginx-ct.tar.gz \
&& tar xzf nginx-ct.tar.gz \
&& curl -fSL https://github.com/arut/nginx-dav-ext-module/archive/master.tar.gz -o nginx-dav-ext-module.tar.gz \
&& tar xzf nginx-dav-ext-module.tar.gz \
&& curl -fSL https://www.downsoft.cn/software/linux/nginx/ngx_brotli.tar.gz -o ngx_brotli.tar.gz \
&& tar xzf ngx_brotli.tar.gz \
&& curl -fSL https://github.com/yaoweibin/ngx_http_substitutions_filter_module/archive/master.tar.gz -o ngx_http_substitutions_filter_module.tar.gz \
&& tar xzf ngx_http_substitutions_filter_module.tar.gz \
&& curl -fSL https://github.com/FRiCKLE/ngx_cache_purge/archive/master.tar.gz -o ngx_cache_purge.tar.gz \
&& tar xzf ngx_cache_purge.tar.gz \
&& cd /tmp/openresty-${RESTY_VERSION} \
&& eval ./configure -j${RESTY_J} ${_RESTY_CONFIG_DEPS} ${RESTY_CONFIG_OPTIONS} ${RESTY_CONFIG_OPTIONS_MORE} ${RESTY_LUAJIT_OPTIONS} \
&& make -j${RESTY_J} \
&& make -j${RESTY_J} install \
&& cd /tmp \
&& if [ -n "${RESTY_EVAL_POST_MAKE}" ]; then eval $(echo ${RESTY_EVAL_POST_MAKE}); fi \
&& rm -rf \
openssl-${RESTY_OPENSSL_VERSION}.tar.gz openssl-${RESTY_OPENSSL_VERSION} \
pcre-${RESTY_PCRE_VERSION}.tar.gz pcre-${RESTY_PCRE_VERSION} \
openresty-${RESTY_VERSION}.tar.gz openresty-${RESTY_VERSION} \
&& apk del .build-deps \
&& mkdir -p /etc/nginx/conf.d/ /var/run/openresty/
# Add additional binaries into PATH for convenience
ENV PATH=$PATH:/usr/local/openresty/luajit/bin:/usr/local/openresty/nginx/sbin:/usr/local/openresty/bin
ARG PHP_UPSTREAM_CONTAINER=php-fpm
ARG PHP_UPSTREAM_PORT=9000
# Create 'messages' file used from 'logrotate'
RUN touch /var/log/messages
# Copy 'logrotate' config file
COPY logrotate/nginx /etc/logrotate.d/
# 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
# Copy nginx configuration files
COPY nginx.conf /etc/nginx/
ADD ./startup.sh /opt/startup.sh
RUN sed -i 's/\r//g' /opt/startup.sh
CMD ["/bin/bash", "/opt/startup.sh"]
EXPOSE 80 81 443

14
openresty/logrotate/nginx Normal file
View File

@@ -0,0 +1,14 @@
/var/log/nginx/*.log {
daily
missingok
rotate 32
compress
delaycompress
nodateext
notifempty
create 644 www-data root
sharedscripts
postrotate
[ -f /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`
endscript
}

100
openresty/nginx.conf Normal file
View File

@@ -0,0 +1,100 @@
# nginx.conf -- docker-openresty
#
# This file is installed to:
# `/usr/local/openresty/nginx/conf/nginx.conf`
# and is the file loaded by nginx at startup,
# unless the user specifies otherwise.
#
# It tracks the upstream OpenResty's `nginx.conf`, but removes the `server`
# section and adds this directive:
# `include /etc/nginx/conf.d/*.conf;`
#
# The `docker-openresty` file `nginx.vh.default.conf` is copied to
# `/etc/nginx/conf.d/default.conf`. It contains the `server section
# of the upstream `nginx.conf`.
#
# See https://github.com/openresty/docker-openresty/blob/master/README.md#nginx-config-files
#
user www-data;
worker_processes 4;
# Enables the use of JIT for regular expressions to speed-up their processing.
pcre_jit on;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid /var/run/nginx.pid;
daemon off;
worker_rlimit_nofile 65535;
events {
use epoll;
worker_connections 65535;
multi_accept on;
accept_mutex on;
}
http {
include mime.types;
default_type application/octet-stream;
# Enables or disables the use of underscores in client request header fields.
# When the use of underscores is disabled, request header fields whose names contain underscores are marked as invalid and become subject to the ignore_invalid_headers directive.
# underscores_in_headers off;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$host"';
#access_log logs/access.log main;
# Log in JSON Format
# log_format nginxlog_json escape=json '{ "timestamp": "$time_iso8601", '
# '"remote_addr": "$remote_addr", '
# '"body_bytes_sent": $body_bytes_sent, '
# '"request_time": $request_time, '
# '"response_status": $status, '
# '"request": "$request", '
# '"request_method": "$request_method", '
# '"host": "$host",'
# '"upstream_addr": "$upstream_addr",'
# '"http_x_forwarded_for": "$http_x_forwarded_for",'
# '"http_referrer": "$http_referer", '
# '"http_user_agent": "$http_user_agent", '
# '"http_version": "$server_protocol", '
# '"nginx_access": true }';
# access_log /dev/stdout nginxlog_json;
# See Move default writable paths to a dedicated directory (#119)
# https://github.com/openresty/docker-openresty/issues/119
client_body_temp_path /var/run/openresty/nginx-client-body;
proxy_temp_path /var/run/openresty/nginx-proxy;
fastcgi_temp_path /var/run/openresty/nginx-fastcgi;
uwsgi_temp_path /var/run/openresty/nginx-uwsgi;
scgi_temp_path /var/run/openresty/nginx-scgi;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#keepalive_timeout 0;
keepalive_timeout 65;
types_hash_max_size 2048;
client_max_body_size 128M;
gzip on;
gzip_disable "msie6";
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-available/*.conf;
# Don't reveal OpenResty version to clients.
server_tokens off;
charset UTF-8;
}

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

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

View File

@@ -0,0 +1,43 @@
server {
listen 80;
listen [::]:80;
# For https
# listen 443 ssl;
# listen [::]:443 ssl ipv6only=on;
# ssl_certificate /etc/nginx/ssl/default.crt;
# ssl_certificate_key /etc/nginx/ssl/default.key;
server_name app.test;
root /var/www/app;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass php-upstream;
fastcgi_index index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout 600;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location /.well-known/acme-challenge/ {
root /var/www/letsencrypt/;
log_not_found off;
}
error_log /var/log/nginx/app_error.log;
access_log /var/log/nginx/app_access.log;
}

View File

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

View File

@@ -0,0 +1,40 @@
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
# For https
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server ipv6only=on;
# ssl_certificate /etc/nginx/ssl/default.crt;
# ssl_certificate_key /etc/nginx/ssl/default.key;
server_name localhost;
root /var/www/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass php-upstream;
fastcgi_index index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout 600;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location /.well-known/acme-challenge/ {
root /var/www/letsencrypt/;
log_not_found off;
}
}

View File

@@ -0,0 +1,49 @@
#server {
# listen 80;
# server_name laravel.com.co;
# return 301 https://laravel.com.co$request_uri;
#}
server {
listen 80;
listen [::]:80;
# For https
# listen 443 ssl;
# listen [::]:443 ssl ipv6only=on;
# ssl_certificate /etc/nginx/ssl/default.crt;
# ssl_certificate_key /etc/nginx/ssl/default.key;
server_name laravel.test;
root /var/www/laravel/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass php-upstream;
fastcgi_index index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout 600;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location /.well-known/acme-challenge/ {
root /var/www/letsencrypt/;
log_not_found off;
}
error_log /var/log/nginx/laravel_error.log;
access_log /var/log/nginx/laravel_access.log;
}

View File

@@ -0,0 +1,110 @@
server {
listen 80;
listen [::]:80;
server_name www.laravel.test;
rewrite ^(.*) https://laravel.test$1/ permanent;
}
server {
listen 80;
listen [::]:80;
server_name laravel.test;
rewrite ^(.*) https://laravel.test$1/ permanent;
}
server {
listen 443 ssl ;
listen [::]:443 ssl;
ssl_certificate /etc/nginx/ssl/laravel.test.crt;
ssl_certificate_key /etc/nginx/ssl/laravel.test.key;
server_name www.laravel.test;
rewrite ^(.*) https://laravel.test$1/ permanent;
}
server {
server_name laravel.test;
# For https
listen 443 ssl ;
listen [::]:443 ssl;
ssl_certificate /etc/nginx/ssl/laravel.test.crt;
ssl_certificate_key /etc/nginx/ssl/laravel.test.key;
port_in_redirect off;
add_header Strict-Transport-Security "max-age=31536000";
add_header X-Content-Type-Options nosniff;
location / {
proxy_pass http://proxy:6081;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header HTTPS "on";
proxy_redirect off;
}
}
server {
server_name laravel.test;
listen 81;
listen [::]:81;
root /var/www/laravel.test/www;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_max_temp_file_size 4m;
fastcgi_pass php-upstream;
# Additional configs
fastcgi_pass_header Set-Cookie;
fastcgi_pass_header Cookie;
fastcgi_ignore_headers Cache-Control Expires Set-Cookie;
try_files $uri /index.php =404;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param HTTPS on;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
fastcgi_intercept_errors on;
#fixes timeouts
fastcgi_read_timeout 600;
include fastcgi_params;
}
# Caching
location ~* \.(ico|jpg|webp|jpeg|gif|css|png|js|ico|bmp|zip|woff)$ {
access_log off;
log_not_found off;
add_header Pragma public;
add_header Cache-Control "public";
expires 14d;
}
location ~* \.(php|html)$ {
access_log on;
log_not_found on;
add_header Pragma public;
add_header Cache-Control "public";
expires 14d;
}
location ~ /\.ht {
deny all;
}
}

View File

@@ -0,0 +1,47 @@
#server {
# listen 80;
# server_name node.com.co;
# return 301 https://node.com.co$request_uri;
#}
server {
listen 80;
listen [::]:80;
#listen 443;
#listen [::]:443;
server_name node.com.co;
#ssl on;
#ssl_certificate /var/certs/node.com.co/cert.pem;
#ssl_certificate_key /var/certs/node.com.co/privkey.pem;
#ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
#ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass http://node.com.co:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache_bypass $http_upgrade;
}
location ~ /\.ht {
deny all;
}
location /.well-known/acme-challenge/ {
root /var/www/letsencrypt/;
log_not_found off;
}
error_log /var/log/nginx/node.com.co.local_error.log;
access_log /var/log/nginx/node.com.co.local_access.log;
}

View File

@@ -0,0 +1,42 @@
server {
listen 80;
listen [::]:80;
# For https
# listen 443 ssl;
# listen [::]:443 ssl ipv6only=on;
# ssl_certificate /etc/nginx/ssl/default.crt;
# ssl_certificate_key /etc/nginx/ssl/default.key;
server_name symfony.test;
root /var/www/projects/symfony/web;
index index.php index.html index.htm;
location / {
try_files $uri @rewriteapp;
}
# For Symfony 3
location @rewriteapp {
rewrite ^(.*)$ /app.php/$1 last;
}
# For Symfony 4 config
# location @rewriteapp {
# rewrite ^(.*)$ /index.php/$1 last;
# }
location ~ ^/(app|app_dev|config|index)\.php(/|$) {
fastcgi_pass php-upstream;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout 600;
fastcgi_param HTTPS off;
}
error_log /var/log/nginx/symfony_error.log;
access_log /var/log/nginx/symfony_access.log;
}

4
openresty/ssl/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
*.crt
*.csr
*.key
*.pem

14
openresty/startup.sh Normal file
View File

@@ -0,0 +1,14 @@
#!/bin/bash
if [ ! -f /etc/nginx/ssl/default.crt ]; then
openssl genrsa -out "/etc/nginx/ssl/default.key" 2048
openssl req -new -key "/etc/nginx/ssl/default.key" -out "/etc/nginx/ssl/default.csr" -subj "/CN=default/O=default/C=UK"
openssl x509 -req -days 365 -in "/etc/nginx/ssl/default.csr" -signkey "/etc/nginx/ssl/default.key" -out "/etc/nginx/ssl/default.crt"
chmod 644 /etc/nginx/ssl/default.key
fi
# Start crond in background
crond -l 2 -b
# Start nginx in foreground
nginx

View File

@@ -28,9 +28,9 @@ ENV DEBIAN_FRONTEND noninteractive
ARG CHANGE_SOURCE=false
RUN if [ ${CHANGE_SOURCE} = true ]; then \
# Change application source from deb.debian.org to aliyun source
sed -i 's/deb.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list && \
sed -i 's/security.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list && \
sed -i 's/security-cdn.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list \
sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
sed -i 's/security.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
sed -i 's/security-cdn.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list \
;fi
# always run apt update when start and after add new source list, then clean up at end.
@@ -117,11 +117,7 @@ ARG INSTALL_GNUPG=false
RUN if [ ${INSTALL_GNUPG} = true ]; then \
apt-get -yq install libgpgme-dev; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install gnupg-1.5.0RC2; \
else \
pecl install gnupg; \
fi; \
pecl install gnupg; \
docker-php-ext-enable gnupg; \
php -m | grep -q 'gnupg'; \
fi
@@ -219,8 +215,9 @@ ARG INSTALL_XDEBUG=false
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xdebug-3.0.0; \
# https://xdebug.org/docs/compat
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
pecl install xdebug-3.1.2; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \
@@ -357,13 +354,19 @@ ARG INSTALL_MONGO=false
RUN if [ ${INSTALL_MONGO} = true ]; then \
# Install the mongodb extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install mongo && \
docker-php-ext-enable mongo \
;else \
pecl install mongodb && \
docker-php-ext-enable mongodb \
;fi \
;fi
pecl install mongo; \
docker-php-ext-enable mongo; \
php -m | grep -oiE '^mongo$'; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ] ;}; then \
pecl install mongodb-1.9.2; \
else \
pecl install mongodb; \
fi; \
docker-php-ext-enable mongodb; \
php -m | grep -oiE '^mongodb$'; \
fi; \
fi
###########################################################################
# Xhprof:
@@ -410,32 +413,18 @@ RUN set -eux; \
ARG INSTALL_AMQP=false
RUN if [ ${INSTALL_AMQP} = true ]; then \
# download and install manually, to make sure it's compatible with ampq installed by pecl later
# install cmake first
apt-get -yqq install cmake && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ] || [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
curl -L -o /tmp/rabbitmq-c.tar.gz https://github.com/alanxz/rabbitmq-c/archive/v0.11.0.tar.gz; \
else \
curl -L -o /tmp/rabbitmq-c.tar.gz https://github.com/alanxz/rabbitmq-c/archive/master.tar.gz; \
fi && \
mkdir -p rabbitmq-c && \
tar -C rabbitmq-c -zxvf /tmp/rabbitmq-c.tar.gz --strip 1 && \
cd rabbitmq-c/ && \
mkdir _build && cd _build/ && \
cmake .. && \
cmake --build . --target install && \
# Install the amqp extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
printf "\n" | pecl install amqp-1.11.0beta; \
else \
printf "\n" | pecl install amqp; \
fi && \
docker-php-ext-enable amqp && \
# Install the sockets extension
docker-php-ext-install sockets && \
php -m | grep -q 'sockets' \
;fi
RUN set -eux; \
if [ ${INSTALL_AMQP} = true ]; then \
# # Install the amqp extension
apt-get -yqq install librabbitmq-dev; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install amqp-1.11.0beta; \
else \
pecl install amqp; \
fi; \
docker-php-ext-enable amqp; \
php -m | grep -oiE '^amqp$'; \
fi
###########################################################################
# CASSANDRA:
@@ -495,6 +484,23 @@ RUN if [ ${INSTALL_GEARMAN} = true ]; then \
docker-php-ext-enable gearman \
;fi
###########################################################################
# xlswriter:
###########################################################################
ARG INSTALL_XLSWRITER=false
RUN set -eux; \
if [ ${INSTALL_XLSWRITER} = true ]; then \
# Install Php xlswriter Extension \
if [ $(php -r "echo PHP_MAJOR_VERSION;") != "5" ]; then \
pecl install xlswriter &&\
docker-php-ext-enable xlswriter &&\
php -m | grep -q 'xlswriter'; \
else \
echo "PHP Extension for xlswriter is not supported for PHP 5.0";\
fi \
;fi
###########################################################################
# pcntl
###########################################################################
@@ -616,9 +622,13 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
freetds-dev && \
# Install PHP extensions
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.0.10; \
else \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.0.12; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.2.0; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-3.0.1; \
else \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8; \
fi \
&& docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/opt/oracle/instantclient_12_1,12.1 \
&& docker-php-ext-configure pdo_dblib --with-libdir=/lib/x86_64-linux-gnu \
@@ -642,6 +652,7 @@ RUN if [ ${INSTALL_IONCUBE} = true ]; then \
&& mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \
&& printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \
&& rm -rf /tmp/ioncube* \
&& php -m | grep -oiE '^ionCube Loader$' \
;fi \
;fi
@@ -720,33 +731,33 @@ RUN set -eux; \
apt-get -yqq install freetds-dev libsybdb5 \
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.so /usr/lib/libsybdb.so \
&& docker-php-ext-install mssql pdo_dblib \
&& php -m | grep -q 'mssql' \
&& php -m | grep -q 'pdo_dblib' \
&& php -m | grep -oiE '^mssql$' \
&& php -m | grep -oiE '^pdo_dblib$' \
;else \
###########################################################################
# 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 install -yqq apt-transport-https gnupg \
apt-get install -yqq apt-transport-https gnupg lsb-release \
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
&& curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list \
&& curl https://packages.microsoft.com/config/debian/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list \
&& apt-get update -yqq \
&& ACCEPT_EULA=Y apt-get install -yqq unixodbc unixodbc-dev libgss3 odbcinst msodbcsql17 locales \
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
&& ln -sfn /etc/locale.alias /usr/share/locale/locale.alias \
&& locale-gen \
&& if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "2" ]; then \
pecl install pdo_sqlsrv-5.8.1 sqlsrv-5.8.1 \
;elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
pecl install pdo_sqlsrv-5.6.1 sqlsrv-5.6.1 \
;elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
&& if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
pecl install pdo_sqlsrv-5.3.0 sqlsrv-5.3.0 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
pecl install pdo_sqlsrv-5.6.1 sqlsrv-5.6.1 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70200" ]; then \
pecl install pdo_sqlsrv-5.8.1 sqlsrv-5.8.1 \
;else \
pecl install pdo_sqlsrv sqlsrv \
;fi \
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
&& php -m | grep -q 'pdo_sqlsrv' \
&& php -m | grep -q 'sqlsrv' \
&& php -m | grep -oiE '^pdo_sqlsrv$' \
&& php -m | grep -oiE '^sqlsrv$' \
;fi \
;fi
@@ -801,7 +812,9 @@ RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
ARG INSTALL_SMB=false
RUN if [ ${INSTALL_SMB} = true ]; then \
apt-get install -yqq smbclient php-smbclient coreutils \
apt-get install -yqq smbclient libsmbclient-dev coreutils && \
pecl install smbclient && \
docker-php-ext-enable smbclient \
;fi
###########################################################################
@@ -1004,19 +1017,17 @@ ARG INSTALL_AUDIOWAVEFORM=false
RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
apt-get -y install wget make cmake gcc g++ libmad0-dev libid3tag0-dev libsndfile1-dev libgd-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \
&& cd /tmp \
&& git clone https://github.com/bbc/audiowaveform.git \
&& cd audiowaveform \
&& wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz \
&& tar xzf release-1.10.0.tar.gz \
&& ln -s googletest-release-1.10.0/googletest googletest \
&& ln -s googletest-release-1.10.0/googlemock googlemock \
&& git clone --depth=1 https://github.com/google/googletest.git -b release-1.11.0 \
&& mkdir build \
&& cd build \
&& cmake .. \
&& make \
&& make install \
;fi
#####################################
# wkhtmltopdf:
@@ -1043,6 +1054,19 @@ RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \
&& apt -f install \
;fi
#####################################
# trader:
#####################################
USER root
ARG INSTALL_TRADER=false
RUN if [ ${INSTALL_TRADER} = true ]; then \
pecl install trader \
&& echo "extension=trader.so" >> $PHP_INI_DIR/conf.d/trader.ini \
;fi
###########################################################################
# Mailparse extension:
###########################################################################
@@ -1081,7 +1105,7 @@ ARG INSTALL_XMLRPC=false
RUN if [ ${INSTALL_XMLRPC} = true ]; then \
apt-get -yq install libxml2-dev; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xmlrpc-1.0.0RC2; \
pecl install xmlrpc-1.0.0RC3; \
docker-php-ext-enable xmlrpc; \
else \
docker-php-ext-install xmlrpc; \
@@ -1140,18 +1164,45 @@ ARG NEW_RELIC_KEY=${NEW_RELIC_KEY}
ARG NEW_RELIC_APP_NAME=${NEW_RELIC_APP_NAME}
RUN if [ ${NEW_RELIC} = true ]; then \
curl -L http://download.newrelic.com/php_agent/archive/9.9.0.260/newrelic-php5-9.9.0.260-linux.tar.gz | tar -C /tmp -zx && \
curl -L http://download.newrelic.com/php_agent/release/newrelic-php5-9.18.1.303-linux.tar.gz | tar -C /tmp -zx && \
export NR_INSTALL_USE_CP_NOT_LN=1 && \
export NR_INSTALL_SILENT=1 && \
/tmp/newrelic-php5-*/newrelic-install install && \
rm -rf /tmp/newrelic-php5-* /tmp/nrinstall* && \
sed -i \
-e 's/"REPLACE_WITH_REAL_KEY"/"${NEW_RELIC_KEY}"/' \
-e 's/newrelic.appname = "PHP Application"/newrelic.appname = "${NEW_RELIC_APP_NAME}"/' \
-e 's/"REPLACE_WITH_REAL_KEY"/"'${NEW_RELIC_KEY}'"/' \
-e 's/newrelic.appname = "PHP Application"/newrelic.appname = "'${NEW_RELIC_APP_NAME}'"/' \
-e 's/;newrelic.daemon.app_connect_timeout =.*/newrelic.daemon.app_connect_timeout=15s/' \
-e 's/;newrelic.daemon.start_timeout =.*/newrelic.daemon.start_timeout=5s/' \
/usr/local/etc/php/conf.d/newrelic.ini \
;fi
###########################################################################
# PHP SSDB:
###########################################################################
USER root
ARG INSTALL_SSDB=false
RUN set -xe; \
if [ ${INSTALL_SSDB} = true ] && [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \
apt-get -y install sudo wget && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/php7.tar.gz; \
else \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/master.tar.gz; \
fi \
&& mkdir -p /tmp/ssdb-client-php \
&& tar -C /tmp/ssdb-client-php -zxvf /tmp/ssdb-client-php.tar.gz --strip 1 \
&& cd /tmp/ssdb-client-php \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& rm /tmp/ssdb-client-php.tar.gz \
&& docker-php-ext-enable ssdb \
;fi
###########################################################################
# Downgrade Openssl:
###########################################################################
@@ -1164,6 +1215,27 @@ RUN if [ ${DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL} = true ]; then \
sed -i 's,^\(CipherString[ ]*=\).*,\1'DEFAULT@SECLEVEL=1',g' /etc/ssl/openssl.cnf\
;fi
###########################################################################
# zmq
###########################################################################
USER root
ARG INSTALL_ZMQ=false
RUN if [ ${INSTALL_ZMQ} = true ]; then \
apt-get install --yes git libzmq3-dev \
&& git clone https://github.com/zeromq/php-zmq.git \
&& cd php-zmq \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -fr php-zmq \
&& echo "extension=zmq.so" > /usr/local/etc/php/conf.d/zmq.ini \
;fi
###########################################################################
# Check PHP version:
###########################################################################

1948
php-fpm/php8.1.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -15,9 +15,9 @@ ARG LARADOCK_PHP_VERSION
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
# 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 add wget \
curl \
@@ -25,6 +25,7 @@ RUN apk --update add wget \
build-base \
libmcrypt-dev \
libxml2-dev \
linux-headers \
pcre-dev \
zlib-dev \
autoconf \
@@ -37,7 +38,12 @@ RUN apk --update add wget \
RUN pecl channel-update pecl.php.net; \
docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl
docker-php-ext-install mysqli mbstring pdo pdo_mysql xml pcntl; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
php -m | grep -q 'tokenizer'; \
else \
docker-php-ext-install tokenizer; \
fi
# Add a non-root user:
ARG PUID=1000
@@ -46,14 +52,14 @@ ARG PGID=1000
ENV PGID ${PGID}
RUN addgroup -g ${PGID} laradock && \
adduser -D -G laradock -u ${PUID} laradock
adduser -D -G laradock -u ${PUID} laradock
#Install BZ2:
ARG INSTALL_BZ2=false
RUN if [ ${INSTALL_BZ2} = true ]; then \
apk --update add bzip2-dev; \
docker-php-ext-install bz2; \
fi
fi
###########################################################################
# PHP GnuPG:
@@ -62,27 +68,31 @@ fi
ARG INSTALL_GNUPG=false
RUN set -eux; if [ ${INSTALL_GNUPG} = true ]; then \
apk add --no-cache --no-progress --virtual BUILD_DEPS_PHP_GNUPG gpgme-dev; \
apk add --no-cache --no-progress gpgme; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install gnupg-1.5.0RC2; \
else \
pecl install gnupg; \
fi; \
docker-php-ext-enable gnupg; \
fi
apk add --no-cache --no-progress --virtual BUILD_DEPS_PHP_GNUPG gpgme-dev; \
apk add --no-cache --no-progress gpgme; \
pecl install gnupg; \
docker-php-ext-enable gnupg; \
fi
#Install LDAP
ARG INSTALL_LDAP=false;
RUN set -eux; if [ ${INSTALL_LDAP} = true ]; then \
apk add --no-cache --no-progress openldap-dev; \
docker-php-ext-install ldap; \
php -m | grep -oiE '^ldap$'; \
fi
#Install GD package:
ARG INSTALL_GD=false
RUN if [ ${INSTALL_GD} = true ]; then \
apk add --update --no-cache freetype-dev libjpeg-turbo-dev jpeg-dev libpng-dev; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ]; then \
docker-php-ext-configure gd --with-freetype --with-jpeg --with-png; \
else \
docker-php-ext-configure gd --with-freetype-dir=/usr/lib/ --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/; \
fi; \
docker-php-ext-install gd \
;fi
apk add --update --no-cache freetype-dev libjpeg-turbo-dev jpeg-dev libpng-dev; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ]; then \
docker-php-ext-configure gd --with-freetype --with-jpeg --with-png; \
else \
docker-php-ext-configure gd --with-freetype-dir=/usr/lib/ --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/; \
fi; \
docker-php-ext-install gd \
;fi
#Install ImageMagick:
ARG INSTALL_IMAGEMAGICK=false
@@ -90,57 +100,63 @@ ARG IMAGEMAGICK_VERSION=latest
ENV IMAGEMAGICK_VERSION ${IMAGEMAGICK_VERSION}
RUN set -eux; \
if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
apk add --update --no-cache imagemagick-dev imagemagick; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
cd /tmp && \
if [ ${IMAGEMAGICK_VERSION} = "latest" ]; then \
git clone https://github.com/Imagick/imagick; \
else \
git clone --branch ${IMAGEMAGICK_VERSION} https://github.com/Imagick/imagick; \
fi && \
cd imagick && \
phpize && \
./configure && \
make && \
make install && \
rm -r /tmp/imagick; \
else \
pecl install imagick; \
fi && \
docker-php-ext-enable imagick; \
php -m | grep -q 'imagick'; \
apk add --update --no-cache imagemagick-dev imagemagick; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
cd /tmp && \
if [ ${IMAGEMAGICK_VERSION} = "latest" ]; then \
git clone https://github.com/Imagick/imagick; \
else \
git clone --branch ${IMAGEMAGICK_VERSION} https://github.com/Imagick/imagick; \
fi && \
cd imagick && \
phpize && \
./configure && \
make && \
make install && \
rm -r /tmp/imagick; \
else \
pecl install imagick; \
fi && \
docker-php-ext-enable imagick; \
php -m | grep -q 'imagick'; \
fi
#Install GMP package:
ARG INSTALL_GMP=false
RUN if [ ${INSTALL_GMP} = true ]; then \
apk add --update --no-cache gmp gmp-dev \
&& docker-php-ext-install gmp \
;fi
apk add --update --no-cache gmp gmp-dev \
&& docker-php-ext-install gmp \
;fi
#Install BCMath package:
ARG INSTALL_BCMATH=false
RUN if [ ${INSTALL_BCMATH} = true ]; then \
docker-php-ext-install bcmath \
;fi
docker-php-ext-install bcmath \
;fi
#Install SOAP package:
ARG INSTALL_SOAP=false
RUN if [ ${INSTALL_SOAP} = true ]; then \
docker-php-ext-install soap \
;fi
docker-php-ext-install soap \
;fi
# Install MongoDB drivers:
ARG INSTALL_MONGO=false
RUN if [ ${INSTALL_MONGO} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install mongo; \
docker-php-ext-enable mongo; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install mongo; \
docker-php-ext-enable mongo; \
php -m | grep -oiE '^mongo$'; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ] ;}; then \
pecl install mongodb-1.9.2; \
else \
pecl install mongodb; \
docker-php-ext-enable mongodb; \
fi; \
fi
docker-php-ext-enable mongodb; \
php -m | grep -oiE '^mongodb$'; \
fi; \
fi
###########################################################################
# PHP OCI8:
@@ -152,144 +168,145 @@ ENV LD_LIBRARY_PATH="/usr/local/instantclient"
ENV ORACLE_HOME="/usr/local/instantclient"
RUN if [ ${INSTALL_OCI8} = true ] && [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
apk add make php7-pear php7-dev gcc musl-dev libnsl libaio poppler-utils libzip-dev zip unzip libaio-dev freetds-dev && \
## Download and unarchive Instant Client v11
curl -o /tmp/basic.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-basic-linux.x64-11.2.0.4.0.zip && \
curl -o /tmp/sdk.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-sdk-linux.x64-11.2.0.4.0.zip && \
curl -o /tmp/sqlplus.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-sqlplus-linux.x64-11.2.0.4.0.zip && \
unzip -d /usr/local/ /tmp/basic.zip && \
unzip -d /usr/local/ /tmp/sdk.zip && \
unzip -d /usr/local/ /tmp/sqlplus.zip \
## Links are required for older SDKs
&& ln -s /usr/local/instantclient_11_2 ${ORACLE_HOME} && \
ln -s ${ORACLE_HOME}/libclntsh.so.* ${ORACLE_HOME}/libclntsh.so && \
ln -s ${ORACLE_HOME}/libocci.so.* ${ORACLE_HOME}/libocci.so && \
ln -s ${ORACLE_HOME}/lib* /usr/lib && \
ln -s ${ORACLE_HOME}/sqlplus /usr/bin/sqlplus &&\
ln -s /usr/lib/libnsl.so.2.0.0 /usr/lib/libnsl.so.1 && \
## Build OCI8 with PECL
echo "instantclient,${ORACLE_HOME}" | pecl install oci8 && \
echo 'extension=oci8.so' > /etc/php7/conf.d/30-oci8.ini \
# Clean up
apk del php7-pear php7-dev gcc musl-dev && \
rm -rf /tmp/*.zip /tmp/pear/ && \
docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/usr/local/instantclient \
&& docker-php-ext-configure pdo_dblib --with-libdir=/lib \
&& docker-php-ext-install pdo_oci \
&& docker-php-ext-enable oci8 \
&& docker-php-ext-install zip && \
# Install the zip extension
docker-php-ext-configure zip && \
php -m | grep -q 'zip' \
;fi
apk add make php7-pear php7-dev gcc musl-dev libnsl libaio poppler-utils libzip-dev zip unzip libaio-dev freetds-dev && \
## Download and unarchive Instant Client v11
curl -o /tmp/basic.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-basic-linux.x64-11.2.0.4.0.zip && \
curl -o /tmp/sdk.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-sdk-linux.x64-11.2.0.4.0.zip && \
curl -o /tmp/sqlplus.zip https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-sqlplus-linux.x64-11.2.0.4.0.zip && \
unzip -d /usr/local/ /tmp/basic.zip && \
unzip -d /usr/local/ /tmp/sdk.zip && \
unzip -d /usr/local/ /tmp/sqlplus.zip \
## Links are required for older SDKs
&& ln -s /usr/local/instantclient_11_2 ${ORACLE_HOME} && \
ln -s ${ORACLE_HOME}/libclntsh.so.* ${ORACLE_HOME}/libclntsh.so && \
ln -s ${ORACLE_HOME}/libocci.so.* ${ORACLE_HOME}/libocci.so && \
ln -s ${ORACLE_HOME}/lib* /usr/lib && \
ln -s ${ORACLE_HOME}/sqlplus /usr/bin/sqlplus &&\
ln -s /usr/lib/libnsl.so.2.0.0 /usr/lib/libnsl.so.1 && \
## Build OCI8 with PECL
echo "instantclient,${ORACLE_HOME}" | pecl install oci8 && \
echo 'extension=oci8.so' > /etc/php7/conf.d/30-oci8.ini \
# Clean up
apk del php7-pear php7-dev gcc musl-dev && \
rm -rf /tmp/*.zip /tmp/pear/ && \
docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/usr/local/instantclient \
&& docker-php-ext-configure pdo_dblib --with-libdir=/lib \
&& docker-php-ext-install pdo_oci \
&& docker-php-ext-enable oci8 \
&& docker-php-ext-install zip && \
# Install the zip extension
docker-php-ext-configure zip && \
php -m | grep -q 'zip' \
;fi
# 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
apk --update add postgresql-dev \
&& docker-php-ext-install pdo_pgsql \
;fi
# Install ZipArchive:
ARG INSTALL_ZIP_ARCHIVE=false
RUN set -eux; \
if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
apk --update add libzip-dev && \
if [ ${LARADOCK_PHP_VERSION} = "7.3" ] || [ ${LARADOCK_PHP_VERSION} = "7.4" ] || [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
docker-php-ext-configure zip; \
else \
docker-php-ext-configure zip --with-libzip; \
fi && \
# Install the zip extension
docker-php-ext-install zip \
;fi
apk --update add libzip-dev && \
if [ ${LARADOCK_PHP_VERSION} = "7.3" ] || [ ${LARADOCK_PHP_VERSION} = "7.4" ] || [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
docker-php-ext-configure zip; \
else \
docker-php-ext-configure zip --with-libzip; \
fi && \
# Install the zip extension
docker-php-ext-install zip \
;fi
# Install MySQL Client:
ARG INSTALL_MYSQL_CLIENT=false
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
apk --update add mysql-client \
;fi
apk --update add mysql-client \
;fi
# Install FFMPEG:
ARG INSTALL_FFMPEG=false
RUN if [ ${INSTALL_FFMPEG} = true ]; then \
apk --update add ffmpeg \
;fi
apk --update add ffmpeg \
;fi
# Install BBC Audio Waveform Image Generator:
ARG INSTALL_AUDIOWAVEFORM=false
RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
apk add git make cmake gcc g++ libmad-dev libid3tag-dev libsndfile-dev gd-dev boost-dev libgd libpng-dev zlib-dev \
&& apk add autoconf automake libtool gettext \
&& wget https://github.com/xiph/flac/archive/1.3.3.tar.gz \
&& tar xzf 1.3.3.tar.gz \
&& cd flac-1.3.3 \
&& ./autogen.sh \
&& ./configure --enable-shared=no \
&& make \
&& make install \
&& cd .. \
&& git clone https://github.com/bbc/audiowaveform.git \
&& cd audiowaveform \
&& wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz \
&& tar xzf release-1.10.0.tar.gz \
&& ln -s googletest-release-1.10.0/googletest googletest \
&& ln -s googletest-release-1.10.0/googlemock googlemock \
&& mkdir build \
&& cd build \
&& cmake .. \
&& make \
&& make install \
;fi
apk add git make cmake gcc g++ libmad-dev libid3tag-dev libsndfile-dev gd-dev boost-dev libgd libpng-dev zlib-dev \
&& apk add autoconf automake libtool gettext \
&& wget https://github.com/xiph/flac/archive/1.3.3.tar.gz \
&& tar xzf 1.3.3.tar.gz \
&& cd flac-1.3.3 \
&& ./autogen.sh \
&& ./configure --enable-shared=no \
&& make \
&& make install \
&& cd .. \
&& git clone https://github.com/bbc/audiowaveform.git \
&& cd audiowaveform \
&& wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz \
&& tar xzf release-1.10.0.tar.gz \
&& ln -s googletest-release-1.10.0/googletest googletest \
&& ln -s googletest-release-1.10.0/googlemock googlemock \
&& mkdir build \
&& cd build \
&& cmake .. \
&& make \
&& make install \
;fi
# Install AMQP:
ARG INSTALL_AMQP=false
RUN if [ ${INSTALL_AMQP} = true ]; then \
apk --update add -q rabbitmq-c rabbitmq-c-dev && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
printf "\n" | pecl install amqp-1.11.0beta; \
else \
printf "\n" | pecl install amqp; \
fi && \
docker-php-ext-install sockets; \
apk --update add -q rabbitmq-c rabbitmq-c-dev && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
printf "\n" | pecl install amqp-1.11.0; \
else \
printf "\n" | pecl install amqp; \
fi && \
docker-php-ext-enable amqp && \
apk del -q rabbitmq-c-dev && \
docker-php-ext-install sockets \
;fi
apk del -q rabbitmq-c-dev; \
php -m | grep -oiE '^amqp$' \
;fi
# Install Gearman:
ARG INSTALL_GEARMAN=false
RUN if [ ${INSTALL_GEARMAN} = true ]; then \
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/main" /etc/apk/repositories && \
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/community" /etc/apk/repositories && \
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/testing" /etc/apk/repositories && \
apk --update add php7-gearman && \
sh -c 'echo "extension=/usr/lib/php7/modules/gearman.so" > /usr/local/etc/php/conf.d/gearman.ini' \
;fi
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/main" /etc/apk/repositories && \
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/community" /etc/apk/repositories && \
sed -i "\$ahttp://dl-cdn.alpinelinux.org/alpine/edge/testing" /etc/apk/repositories && \
apk --update add php7-gearman && \
sh -c 'echo "extension=/usr/lib/php7/modules/gearman.so" > /usr/local/etc/php/conf.d/gearman.ini' \
;fi
# Install Cassandra drivers:
ARG INSTALL_CASSANDRA=false
RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
echo "PHP Driver for Cassandra is not supported for PHP 8.0."; \
echo "PHP Driver for Cassandra is not supported for PHP 8.0."; \
else \
apk add --update --no-cache cassandra-cpp-driver libuv gmp \
&& apk add --update --no-cache cassandra-cpp-driver-dev gmp-dev --virtual .build-sec \
&& cd /usr/src \
&& git clone https://github.com/datastax/php-driver.git \
&& cd php-driver/ext \
&& phpize \
&& mkdir -p /usr/src/php-driver/build \
&& cd /usr/src/php-driver/build \
&& ../ext/configure > /dev/null \
&& make clean > /dev/null \
&& make > /dev/null 2>&1 \
&& make install \
&& docker-php-ext-enable cassandra \
&& apk del .build-sec; \
apk add --update --no-cache cassandra-cpp-driver libuv gmp \
&& apk add --update --no-cache cassandra-cpp-driver-dev gmp-dev --virtual .build-sec \
&& cd /usr/src \
&& git clone https://github.com/datastax/php-driver.git \
&& cd php-driver/ext \
&& phpize \
&& mkdir -p /usr/src/php-driver/build \
&& cd /usr/src/php-driver/build \
&& ../ext/configure > /dev/null \
&& make clean > /dev/null \
&& make > /dev/null 2>&1 \
&& make install \
&& docker-php-ext-enable cassandra \
&& apk del .build-sec; \
fi \
;fi
;fi
# Install Phalcon ext
ARG INSTALL_PHALCON=false
@@ -297,38 +314,38 @@ ARG PHALCON_VERSION
ENV PHALCON_VERSION ${PHALCON_VERSION}
RUN if [ $INSTALL_PHALCON = true ]; then \
apk --update add unzip gcc make re2c bash\
&& git clone https://github.com/jbboehr/php-psr.git \
&& cd php-psr \
&& phpize \
&& ./configure \
&& make \
&& make test \
&& make install \
&& curl -L -o /tmp/cphalcon.zip https://github.com/phalcon/cphalcon/archive/v${PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${PHALCON_VERSION}/build \
&& ./install \
&& rm -rf /tmp/cphalcon* \
;fi
apk --update add unzip gcc make re2c bash\
&& git clone https://github.com/jbboehr/php-psr.git \
&& cd php-psr \
&& phpize \
&& ./configure \
&& make \
&& make test \
&& make install \
&& curl -L -o /tmp/cphalcon.zip https://github.com/phalcon/cphalcon/archive/v${PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${PHALCON_VERSION}/build \
&& ./install \
&& rm -rf /tmp/cphalcon* \
;fi
ARG INSTALL_GHOSTSCRIPT=false
RUN if [ $INSTALL_GHOSTSCRIPT = true ]; then \
apk --update add ghostscript \
;fi
apk --update add ghostscript \
;fi
# Install Redis package:
ARG INSTALL_REDIS=false
RUN if [ ${INSTALL_REDIS} = true ]; then \
# Install Redis Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
printf "\n" | pecl install -o -f redis-4.3.0; \
else \
printf "\n" | pecl install -o -f redis; \
fi; \
rm -rf /tmp/pear; \
docker-php-ext-enable redis \
;fi
# Install Redis Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
printf "\n" | pecl install -o -f redis-4.3.0; \
else \
printf "\n" | pecl install -o -f redis; \
fi; \
rm -rf /tmp/pear; \
docker-php-ext-enable redis \
;fi
###########################################################################
# Swoole EXTENSION
@@ -336,20 +353,39 @@ RUN if [ ${INSTALL_REDIS} = true ]; then \
ARG INSTALL_SWOOLE=false
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
RUN set -eux; \
if [ ${INSTALL_SWOOLE} = true ]; then \
# Install Php Swoole Extension
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "50600" ]; then \
echo '' | pecl -q install swoole-2.0.10; \
pecl install swoole-2.0.10; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
echo '' | pecl -q install swoole-4.3.5; \
pecl install swoole-4.3.5; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
echo '' | pecl -q install swoole-4.5.11; \
pecl install swoole-4.5.11; \
else \
echo '' | pecl -q install swoole; \
pecl install swoole; \
fi; \
docker-php-ext-enable swoole \
&& php -m | grep -q 'swoole' \
;fi
docker-php-ext-enable swoole; \
php -m | grep -oiE '^swoole$'; \
fi
###########################################################################
# xlswriter:
###########################################################################
ARG INSTALL_XLSWRITER=false
RUN set -eux; \
if [ ${INSTALL_XLSWRITER} = true ]; then \
# Install Php xlswriter Extension \
if [ $(php -r "echo PHP_MAJOR_VERSION;") != "5" ]; then \
pecl install xlswriter && \
docker-php-ext-enable xlswriter && \
php -m | grep -q 'xlswriter'; \
else \
echo "PHP Extension for xlswriter is not supported for PHP 5.0"; \
fi \
;fi
###########################################################################
# Taint EXTENSION
@@ -358,15 +394,15 @@ RUN if [ ${INSTALL_SWOOLE} = true ]; then \
ARG INSTALL_TAINT=false
RUN if [ ${INSTALL_TAINT} = true ]; then \
# Install Php TAINT Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
pecl install taint; \
docker-php-ext-enable taint; \
php -m | grep -q 'taint'; \
else \
echo 'taint not Support'; \
fi \
;fi
# Install Php TAINT Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
pecl install taint; \
docker-php-ext-enable taint; \
php -m | grep -q 'taint'; \
else \
echo 'taint not Support'; \
fi \
;fi
###########################################################################
# Imap EXTENSION
@@ -375,10 +411,10 @@ RUN if [ ${INSTALL_TAINT} = true ]; then \
ARG INSTALL_IMAP=false
RUN if [ ${INSTALL_IMAP} = true ]; then \
apk add --update imap-dev && \
docker-php-ext-configure imap --with-imap --with-imap-ssl && \
docker-php-ext-install imap \
;fi
apk add --update imap-dev && \
docker-php-ext-configure imap --with-imap --with-imap-ssl && \
docker-php-ext-install imap \
;fi
###########################################################################
# XMLRPC:
@@ -387,14 +423,14 @@ RUN if [ ${INSTALL_IMAP} = true ]; then \
ARG INSTALL_XMLRPC=false
RUN if [ ${INSTALL_XMLRPC} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xmlrpc-1.0.0RC2; \
docker-php-ext-enable xmlrpc; \
else \
docker-php-ext-install xmlrpc; \
fi; \
php -m | grep -r 'xmlrpc'; \
fi
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xmlrpc-1.0.0RC3; \
docker-php-ext-enable xmlrpc; \
else \
docker-php-ext-install xmlrpc; \
fi; \
php -m | grep -r 'xmlrpc'; \
fi
###########################################################################
# PHP Memcached:
@@ -406,13 +442,71 @@ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
apk --update add libmemcached-dev; \
# Install the php memcached extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install memcached-2.2.0; \
pecl install memcached-2.2.0; \
else \
pecl install memcached; \
pecl install memcached; \
fi; \
docker-php-ext-enable memcached; \
php -m | grep -r 'memcached'; \
fi
fi
###########################################################################
# SQL SERVER:
###########################################################################
ARG INSTALL_MSSQL=false
RUN set -eux; \
if [ ${INSTALL_MSSQL} = true ]; then \
apk add --update gnupg \
###########################################################################
# Ref from:
# - https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver15#alpine17
###########################################################################
# Add Microsoft repo for Microsoft ODBC Driver 17 for Linux
# Driver version 17.5 or higher is required for Alpine support.
# Download the desired package(s)
&& curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1.1-1_amd64.apk \
# Verify signature, if 'gpg' is missing install it using 'apk add gnupg':
&& curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1.1-1_amd64.sig \
&& curl https://packages.microsoft.com/keys/microsoft.asc | gpg --import - \
&& gpg --verify msodbcsql17_17.8.1.1-1_amd64.sig msodbcsql17_17.8.1.1-1_amd64.apk \
# Install the package(s)
&& apk add --allow-untrusted msodbcsql17_17.8.1.1-1_amd64.apk unixodbc-dev \
&& pecl install sqlsrv pdo_sqlsrv \
# && echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/10_pdo_sqlsrv.ini
# && echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/00_sqlsrv.ini
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
&& php -m | grep -q 'pdo_sqlsrv' \
&& php -m | grep -q 'sqlsrv' \
;fi
###########################################################################
# PHP SSDB:
###########################################################################
USER root
ARG INSTALL_SSDB=false
RUN set -xe; \
if [ ${INSTALL_SSDB} = true ] && [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \
apk --update add sudo wget && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/php7.tar.gz; \
else \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/master.tar.gz; \
fi \
&& mkdir -p /tmp/ssdb-client-php \
&& tar -C /tmp/ssdb-client-php -zxvf /tmp/ssdb-client-php.tar.gz --strip 1 \
&& cd /tmp/ssdb-client-php \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& rm /tmp/ssdb-client-php.tar.gz \
&& docker-php-ext-enable ssdb \
;fi
#
#--------------------------------------------------------------------------
@@ -434,7 +528,7 @@ ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisord.conf"]
#
# If you need to modify this image, feel free to do it right here.
#
# -- Your awesome modifications go here -- #
# -- Your awesome modifications go here -- #
#
#--------------------------------------------------------------------------
@@ -452,6 +546,6 @@ RUN php -v | head -n 1 | grep -q "PHP ${PHP_VERSION}."
# Clean up
RUN rm /var/cache/apk/* \
&& mkdir -p /var/www
&& mkdir -p /var/www
WORKDIR /etc/supervisor/conf.d/

View File

@@ -1,4 +1,4 @@
FROM phpmyadmin/phpmyadmin
FROM phpmyadmin
LABEL maintainer="Bo-Yi Wu <appleboy.tw@gmail.com>"

View File

@@ -1,7 +1,27 @@
FROM postgis/postgis:latest
ARG POSTGIS_VERSION=latest
FROM postgis/postgis:${POSTGIS_VERSION}
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
ARG INSTALL_PGSQL_HTTP_FOR_POSTGIS13=false
RUN if [ ${INSTALL_PGSQL_HTTP_FOR_POSTGIS13} = true ]; then \
apt-get clean \
&& apt-get update -yqq \
&& apt-get install -y \
git \
make \
gcc \
libcurl4-openssl-dev \
postgresql-server-dev-13 \
postgresql-13-cron \
&& git clone --recursive https://github.com/pramsey/pgsql-http.git \
&& cd pgsql-http/ \
&& make \
&& make install \
&& apt-get clean \
;fi
CMD ["postgres"]
EXPOSE 5432

View File

View File

0
postgres/docker-entrypoint-initdb.d/init_gitlab_db.sh Normal file → Executable file
View File

View File

View File

View File

@@ -0,0 +1 @@
management_agent.disable_metrics_collector = false

2
rabbitmq/rabbitmq.conf Normal file
View File

@@ -0,0 +1,2 @@
default_user = guest
default_pass = guest

794
react/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -9,10 +9,10 @@
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"axios": "^0.21.1",
"axios": "^0.21.2",
"bootstrap": "^4.5.3",
"jss-rtl": "^0.3.0",
"node-sass": "^4.14.1",
"node-sass": "^7.0.0",
"prop-types": "^15.7.2",
"react": "^17.0.1",
"react-bootstrap": "^1.4.0",

22
ssdb/Dockerfile Normal file
View File

@@ -0,0 +1,22 @@
FROM alpine
LABEL maintainer="Leonard Buskin <leonardbuskin@gmail.com>"
ARG VERSION=${VERSION:-master}
RUN apk add --no-cache --virtual .build-deps \
curl gcc g++ make autoconf libc-dev libevent-dev linux-headers perl tar \
&& mkdir -p /ssdb/tmp \
&& curl -Lk "https://github.com/ideawu/ssdb/archive/${VERSION}.tar.gz" | \
tar -xz -C /ssdb/tmp --strip-components=1 \
&& cd /ssdb/tmp \
&& make -j$(getconf _NPROCESSORS_ONLN) \
&& make install PREFIX=/ssdb \
&& rm -rf /ssdb/tmp \
&& apk add --virtual .rundeps libstdc++ \
&& apk add --no-cache bash python2 \
&& apk del .build-deps
EXPOSE 8888
VOLUME /ssdb/var
COPY ssdb.conf /ssdb/ssdb.conf
CMD ["/ssdb/ssdb-server", "/ssdb/ssdb.conf"]

52
ssdb/ssdb.conf Normal file
View File

@@ -0,0 +1,52 @@
# ssdb-server config
# MUST indent by TAB!
# relative to path of this file, directory must exists
work_dir = /data
pidfile = /run/ssdb.pid
server:
#ip: 127.0.0.1
port: 8888
# bind to public ip
ip: 0.0.0.0
# format: allow|deny: all|ip_prefix
# multiple allows or denys is supported
deny: all
allow: 127.0.0.1
allow: 192.
allow: 172.
# auth password must be at least 32 characters
#auth: very-strong-password
replication:
binlog: yes
# Limit sync speed to *MB/s, -1: no limit
sync_speed: -1
slaveof:
# to identify a master even if it moved(ip, port changed)
# if set to empty or not defined, ip:port will be used.
#id: svc_2
# sync|mirror, default is sync
#type: sync
#host: s1.ssdb.db
#port: 8888
logger:
level: warn
output: /var/log/ssdb.log
rotate:
size: 1000000000
leveldb:
# in MB
cache_size: 500
# in KB
block_size: 32
# in MB
write_buffer_size: 64
# in MB
compaction_speed: 1000
# yes|no
compression: yes

View File

@@ -0,0 +1,3 @@
FROM quay.io/basis-company/tarantool-admin
LABEL maintainer="Alexander Palchikov <axelpal@gmail.com>"

3
tarantool/Dockerfile Normal file
View File

@@ -0,0 +1,3 @@
FROM tarantool/tarantool:2
LABEL maintainer="Alexander Palchikov <axelpal@gmail.com>"

2
tarantool/lua/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
*
!.gitignore

View File

@@ -1,8 +1,8 @@
GIN_MODE=debug
# Weaver
WEAVER_AUTH_KEY=arachnys-weaver
WEAVER_ATHENA_CMD=athenapdf -S
WEAVER_AUTH_KEY="arachnys-weaver"
WEAVER_ATHENA_CMD="athenapdf -S"
WEAVER_MAX_WORKERS=10
WEAVER_MAX_CONVERSION_QUEUE=50
WEAVER_WORKER_TIMEOUT=90
@@ -16,4 +16,4 @@ WEAVER_CONVERSION_FALLBACK=false
# Monitoring
# STATSD_ADDRESS=
# STATSD_PREFIX=
# SENTRY_DSN=
# SENTRY_DSN=

View File

@@ -31,17 +31,10 @@ USER root
###########################################################################
ARG CHANGE_SOURCE=false
ARG UBUNTU_SOURCE=aliyun
COPY ./sources.sh /tmp/sources.sh
RUN if [ ${CHANGE_SOURCE} = true ]; then \
# Change application source from deb.debian.org to aliyun source
sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list; \
sed -i 's/security.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list; \
sed -i 's/security-cdn.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list; \
chmod +x /tmp/sources.sh; \
/bin/sh -c /tmp/sources.sh; \
fi; \
rm -rf /tmp/sources.sh
sed -i 's/ports.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list; \
fi;
###########################################################################
# Laradock non-root user:
@@ -147,7 +140,12 @@ RUN echo "" >> ~/.bashrc && \
# Update composer
ARG COMPOSER_VERSION=2
ENV COMPOSER_VERSION ${COMPOSER_VERSION}
RUN composer self-update --${COMPOSER_VERSION}
RUN set -eux; \
if [ "$COMPOSER_VERSION" = "1" ] || [ "$COMPOSER_VERSION" = "2" ]; then \
composer self-update --${COMPOSER_VERSION}; \
else \
composer self-update ${COMPOSER_VERSION}; \
fi
USER laradock
@@ -161,10 +159,10 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
;fi
# Check if auth file is disabled
ARG COMPOSER_AUTH=false
ENV COMPOSER_AUTH ${COMPOSER_AUTH}
ARG COMPOSER_AUTH_JSON=false
ENV COMPOSER_AUTH_JSON ${COMPOSER_AUTH_JSON}
RUN if [ ${COMPOSER_AUTH} = false ]; then \
RUN if [ ${COMPOSER_AUTH_JSON} = false ]; then \
# remove the file
rm /home/laradock/.composer/auth.json \
;fi
@@ -307,7 +305,7 @@ RUN set -eux; \
# SMB:
###########################################################################
if [ ${INSTALL_SMB} = true ]; then \
apt-get install -yqq smbclient php-smbclient coreutils; \
apt-get install -yqq smbclient php${LARADOCK_PHP_VERSION}-smbclient coreutils; \
fi; \
###########################################################################
# IMAP:
@@ -332,25 +330,18 @@ ARG INSTALL_XDEBUG=false
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xdebug-3.0.0; \
# https://xdebug.org/docs/compat
apt-get install -yqq pkg-config php-xml php${LARADOCK_PHP_VERSION}-xml && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
pecl install xdebug-3.1.2; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
if [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
pecl install xdebug-2.9.0; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
pecl install xdebug-2.9.8; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
pecl install xdebug-2.9.8; \
else \
#pecl install xdebug; \
echo "xDebug 3 required, not supported."; \
fi \
fi \
pecl install xdebug-2.9.8; \
fi \
fi \
fi && \
@@ -453,16 +444,23 @@ ARG INSTALL_MONGO=false
RUN if [ ${INSTALL_MONGO} = true ]; then \
# Install the mongodb extension
apt-get install -yqq pkg-config && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install mongo && \
echo "extension=mongo.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongo.ini \
;else \
pecl install mongodb && \
echo "extension=mongodb.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongodb.ini \
;fi \
;fi
pecl install mongo; \
echo "extension=mongo.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini; \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongo.ini; \
php -m | grep -oiE '^mongo$'; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ] ;}; then \
pecl install mongodb-1.9.2; \
else \
pecl install mongodb; \
fi; \
echo "extension=mongodb.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini; \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongodb.ini; \
php -m | grep -oiE '^mongodb$'; \
fi; \
fi
###########################################################################
# AMQP:
@@ -547,11 +545,11 @@ ARG INSTALL_SWOOLE=false
RUN set -eux; \
if [ ${INSTALL_SWOOLE} = true ]; then \
# Install Php Swoole Extension
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "50600" ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
echo '' | pecl -q install swoole-2.0.10; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
echo '' | pecl -q install swoole-4.3.5; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
echo '' | pecl -q install swoole-4.5.11; \
else \
echo '' | pecl -q install swoole; \
@@ -561,6 +559,27 @@ RUN set -eux; \
php -m | grep -q 'swoole'; \
fi
###########################################################################
# xlswriter:
###########################################################################
ARG INSTALL_XLSWRITER=false
RUN set -eux; \
if [ ${INSTALL_XLSWRITER} = true ]; then \
# Install Php xlswriter Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") != "5" ]; then \
echo '' | pecl -q install xlswriter && \
echo "extension=xlswriter.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/xlswriter.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/xlswriter.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-xlswriter.ini && \
php -m | grep -q 'xlswriter'; \
else \
echo "PHP Extension for xlswriter is not supported for PHP 5.0"; \
fi \
;fi
###########################################################################
# Taint EXTENSION
###########################################################################
@@ -661,6 +680,7 @@ RUN if [ ${INSTALL_IONCUBE} = true ]; then \
&& echo "zend_extension=ioncube_loader.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/ioncube.ini \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/ioncube.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/0ioncube.ini \
&& rm -rf /tmp/ioncube* \
&& php -m | grep -oiE '^ionCube Loader$' \
;fi \
;fi
@@ -710,7 +730,7 @@ ENV NVM_NODEJS_ORG_MIRROR ${NVM_NODEJS_ORG_MIRROR}
RUN if [ ${INSTALL_NODE} = true ]; then \
# Install nvm (A Node Version Manager)
mkdir -p $NVM_DIR && \
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash \
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash \
&& . $NVM_DIR/nvm.sh \
&& nvm install ${NODE_VERSION} \
&& nvm use ${NODE_VERSION} \
@@ -906,9 +926,13 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
libaio-dev && \
# Install PHP extensions
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.0.10; \
else \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.0.12; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.2.0; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80000" ]; then \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-3.0.1; \
else \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8; \
fi \
&& echo "extension=oci8.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \
&& php -m | grep -q 'oci8' \
@@ -1038,34 +1062,36 @@ RUN set -eux; \
if [ ${INSTALL_MSSQL} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
apt-get install -yqq php5.6-sybase freetds-bin freetds-common libsybdb5 \
&& php -m | grep -q 'mssql' \
&& php -m | grep -q 'pdo_dblib' \
&& php -m | grep -oiE '^mssql$' \
&& php -m | grep -oiE '^pdo_dblib$' \
;else \
###########################################################################
# 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 && \
curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
apt-get update -yqq && \
ACCEPT_EULA=Y apt-get install -yqq msodbcsql17 mssql-tools unixodbc unixodbc-dev libgss3 odbcinst locales && \
ln -sfn /opt/mssql-tools/bin/sqlcmd /usr/bin/sqlcmd && \
ln -sfn /opt/mssql-tools/bin/bcp /usr/bin/bcp && \
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
locale-gen && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "2" ]; then \
pecl install pdo_sqlsrv-5.8.1 sqlsrv-5.8.1 \
;elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
pecl install pdo_sqlsrv-5.6.1 sqlsrv-5.6.1 \
;elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
locale-gen \
&& if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
pecl install pdo_sqlsrv-5.3.0 sqlsrv-5.3.0 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
pecl install pdo_sqlsrv-5.6.1 sqlsrv-5.6.1 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70200" ]; then \
pecl install pdo_sqlsrv-5.8.1 sqlsrv-5.8.1 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70300" ]; then \
pecl install pdo_sqlsrv-5.9.0 sqlsrv-5.9.0 \
;else \
pecl install pdo_sqlsrv sqlsrv \
;fi && \
echo "extension=sqlsrv.so" > /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-sqlsrv.ini && \
echo "extension=pdo_sqlsrv.so" > /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-pdo_sqlsrv.ini && \
php -m | grep -q 'sqlsrv' && \
php -m | grep -q 'pdo_sqlsrv' \
echo "extension=sqlsrv.so" > /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-sqlsrv.ini && \
php -m | grep -oiE '^pdo_sqlsrv$' && \
php -m | grep -oiE '^sqlsrv$' \
;fi \
;fi
@@ -1124,7 +1150,10 @@ RUN if [ ${INSTALL_SYMFONY} = true ]; then \
ARG INSTALL_PYTHON=false
RUN if [ ${INSTALL_PYTHON} = true ]; then \
apt-get -y install python python-pip python-dev build-essential \
apt-get -y install python python-dev build-essential \
&& curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py \
&& python get-pip.py \
&& rm get-pip.py \
&& python -m pip install --upgrade pip \
&& python -m pip install --upgrade virtualenv \
;fi
@@ -1136,7 +1165,10 @@ RUN if [ ${INSTALL_PYTHON} = true ]; then \
ARG INSTALL_PYTHON3=false
RUN if [ ${INSTALL_PYTHON3} = true ]; then \
apt-get -y install python3 python3-pip python3-dev build-essential \
apt-get -y install python3 python3-dev build-essential \
&& curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py \
&& python3 get-pip.py \
&& rm get-pip.py \
&& python3 -m pip install --upgrade --force-reinstall pip \
&& python3 -m pip install --upgrade virtualenv \
;fi
@@ -1389,18 +1421,16 @@ USER root
ARG INSTALL_AUDIOWAVEFORM=false
RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
apt-get -y install git wget make cmake gcc g++ libmad0-dev libid3tag0-dev libsndfile1-dev libgd-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \
&& git clone https://github.com/bbc/audiowaveform.git \
&& cd audiowaveform \
&& wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz \
&& tar xzf release-1.10.0.tar.gz \
&& ln -s googletest-release-1.10.0/googletest googletest \
&& ln -s googletest-release-1.10.0/googlemock googlemock \
&& mkdir build \
&& cd build \
&& cmake .. \
&& make \
&& make install \
apt-get -y install wget make cmake gcc g++ libmad0-dev libid3tag0-dev libsndfile1-dev libgd-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \
&& cd /tmp \
&& git clone https://github.com/bbc/audiowaveform.git \
&& cd audiowaveform \
&& git clone --depth=1 https://github.com/google/googletest.git -b release-1.11.0 \
&& mkdir build \
&& cd build \
&& cmake .. \
&& make \
&& make install \
;fi
#####################################
@@ -1638,6 +1668,71 @@ RUN set -eux; \
php -m | grep -q 'zookeeper'; \
fi
###########################################################################
# PHP SSDB:
###########################################################################
USER root
ARG INSTALL_SSDB=false
RUN set -xe; \
if [ ${INSTALL_SSDB} = true ] && [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \
apt-get -y install sudo wget && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/php7.tar.gz; \
else \
curl -L -o /tmp/ssdb-client-php.tar.gz https://github.com/jonnywang/phpssdb/archive/master.tar.gz; \
fi \
&& mkdir -p /tmp/ssdb-client-php \
&& tar -C /tmp/ssdb-client-php -zxvf /tmp/ssdb-client-php.tar.gz --strip 1 \
&& cd /tmp/ssdb-client-php \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& rm /tmp/ssdb-client-php.tar.gz \
&& docker-php-ext-enable ssdb \
;fi
#####################################
# trader:
#####################################
USER root
ARG INSTALL_TRADER=false
RUN if [ ${INSTALL_TRADER} = true ]; then \
pecl install trader \
&& echo "extension=trader.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/trader.ini \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/trader.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-trader.ini \
;fi
#
#--------------------------------------------------------------------------
# zmq
#--------------------------------------------------------------------------
#
USER root
ARG INSTALL_ZMQ=false
RUN if [ ${INSTALL_ZMQ} = true ]; then \
apt-get install --yes git libzmq3-dev \
&& git clone https://github.com/zeromq/php-zmq.git \
&& cd php-zmq \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -fr php-zmq \
&& echo "extension=zmq.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/zmq.ini \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/zmq.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-zmq.ini \
;fi
#
#--------------------------------------------------------------------------
# Final Touch

View File

@@ -1,83 +0,0 @@
#!/bin/bash
set -xe;
if type "tee" 2>/dev/null && [ -n "${UBUNTU_SOURCE}" ]; then
SOURCE_PATH="/etc/apt/sources.list"
cp ${SOURCE_PATH} ${SOURCE_PATH}.bak && rm -rf ${SOURCE_PATH}
case "${UBUNTU_SOURCE}" in
"aliyun")
tee ${SOURCE_PATH} <<-'EOF'
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
EOF
;;
"zju")
tee ${SOURCE_PATH} <<-'EOF'
deb http://mirrors.zju.edu.cn/ubuntu/ bionic main multiverse restricted universe
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-backports main multiverse restricted universe
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-proposed main multiverse restricted universe
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-security main multiverse restricted universe
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic main multiverse restricted universe
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-proposed main multiverse restricted universe
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-security main multiverse restricted universe
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-updates main multiverse restricted universe
EOF
;;
"tsinghua")
tee ${SOURCE_PATH} <<-'EOF'
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
EOF
;;
"163")
tee ${SOURCE_PATH} <<-'EOF'
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
EOF
;;
"ustc")
tee ${SOURCE_PATH} <<-'EOF'
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
EOF
;;
*)
echo "Please check whether there is aliyun|zju|tsinghua|163|ustc in the parameter"
exit 1;;
esac
fi