Compare commits

..

1 Commits

Author SHA1 Message Date
Shao Yu-Lung (Allen)
4832adbbff action enable install phpdbg 2022-04-19 19:03:46 +08:00
46 changed files with 10493 additions and 13015 deletions

View File

@@ -38,13 +38,13 @@ COMPOSE_PROJECT_NAME=laradock
### PHP Version ###########################################
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).
# Accepted values: 8.2 - 8.1 - 8.0 - 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
# Accepted values: 8.0 - 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
PHP_VERSION=7.4
### Phalcon Version ###########################################
# Select a Phalcon version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 5.0.0+
PHALCON_VERSION=5.0.0
# Select a Phalcon version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 3.4.0+
PHALCON_VERSION=4.0.5
### PHP Interpreter #######################################
@@ -65,9 +65,6 @@ PHP_IDE_CONFIG=serverName=laradock
PHP_DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL=false
# Accepted values: 1.2 - 1.1 - 1.0
PHP_DOWNGRADE_OPENSSL_TLS_VERSION=1.2
### Windows Path ##########################################
# A fix for Windows users, to ensure the application path works
@@ -78,10 +75,7 @@ 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 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/the-paulus/oracle-instantclient/raw/master/
ORACLE_INSTANT_CLIENT_ARCH=x86_64
ORACLE_INSTANT_CLIENT_MAJOR=18
ORACLE_INSTANT_CLIENT_MINOR=3
ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/diogomascarenha/oracle-instantclient/raw/master/
### Docker Sync ###########################################
@@ -122,8 +116,6 @@ WORKSPACE_INSTALL_NPM_GULP=true
WORKSPACE_INSTALL_NPM_BOWER=false
WORKSPACE_INSTALL_NPM_VUE_CLI=true
WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false
WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI=false
WORKSPACE_INSTALL_POPPLER_UTILS=false
WORKSPACE_INSTALL_PHPREDIS=true
WORKSPACE_INSTALL_WORKSPACE_SSH=false
WORKSPACE_INSTALL_SUBVERSION=false
@@ -175,7 +167,7 @@ WORKSPACE_INSTALL_SWOOLE=false
WORKSPACE_INSTALL_TAINT=false
WORKSPACE_INSTALL_LIBPNG=false
WORKSPACE_INSTALL_GRAPHVIZ=false
WORKSPACE_INSTALL_IONCUBE=false # PHP 8.2 is not supported yet.
WORKSPACE_INSTALL_IONCUBE=false # PHP 8.0 is not supported yet. Reference: https://forum.ioncube.com/viewtopic.php?t=4592
WORKSPACE_INSTALL_MYSQL_CLIENT=false
WORKSPACE_INSTALL_PING=false
WORKSPACE_INSTALL_SSHPASS=false
@@ -185,7 +177,6 @@ WORKSPACE_INSTALL_YAML=false
WORKSPACE_INSTALL_RDKAFKA=false
WORKSPACE_INSTALL_MAILPARSE=false
WORKSPACE_INSTALL_XMLRPC=false
WORKSPACE_INSTALL_APCU=false
WORKSPACE_PUID=1000
WORKSPACE_PGID=1000
WORKSPACE_CHROME_DRIVER_VERSION=2.42
@@ -194,7 +185,6 @@ WORKSPACE_SSH_PORT=2222
WORKSPACE_INSTALL_FFMPEG=false
WORKSPACE_INSTALL_AUDIOWAVEFORM=false
WORKSPACE_INSTALL_WKHTMLTOPDF=false
WORKSPACE_WKHTMLTOPDF_VERSION=0.12.6-1
WORKSPACE_INSTALL_GNU_PARALLEL=false
WORKSPACE_INSTALL_AST=true
WORKSPACE_AST_VERSION=1.0.10
@@ -213,11 +203,6 @@ WORKSPACE_INSTALL_SSDB=false
WORKSPACE_INSTALL_TRADER=false
WORKSPACE_PROTOC_VERSION=latest
WORKSPACE_INSTALL_MEMCACHED=true
WORKSPACE_INSTALL_EVENT=false
WORKSPACE_INSTALL_DNSUTILS=true
WORKSPACE_XDEBUG_PORT=9000
WORKSPACE_VITE_PORT=5173
WORKSPACE_INSTALL_JDK=true
### PHP_FPM ###############################################
@@ -264,7 +249,7 @@ PHP_FPM_INSTALL_POSTGIS=false
PHP_FPM_INSTALL_PCNTL=false
PHP_FPM_INSTALL_CALENDAR=false
PHP_FPM_INSTALL_FAKETIME=false
PHP_FPM_INSTALL_IONCUBE=false # PHP 8.2 is not supported yet.
PHP_FPM_INSTALL_IONCUBE=false # PHP 8.0 is not supported yet. Reference: https://forum.ioncube.com/viewtopic.php?t=4592
PHP_FPM_INSTALL_RDKAFKA=false
PHP_FPM_INSTALL_GETTEXT=false
PHP_FPM_INSTALL_XMLRPC=false
@@ -278,7 +263,6 @@ PHP_FPM_INSTALL_PING=false
PHP_FPM_INSTALL_SSHPASS=false
PHP_FPM_INSTALL_MAILPARSE=false
PHP_FPM_INSTALL_WKHTMLTOPDF=false
PHP_FPM_WKHTMLTOPDF_VERSION=0.12.6.1-3
PHP_FPM_INSTALL_XLSWRITER=false
PHP_FPM_INSTALL_PHPDECIMAL=false
PHP_FPM_INSTALL_ZOOKEEPER=false
@@ -289,10 +273,7 @@ PHP_FPM_AUDIOWAVEFORM=false
PHP_FPM_ADDITIONAL_LOCALES="en_US.UTF-8 es_ES.UTF-8 fr_FR.UTF-8"
PHP_FPM_INSTALL_DOCKER_CLIENT=false
PHP_FPM_DEFAULT_LOCALE=POSIX
PHP_FPM_XDEBUG_PORT=9000
PHP_FPM_INSTALL_EVENT=false
PHP_FPM_INSTALL_DNSUTILS=true
PHP_FPM_INSTALL_POPPLER_UTILS=false
PHP_FPM_XDEBUG_PORT=9003
PHP_FPM_PUID=1000
PHP_FPM_PGID=1000
@@ -321,7 +302,6 @@ PHP_WORKER_INSTALL_MEMCACHED=false
PHP_WORKER_INSTALL_OCI8=false
PHP_WORKER_INSTALL_MSSQL=false
PHP_WORKER_INSTALL_PHALCON=false
PHP_WORKER_INSTALL_APCU=false
PHP_WORKER_INSTALL_SOAP=false
PHP_WORKER_INSTALL_ZIP_ARCHIVE=false
PHP_WORKER_INSTALL_MYSQL_CLIENT=false
@@ -337,9 +317,6 @@ PHP_WORKER_INSTALL_REDIS=false
PHP_WORKER_INSTALL_IMAP=false
PHP_WORKER_INSTALL_XMLRPC=false
PHP_WORKER_INSTALL_SSDB=false
PHP_WORKER_INSTALL_EVENT=false
PHP_WORKER_INSTALL_INTL=true
PHP_WORKER_INSTALL_POPPLER_UTILS=false
PHP_WORKER_PUID=1000
PHP_WORKER_PGID=1000
@@ -381,7 +358,6 @@ LARAVEL_HORIZON_INSTALL_MONGO=false
LARAVEL_HORIZON_INSTALL_CASSANDRA=false
LARAVEL_HORIZON_INSTALL_FFMPEG=false
LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM=false
LARAVEL_HORIZON_INSTALL_POPPLER_UTILS=false
LARAVEL_HORIZON_PGID=1000
LARAVEL_HORIZON_PUID=1000
@@ -397,7 +373,6 @@ APACHE_PHP_UPSTREAM_TIMEOUT=60
APACHE_DOCUMENT_ROOT=/var/www/
APACHE_SSL_PATH=./apache2/ssl/
APACHE_INSTALL_HTTP2=false
APACHE_FOR_MAC_M1=false
### MYSQL #################################################
@@ -411,8 +386,8 @@ MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d
### CLICKHOUSE #################################################
CLICKHOUSE_VERSION=22.2.2.1
CLICKHOUSE_GOSU_VERSION=1.14
CLICKHOUSE_VERSION=20.9.4.76
CLICKHOUSE_GOSU_VERSION=1.10
CLICKHOUSE_CUSTOM_CONFIG=./clickhouse/config.xml
CLICKHOUSE_USERS_CUSTOM_CONFIG=./clickhouse/users.xml
CLICKHOUSE_USER=default
@@ -426,7 +401,6 @@ CLICKHOUSE_HOST_LOG_PATH=./logs/clickhouse
### REDIS #################################################
REDIS_PORT=6379
REDIS_PASSWORD=secret_redis
### REDIS CLUSTER #########################################
@@ -468,7 +442,6 @@ MARIADB_ENTRYPOINT_INITDB=./mariadb/docker-entrypoint-initdb.d
### POSTGRES ##############################################
POSTGRES_VERSION=alpine
POSTGRES_CLIENT_VERSION=15
POSTGRES_DB=default
POSTGRES_USER=default
POSTGRES_PASSWORD=secret
@@ -916,16 +889,18 @@ MAILU_WEBMAIL=rainloop
# Dav server implementation (value: radicale, none)
MAILU_WEBDAV=radicale
### TRAEFIK #################################################
TRAEFIK_HOST_HTTP_PORT=80
TRAEFIK_HOST_HTTPS_PORT=443
TRAEFIK_DASHBOARD_PORT=8888
# basic authentication for traefik dashboard username: admin password:admin
TRAEFIK_DASHBOARD_USER='admin:$2y$10$lXaL3lj6raFic6rFqr2.lOBoCudAIhB6zyoqObNg290UFppiUzTTi'
TRAEFIK_DASHBOARD_USER=admin:$2y$10$lXaL3lj6raFic6rFqr2.lOBoCudAIhB6zyoqObNg290UFppiUzTTi
ACME_DOMAIN=example.org
ACME_EMAIL=email@example.org
### MOSQUITTO #################################################
MOSQUITTO_PORT=9001
@@ -1065,27 +1040,3 @@ TARANTOOL_ADMIN_PORT=8002
NATS_CLIENT_PORT=4222
NATS_MONITORING_PORT=6222
NATS_ROUTE_PORT=8222
### SOKETI ##################################################
SOKETI_PORT=6001
SOKETI_METRICS_SERVER_PORT=9601
### ONEDEV ##################################################
ONEDEV_HTTP_PORT=6610
ONEDEV_SSH_PORT=6611
### Keycloak ################################################
KEYCLOAK_VERSION=latest
KEYCLOAK_POSTGRES_INIT=true
KEYCLOAK_HTTP_PORT=8081
KEYCLOAK_CREATE_ADMIN_USER=true
KEYCLOAK_ADMIN_USER='admin'
KEYCLOAK_ADMIN_PASSWORD='secret'
KEYCLOAK_POSTGRES_HOST=postgres
KEYCLOAK_POSTGRES_USER=laradock_keycloak
KEYCLOAK_POSTGRES_PASSWORD=laradock_keycloak
KEYCLOAK_POSTGRES_DB=laradock_keycloak
### Mailpit #################################################
MAILPIT_HTTP_PORT=8125
MAILPIT_SMTP_PORT=1125

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: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -8,12 +8,8 @@ on:
- '.github/workflows/build-deploy-docs.yml'
- 'DOCUMENTATION/**'
permissions: {}
jobs:
build-deploy-docs:
permissions:
contents: write # to push pages branch (peaceiris/actions-gh-pages)
if: github.repository == 'laradock/laradock'
runs-on: ubuntu-20.04
concurrency:
@@ -23,7 +19,7 @@ jobs:
working-directory: ./DOCUMENTATION
steps:
- name: Checkout Source Code
uses: actions/checkout@v4
uses: actions/checkout@v2
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2

View File

@@ -11,9 +11,6 @@ on:
schedule:
- cron: '0 0 * * 0'
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build-php:
# Don't trigger on schedule event when in a fork
@@ -22,10 +19,10 @@ jobs:
strategy:
fail-fast: false
matrix:
php_version: [ "7.1", "7.2", "7.3", "7.4", "8.0", "8.1", "8.2" ]
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@v4
- uses: actions/checkout@v2
- name: Build the Docker image
env:
PHP_VERSION: ${{ matrix.php_version }}
@@ -34,7 +31,6 @@ jobs:
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
@@ -47,11 +43,11 @@ jobs:
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
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
@@ -62,10 +58,10 @@ jobs:
matrix:
service: [ 'nginx', 'redis', 'mysql', 'mariadb', 'percona', 'minio', 'mongo' ]
steps:
- uses: actions/checkout@v4
- 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 }}
docker-compose build ${{ matrix.service }}

58
.travis.yml Normal file
View File

@@ -0,0 +1,58 @@
language: bash
sudo: required
services:
- docker
env:
matrix:
- HUGO_VERSION=0.20.2
- PHP_VERSION=hhvm BUILD_SERVICE=hhvm
# - PHP_VERSION=5.6 BUILD_SERVICE=php-worker
- PHP_VERSION=7.0 BUILD_SERVICE=php-worker
- PHP_VERSION=7.1 BUILD_SERVICE=php-worker
- PHP_VERSION=7.2 BUILD_SERVICE=php-worker
- 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
- PHP_VERSION=7.2 BUILD_SERVICE=laravel-horizon
- 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"
- PHP_VERSION=NA BUILD_SERVICE="blackfire minio percona nginx caddy apache2 mysql mariadb postgres postgres-postgis neo4j mongo redis cassandra"
- PHP_VERSION=NA BUILD_SERVICE="adminer phpmyadmin pgadmin"
- PHP_VERSION=NA BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 haproxy gearman"
- PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server"
- PHP_VERSION=NA BUILD_SERVICE="ipython-controller manticore"
# - PHP_VERSION=NA BUILD_SERVICE="aws"
# Installing a newer Docker version
before_install:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- sudo apt-get update
- sudo apt-get -y install docker-ce
- docker version
script: ./travis-build.sh
deploy:
provider: pages
skip_cleanup: true
local_dir: docs
github_token: $GITHUB_TOKEN
on:
branch: master
condition: -n "${HUGO_VERSION}"
notifications:
email: false

View File

@@ -1232,43 +1232,39 @@ A package ([Laravel RethinkDB](https://github.com/duxet/laravel-rethinkdb)) is b
## Use Minio
1. Configure Minio:
- You can change some settings in the `.env` file (`MINIO_*`)
- You can install Minio Client on the workspace container: `WORKSPACE_INSTALL_MC=true`
- On the workspace container, change `INSTALL_MC` to true to get the client
- Set `MINIO_ACCESS_KEY` and `MINIO_ACCESS_SECRET` if you wish to set proper keys
2. Run the Minio Container (`minio`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d minio
```
3. Open your browser and visit the localhost on port **9000** at the following URL: `http://localhost:9000`
4. Create a bucket either through the webui or using the Minio Client:
4. Create a bucket either through the webui or using the mc client:
```bash
mc mb minio/bucket
```
5. When configuring your other clients use the following details:
```
AWS_URL=http://minio:9000
AWS_ACCESS_KEY_ID=access
AWS_SECRET_ACCESS_KEY=secretkey
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=test
AWS_USE_PATH_STYLE_ENDPOINT=true
```
6. In `filesystems.php` you should use the following details (s3):
```php
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'endpoint' => env('AWS_URL'),
'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false)
],
```
`AWS_USE_PATH_STYLE_ENDPOINT` should set to true only for local purpose
5 - When configuring your other clients use the following details:
```
AWS_URL=http://minio:9000
AWS_ACCESS_KEY_ID=access
AWS_SECRET_ACCESS_KEY=secretkey
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=test
AWS_PATH_STYLE=true
```
6 - In `filesystems.php` you shoud use the following details (s3):
```
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'endpoint' => env('AWS_URL'),
'use_path_style_endpoint' => env('AWS_PATH_STYLE', false)
],
```
`'AWS_PATH_STYLE'` shout set to true only for local purpouse
@@ -1494,46 +1490,6 @@ 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>
<a name="use Keycloak"></a>
## Use Keycloak
1. Run the Keycloak Container (`keycloak`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d keycloak
```
2. Open your browser and visit the localhost on port 8081: `http://localhost:8081`
3. Login with the following credentials:
- Username: `admin`
- Password: `secret`
<br>
<a name="use Mailpit"></a>
## Use Mailpit
1. Run the Mailpit Container (`mailpit`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d mailpit
```
2. Open your browser and visit the localhost on port 8125: `http://localhost:8125`
3. Setup config in your Laravel projects .env file
```text
MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1125
MAIL_USERNAME=null
MAIL_PASSWORD=null
```
<br>
<a name="CodeIgniter"></a>
@@ -1650,7 +1606,7 @@ Update the locale setting, default is `POSIX`
<a name="CronJobs"></a>
## Adding cron jobs
You can add your cron jobs to `workspace/crontab/laradock` after the `php artisan` line.
You can add your cron jobs to `workspace/crontab/root` after the `php artisan` line.
```
* * * * * laradock /usr/bin/php /var/www/artisan schedule:run >> /dev/null 2>&1
@@ -1985,55 +1941,6 @@ To install NPM ANGULAR CLI in the Workspace container
3 - Re-build the container `docker-compose build workspace`
<br>
<a name="Install-npm-check-updates"></a>
## Install npm-check-updates CLI
To install npm-check-updates CLI [here](https://www.npmjs.com/package/npm-check-updates) in the Workspace container
1 - Open the `.env` file
2 - Make sure Node is also being installed (`WORKSPACE_INSTALL_NODE` set to `true`)
3 - Search for the `WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI` argument under the Workspace Container and set it to `true`
4 - Re-build the container `docker-compose build workspace`
<br>
<a name="Install-poppler-utils"></a>
## Install `poppler-utils` (and `antiword` combined)
Poppler is a PDF rendering library based on Xpdf PDF viewer.
This package contains command line utilities (based on Poppler) for getting information of PDF documents, convert them to other formats, or manipulate them:
* pdfdetach -- lists or extracts embedded files (attachments)
* pdffonts -- font analyzer
* pdfimages -- image extractor
* pdfinfo -- document information
* pdfseparate -- page extraction tool
* pdfsig -- verifies digital signatures
* pdftocairo -- PDF to PNG/JPEG/PDF/PS/EPS/SVG converter using Cairo
* pdftohtml -- PDF to HTML converter
* pdftoppm -- PDF to PPM/PNG/JPEG image converter
* pdftops -- PDF to PostScript (PS) converter
* pdftotext -- text extraction
* pdfunite -- document merging tool
`poppler-utils` is often used by popular PDF/DOC parsing packages in combination with `antiword`, hence both are installed when flags in `.env` are set.
To install `poppler-utils` [(more here)](https://packages.debian.org/sid/poppler-utils) in any of the `workspace/php-fpm/php-worker/laravel-horizon` container
1 - Open the `.env` file
2 - Search for the `WORKSPACE_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
3 - Search for the `PHP_FPM_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
4 - Search for the `PHP_WORKER_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
5 - Search for the `LARAVEL_HORIZON_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
6 - Re-build the container `docker-compose build workspace php-fpm php-worker laravel-horizon`
@@ -2346,31 +2253,6 @@ For configuration information, visit the [bash-git-prompt repository](https://gi
<a name="Install-Oh-My-Zsh"></a>
## Install Oh My ZSH
<br>
<a name="Install-Dnsutils"></a>
## Install Dnsutils
1 - First install `dnsutils` in the Workspace and the PHP-FPM Containers:
<br>
a) open the `.env` file
<br>
b) search for the `WORKSPACE_INSTALL_DNSUTILS` argument under the Workspace Container
<br>
c) set it to `true`
<br>
d) search for the `PHP_FPM_INSTALL_DNSUTILS` argument under the PHP-FPM Container
<br>
e) set it to `true`
<br>
2 - Re-build the containers `docker-compose build workspace php-fpm`
> With the Laravel autocomplete plugin.
[Zsh](https://en.wikipedia.org/wiki/Z_shell) is an extended Bourne shell with many improvements, including some features of Bash, ksh, and tcsh.
@@ -2618,13 +2500,6 @@ docker-compose up ...
*Note: If you faced any errors, try restarting Docker, and make sure you have no spaces in the `d4m-nfs-mounts.txt` file, and your `/etc/exports` file is clear.*
<br>
<a name="ca-certificates"></a>
## ca-certificates
To install your own CA certificates, you can add them to the `workspace/ca-certificates` folder.
This way the certificates will be installed into the system ca store of the workspace container.
<br>
<a name="upgrade-laradock"></a>

View File

@@ -7,7 +7,7 @@ weight: 2
## Requirements
- [Git](https://git-scm.com/downloads)
- [Docker](https://www.docker.com/products/docker-desktop/) [ >= 19.03.0 ]
- [Docker](https://www.docker.com/products/docker/) [ >= 17.12 ]
@@ -148,12 +148,12 @@ If you use Chrome 63 or above for development, don't use `.dev`. [Why?](https://
If you are using **Docker Toolbox** (VM), do one of the following:
- Upgrade to [Docker Desktop](https://www.docker.com/products/docker-desktop/) for Mac/Windows (Recommended). Check out [Upgrading Laradock](/documentation/#upgrading-laradock)
- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading Laradock](/documentation/#upgrading-laradock)
- Use Laradock v3.\*. Visit the [Laradock-ToolBox](https://github.com/laradock/laradock/tree/LaraDock-ToolBox) branch. *(outdated)*
<br>
We recommend using a Docker Engine version which is newer than 19.03.0.
We recommend using a Docker version which is newer than 1.13.
<br>
@@ -184,7 +184,7 @@ docker-compose up -d nginx mysql
**Note**: All the web server containers `nginx`, `apache` ..etc depends on `php-fpm`, which means if you run any of them, they will automatically launch the `php-fpm` container for you, so no need to explicitly specify it in the `up` command. If you have to do so, you may need to run them as follows: `docker-compose up -d nginx php-fpm mysql`.
You can select your own combination of containers from [this list](https://laradock.io/introduction/#supported-software-docker-images).
You can select your own combination of containers from [this list](http://laradock.io/introduction/#supported-software-images).
*(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers).*

View File

@@ -127,21 +127,3 @@ WORKSPACE_INSTALL_LIBPNG=true
docker-compose build workspace
```
## Apache2 container won't start on mac m1
To fix the problem you can follow those steps
1 - Open the `.env`.
2 - Search for `APACHE_FOR_MAC_M1` or add the key, if missing.
3 - Set the value to true:
```dotenv
APACHE_FOR_MAC_M1=true
```
4 - Finally rebuild the workspace image
```bash
docker-compose build apache2
```

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: 8.1, 8.0, 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...
@@ -180,7 +180,6 @@ That's it! enjoy :)
- `SOAP`
- `Drush`
- `Wordpress CLI`
- `dnsutils`
- Apache ZooKeeper *(Centralized service for distributed systems to a hierarchical key-value store)*
- Kibana *(Visualize your Elasticsearch data and navigate the Elastic Stack)*
- Dejavu *(Edit your Elasticsearch data)*
@@ -386,13 +385,12 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://sista.ai/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/sista-ai-icon.png" height="75px" alt="Sista AI - Unlock Your Full Potential With a Personal AI Coach. (www.sista.ai)"></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="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://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>
@@ -419,7 +417,7 @@ 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://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>

View File

@@ -1,7 +1,5 @@
/* Custom CSS */
.article{
overflow-x:hidden;
}
.article a {
border-bottom: none;
}

View File

@@ -179,7 +179,7 @@ Homestead 是一个工具,为你控制虚拟机(使用 Homestead 特殊命令)
## 依赖
- [Git](https://git-scm.com/downloads)
- [Docker](https://www.docker.com/products/docker-desktop/)
- [Docker](https://www.docker.com/products/docker/)
<a name="Installation"></a>
## 安装
@@ -205,9 +205,9 @@ git clone https://github.com/laradock/laradock.git
**请在开始之前阅读:**
如果你正在使用 **Docker Toolbox** (VM),选择以下任何一个方法:
- 更新到 [Docker Desktop](https://www.docker.com/products/docker-desktop/) Mac/Windows 版本 (建议). 查看 [Upgrading Laradock](#upgrading-laradock)
- 更新到 Docker [Native](https://www.docker.com/products/docker) Mac/Windows 版本 (建议). 查看 [Upgrading Laradock](#upgrading-laradock)
- 使用 Laradock v3.* (访问 `Laradock-ToolBox` [分支](https://github.com/laradock/laradock/tree/Laradock-ToolBox)).
如果您使用的是 **Docker Desktop**(Mac / Windows 版本)甚至是 Linux 版本,通常可以继续阅读这个文档Laradock v4 以上版本将仅支持 **Docker Desktop**。
如果您使用的是 **Docker Native**(Mac / Windows 版本)甚至是 Linux 版本,通常可以继续阅读这个文档Laradock v4 以上版本将仅支持 **Docker Native**。
1 - 运行容器: *(在运行 `docker-compose` 命令之前,确认你在 `laradock` 目录中*

View File

@@ -8,6 +8,7 @@
<a href="https://github.com/laradock/laradock/issues"><img src="https://img.shields.io/github/issues/laradock/laradock.svg" alt="GitHub issues"></a>
<a href="https://github.com/laradock/laradock/stargazers"><a href="#backers" alt="sponsors on Open Collective"><img src="https://opencollective.com/laradock/backers/badge.svg" /></a> <a href="#sponsors" alt="Sponsors on Open Collective"><img src="https://opencollective.com/laradock/sponsors/badge.svg" /></a> <img src="https://img.shields.io/github/stars/laradock/laradock.svg" alt="GitHub stars"></a>
<a href="https://github.com/laradock/laradock/actions/workflows/main-ci.yml"><img src="https://github.com/laradock/laradock/actions/workflows/main-ci.yml/badge.svg" alt="GitHub CI"></a>
<a href="https://travis-ci.org/laradock/laradock"><img src="https://travis-ci.org/laradock/laradock.svg?branch=master" alt="Build status"></a>
<a href="https://raw.githubusercontent.com/laradock/laradock/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license"></a>
</p>
@@ -191,13 +192,12 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://sista.ai/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/sista-ai-icon.png" height="75px" alt="Sista AI - Unlock Your Full Potential With a Personal AI Coach. (www.sista.ai)"></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="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://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>
@@ -224,7 +224,7 @@ 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://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>

View File

@@ -29,13 +29,4 @@ ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["/bin/bash", "/opt/startup.sh"]
EXPOSE 80 443
ARG APACHE_FOR_MAC_M1=false
RUN if [ ${APACHE_FOR_MAC_M1} = true ]; then \
# Change application source from deb.debian.org to aliyun source
wget -O "/usr/local/bin/go-replace" "https://github.com/webdevops/goreplace/releases/download/1.1.2/gr-arm64-linux" && \
chmod +x "/usr/local/bin/go-replace" && \
"/usr/local/bin/go-replace" --version \
;fi
EXPOSE 80 443

View File

@@ -1,4 +1,4 @@
FROM caddy:latest
FROM caddy/caddy:latest
COPY ./caddy/Caddyfile /etc/caddy/Caddyfile

View File

@@ -4,6 +4,6 @@ laradock.test {
php_fastcgi php-fpm:9000
file_server
encode zstd gzip
encode gzip
tls internal
}

View File

@@ -1,7 +1,7 @@
FROM ubuntu:20.04
ARG CLICKHOUSE_VERSION=22.2.2.1
ARG CLICKHOUSE_GOSU_VERSION=1.14
ARG CLICKHOUSE_VERSION=20.9.4.76
ARG CLICKHOUSE_GOSU_VERSION=1.10
RUN apt-get update \
&& apt-get install --yes --no-install-recommends \

View File

@@ -1,3 +1,5 @@
version: '3.5'
services:
volumes:

View File

@@ -1,3 +1,5 @@
version: '3.5'
networks:
frontend:
driver: ${NETWORKS_DRIVER}
@@ -72,7 +74,6 @@ services:
- INSTALL_GMP=${WORKSPACE_INSTALL_GMP}
- INSTALL_GNUPG=${WORKSPACE_INSTALL_GNUPG}
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
- XDEBUG_PORT=${WORKSPACE_XDEBUG_PORT}
- INSTALL_PCOV=${WORKSPACE_INSTALL_PCOV}
- INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG}
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
@@ -102,7 +103,6 @@ services:
- INSTALL_NPM_BOWER=${WORKSPACE_INSTALL_NPM_BOWER}
- INSTALL_NPM_VUE_CLI=${WORKSPACE_INSTALL_NPM_VUE_CLI}
- INSTALL_NPM_ANGULAR_CLI=${WORKSPACE_INSTALL_NPM_ANGULAR_CLI}
- INSTALL_NPM_CHECK_UPDATES_CLI=${WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI}
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
- INSTALL_WP_CLI=${WORKSPACE_INSTALL_WP_CLI}
- INSTALL_DRUPAL_CONSOLE=${WORKSPACE_INSTALL_DRUPAL_CONSOLE}
@@ -129,14 +129,12 @@ services:
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
- INSTALL_DUSK_DEPS=${WORKSPACE_INSTALL_DUSK_DEPS}
- INSTALL_PG_CLIENT=${WORKSPACE_INSTALL_PG_CLIENT}
- PG_CLIENT_VERSION=${POSTGRES_CLIENT_VERSION}
- INSTALL_PHALCON=${WORKSPACE_INSTALL_PHALCON}
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
- INSTALL_TAINT=${WORKSPACE_INSTALL_TAINT}
- INSTALL_LIBPNG=${WORKSPACE_INSTALL_LIBPNG}
- INSTALL_GRAPHVIZ=${WORKSPACE_INSTALL_GRAPHVIZ}
- INSTALL_IONCUBE=${WORKSPACE_INSTALL_IONCUBE}
- INSTALL_APCU=${WORKSPACE_INSTALL_APCU}
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
- INSTALL_SSHPASS=${WORKSPACE_INSTALL_SSHPASS}
@@ -164,7 +162,6 @@ services:
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
- INSTALL_AUDIOWAVEFORM=${WORKSPACE_INSTALL_AUDIOWAVEFORM}
- INSTALL_WKHTMLTOPDF=${WORKSPACE_INSTALL_WKHTMLTOPDF}
- WKHTMLTOPDF_VERSION=${WORKSPACE_WKHTMLTOPDF_VERSION}
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
- INSTALL_LNAV=${WORKSPACE_INSTALL_LNAV}
- INSTALL_PROTOC=${WORKSPACE_INSTALL_PROTOC}
@@ -175,10 +172,6 @@ services:
- PROTOC_VERSION=${WORKSPACE_PROTOC_VERSION}
- INSTALL_DOCKER_CLIENT=${WORKSPACE_INSTALL_DOCKER_CLIENT}
- INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED}
- INSTALL_EVENT=${WORKSPACE_INSTALL_EVENT}
- INSTALL_DNSUTILS=${WORKSPACE_INSTALL_DNSUTILS}
- INSTALL_POPPLER_UTILS=${WORKSPACE_INSTALL_POPPLER_UTILS}
- INSTALL_JDK=${WORKSPACE_INSTALL_JDK}
- http_proxy
- https_proxy
- no_proxy
@@ -195,7 +188,6 @@ services:
- "${WORKSPACE_VUE_CLI_SERVE_HOST_PORT}:8080"
- "${WORKSPACE_VUE_CLI_UI_HOST_PORT}:8000"
- "${WORKSPACE_ANGULAR_CLI_SERVE_HOST_PORT}:4200"
- "${WORKSPACE_VITE_PORT}:5173"
tty: true
environment:
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
@@ -224,7 +216,6 @@ services:
- INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
- INSTALL_GNUPG=${PHP_FPM_INSTALL_GNUPG}
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
- XDEBUG_PORT=${PHP_FPM_XDEBUG_PORT}
- INSTALL_PCOV=${PHP_FPM_INSTALL_PCOV}
- INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG}
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
@@ -249,7 +240,6 @@ services:
- INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
- INSTALL_PG_CLIENT=${PHP_FPM_INSTALL_PG_CLIENT}
- PG_CLIENT_VERSION=${POSTGRES_CLIENT_VERSION}
- INSTALL_POSTGIS=${PHP_FPM_INSTALL_POSTGIS}
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
- INSTALL_GHOSTSCRIPT=${PHP_FPM_INSTALL_GHOSTSCRIPT}
@@ -278,16 +268,13 @@ services:
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
- INSTALL_AUDIOWAVEFORM=${PHP_FPM_AUDIOWAVEFORM}
- INSTALL_WKHTMLTOPDF=${PHP_FPM_INSTALL_WKHTMLTOPDF}
- WKHTMLTOPDF_VERSION=${PHP_FPM_WKHTMLTOPDF_VERSION}
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
- 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}
- INSTALL_EVENT=${PHP_FPM_INSTALL_EVENT}
- DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL=${PHP_DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL}
- DOWNGRADE_OPENSSL_TLS_VERSION=${PHP_DOWNGRADE_OPENSSL_TLS_VERSION}
- PUID=${PHP_FPM_PUID}
- PGID=${PHP_FPM_PGID}
- IMAGEMAGICK_VERSION=${PHP_FPM_IMAGEMAGICK_VERSION}
@@ -296,8 +283,6 @@ services:
- PHP_FPM_NEW_RELIC_KEY=${PHP_FPM_NEW_RELIC_KEY}
- PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME}
- INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT}
- INSTALL_DNSUTILS=${PHP_FPM_INSTALL_DNSUTILS}
- INSTALL_POPPLER_UTILS=${PHP_FPM_INSTALL_POPPLER_UTILS}
- http_proxy
- https_proxy
- no_proxy
@@ -305,6 +290,8 @@ services:
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- docker-in-docker:/certs/client
ports:
- "${PHP_FPM_XDEBUG_PORT}:9003"
expose:
- "9000"
extra_hosts:
@@ -344,7 +331,6 @@ services:
- INSTALL_OCI8=${PHP_WORKER_INSTALL_OCI8}
- INSTALL_MSSQL=${PHP_WORKER_INSTALL_MSSQL}
- INSTALL_PHALCON=${PHP_WORKER_INSTALL_PHALCON}
- INSTALL_APCU=${PHP_WORKER_INSTALL_APCU}
- INSTALL_XLSWRITER=${PHP_WORKER_INSTALL_XLSWRITER}
- INSTALL_SOAP=${PHP_WORKER_INSTALL_SOAP}
- INSTALL_ZIP_ARCHIVE=${PHP_WORKER_INSTALL_ZIP_ARCHIVE}
@@ -361,9 +347,6 @@ services:
- INSTALL_IMAP=${PHP_WORKER_INSTALL_IMAP}
- INSTALL_XMLRPC=${PHP_WORKER_INSTALL_XMLRPC}
- INSTALL_SSDB=${PHP_WORKER_INSTALL_SSDB}
- INSTALL_EVENT=${PHP_WORKER_INSTALL_EVENT}
- INSTALL_INTL=${PHP_WORKER_INSTALL_INTL}
- INSTALL_POPPLER_UTILS=${PHP_WORKER_INSTALL_POPPLER_UTILS}
- PUID=${PHP_WORKER_PUID}
- PGID=${PHP_WORKER_PGID}
- IMAGEMAGICK_VERSION=${PHP_WORKER_IMAGEMAGICK_VERSION}
@@ -400,7 +383,6 @@ services:
- INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
- INSTALL_FFMPEG=${LARAVEL_HORIZON_INSTALL_FFMPEG}
- INSTALL_AUDIOWAVEFORM=${LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM}
- INSTALL_POPPLER_UTILS=${LARAVEL_HORIZON_INSTALL_POPPLER_UTILS}
- PUID=${LARAVEL_HORIZON_PUID}
- PGID=${LARAVEL_HORIZON_PGID}
- IMAGEMAGICK_VERSION=${LARAVEL_HORIZON_IMAGEMAGICK_VERSION}
@@ -414,19 +396,6 @@ services:
networks:
- backend
### Soketi Server ##############################################
soketi:
build:
context: ./soketi
volumes:
- ./soketi/config.json:/app/bin/config.json:ro
ports:
- "${SOKETI_PORT}:6001"
- "${SOKETI_METRICS_SERVER_PORT}:9601"
networks:
- frontend
- backend
### NGINX Server #########################################
nginx:
build:
@@ -452,8 +421,6 @@ services:
networks:
- frontend
- backend
extra_hosts:
- "host.docker.internal:host-gateway"
### OpenResty Server #########################################
openresty:
@@ -502,7 +469,6 @@ services:
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
- APACHE_INSTALL_HTTP2=${APACHE_INSTALL_HTTP2}
- APACHE_FOR_MAC_M1=${APACHE_FOR_MAC_M1}
volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
@@ -641,10 +607,6 @@ services:
- GITLAB_POSTGRES_USER=${GITLAB_POSTGRES_USER}
- GITLAB_POSTGRES_PASSWORD=${GITLAB_POSTGRES_PASSWORD}
- GITLAB_POSTGRES_DB=${GITLAB_POSTGRES_DB}
- KEYCLOAK_POSTGRES_INIT=${KEYCLOAK_POSTGRES_INIT}
- KEYCLOAK_POSTGRES_USER=${KEYCLOAK_POSTGRES_USER}
- KEYCLOAK_POSTGRES_PASSWORD=${KEYCLOAK_POSTGRES_PASSWORD}
- KEYCLOAK_POSTGRES_DB=${KEYCLOAK_POSTGRES_DB}
- JUPYTERHUB_POSTGRES_INIT=${JUPYTERHUB_POSTGRES_INIT}
- JUPYTERHUB_POSTGRES_USER=${JUPYTERHUB_POSTGRES_USER}
- JUPYTERHUB_POSTGRES_PASSWORD=${JUPYTERHUB_POSTGRES_PASSWORD}
@@ -659,29 +621,13 @@ services:
- POSTGRES_CONFLUENCE_PASSWORD=${CONFLUENCE_POSTGRES_PASSWORD}
networks:
- backend
### pgbackups PostgreSQL ###########################################
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
volumes:
- ../backup:/backups
links:
- postgres
environment:
- POSTGRES_HOST={POSTGRES_HOST}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
networks:
- backend
### PostgreSQL PostGis ###################################
postgres-postgis:
build:
context: ./postgres-postgis
args:
- POSTGIS_VERSION=${POSTGIS_VERSION}
- POSTGIS_VERSION=${POSTGIS_VERSION}
- INSTALL_PGSQL_HTTP_FOR_POSTGIS13=${POSTGIS_INSTALL_PGSQL_HTTP_FOR_POSTGIS13}
volumes:
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
@@ -777,7 +723,6 @@ services:
build: ./redis
volumes:
- ${DATA_PATH_HOST}/redis:/data
command: --requirepass ${REDIS_PASSWORD}
ports:
- "${REDIS_PORT}:6379"
networks:
@@ -1026,8 +971,8 @@ services:
- ADMINER_DEFAULT_SERVER=${ADM_DEFAULT_SERVER}
ports:
- "${ADM_PORT}:8080"
# depends_on:
# - php-fpm
depends_on:
- php-fpm
networks:
- frontend
- backend
@@ -1055,8 +1000,6 @@ services:
- ${DATA_PATH_HOST}/meilisearch:/data.ms
ports:
- "${MEILISEARCH_HOST_PORT}:7700"
environment:
- MEILI_MASTER_KEY=${MEILISEARCH_KEY}
networks:
- frontend
- backend
@@ -1073,9 +1016,6 @@ services:
- cluster.name=laradock-cluster
- node.name=laradock-node
- bootstrap.memory_lock=true
- xpack.security.enabled=false
- xpack.security.transport.ssl.enabled=false
- indices.id_field_data.enabled=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- cluster.initial_master_nodes=laradock-node
ulimits:
@@ -1184,16 +1124,6 @@ services:
- frontend
- backend
### Mailpit ##############################################
mailpit:
build: ./mailpit
ports:
- "${MAILPIT_HTTP_PORT}:8025"
- "${MAILPIT_SMTP_PORT}:1025"
networks:
- frontend
- backend
### Selenium ###############################################
selenium:
build: ./selenium
@@ -1623,7 +1553,6 @@ services:
- ADMIN_PASS=${REDIS_WEBUI_PASSWORD}
- REDIS_1_HOST=${REDIS_WEBUI_CONNECT_HOST}
- REDIS_1_PORT=${REDIS_WEBUI_CONNECT_PORT}
- REDIS_1_AUTH=${REDIS_PASSWORD}
networks:
- backend
ports:
@@ -2128,38 +2057,3 @@ services:
- ${TARANTOOL_ADMIN_PORT}:80
networks:
- backend
### onedev ####################################################
onedev:
image: 1dev/server
ports:
- "${ONEDEV_HTTP_PORT}:6610"
- "${ONEDEV_SSH_PORT}:6611"
volumes:
- ${DATA_PATH_HOST}/onedev:/opt/onedev
- /var/run/docker.sock:/var/run/docker.sock
networks:
- frontend
- backend
restart: always
### keycloak ##################################################
keycloak:
image: bitnami/keycloak:${KEYCLOAK_VERSION}
ports:
- "${KEYCLOAK_HTTP_PORT}:${KEYCLOAK_HTTP_PORT}"
environment:
- KEYCLOAK_HTTP_PORT=${KEYCLOAK_HTTP_PORT}
- KEYCLOAK_CREATE_ADMIN_USER=${KEYCLOAK_CREATE_ADMIN_USER}
- KEYCLOAK_ADMIN_USER=${KEYCLOAK_ADMIN_USER}
- KEYCLOAK_ADMIN_PASSWORD=${KEYCLOAK_ADMIN_PASSWORD}
- KEYCLOAK_DATABASE_HOST=${KEYCLOAK_POSTGRES_HOST}
- KEYCLOAK_DATABASE_PORT=${POSTGRES_PORT}
- KEYCLOAK_DATABASE_NAME=${KEYCLOAK_POSTGRES_DB}
- KEYCLOAK_DATABASE_USER=${KEYCLOAK_POSTGRES_USER}
- KEYCLOAK_DATABASE_PASSWORD=${KEYCLOAK_POSTGRES_PASSWORD}
depends_on:
- postgres
networks:
- frontend
- backend

View File

@@ -1,4 +1,4 @@
FROM openjdk:11-jdk
FROM openjdk:8-jdk
RUN apt-get update && apt-get install -y git curl && rm -rf /var/lib/apt/lists/*
@@ -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.381}
ENV JENKINS_VERSION ${JENKINS_VERSION:-2.303.2}
# jenkins.war checksum, download will be validated using it
# 2.303.2
ARG JENKINS_SHA=62ca5dcecbf176452d94d4438488662e223ab9594dccb564f065c63832a47302
ARG JENKINS_SHA=c4b8532e25a33001a3d8883d3cd87a664953ace239b486839b683065817d29cf
# Can be used to customize where jenkins.war get downloaded from

View File

@@ -31,23 +31,18 @@ RUN apk --update add wget \
cyrus-sasl-dev \
libgsasl-dev \
oniguruma-dev \
libressl \
libressl-dev \
supervisor \
procps; \
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "50600" ] || \
[ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
apk --update add libressl libressl-dev; \
else \
apk --update add openssl-dev; \
fi
procps
RUN pecl channel-update pecl.php.net; \
docker-php-ext-install mysqli mbstring pdo pdo_mysql xml pcntl; \
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80100" ] || \
[ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80200" ]; then \
php -m | grep -oiE '^tokenizer$'; \
else \
docker-php-ext-install tokenizer; \
fi
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
@@ -210,16 +205,6 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
&& make install \
;fi
#####################################
# poppler-utils:
#####################################
USER root
ARG INSTALL_POPPLER_UTILS=false
RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
apk add --update --no-cache poppler-utils antiword \
;fi
# Install Cassandra drivers:
ARG INSTALL_CASSANDRA=false

View File

@@ -7,4 +7,6 @@ RUN curl -L -o /usr/share/logstash/lib/mysql-connector-java-5.1.47.jar https://r
ADD ./pipeline/ /usr/share/logstash/pipeline/
ADD ./config/ /usr/share/logstash/config/
RUN logstash-plugin install logstash-input-jdbc
RUN logstash-plugin install logstash-input-beats

View File

@@ -1,5 +1,5 @@
FROM maildev/maildev
FROM djfarrelly/maildev
LABEL maintainer="Dan Farrelly"
LABEL maintainer="Maxime Hélias <maximehelias16@gmail.com>"
EXPOSE 80 25

View File

@@ -1,3 +0,0 @@
FROM axllent/mailpit
LABEL maintainer="reishou <reishou90@gmail.com>"

View File

@@ -14,6 +14,6 @@ COPY my.cnf /etc/mysql/conf.d/my.cnf
RUN chmod -R 644 /etc/mysql/conf.d/my.cnf
CMD ["mariadbd"]
CMD ["mysqld"]
EXPOSE 3306

View File

@@ -15,4 +15,6 @@ COPY my.cnf /etc/mysql/conf.d/my.cnf
RUN chmod 0444 /etc/mysql/conf.d/my.cnf
CMD ["mysqld"]
EXPOSE 3306

View File

@@ -9,4 +9,3 @@
sql-mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
character-set-server=utf8
default-authentication-plugin=mysql_native_password
innodb_use_native_aio=0

View File

@@ -23,29 +23,8 @@ http {
error_log /dev/stderr;
gzip on;
gzip_disable "msie6";
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types
application/atom+xml
application/javascript
application/json
application/rss+xml
application/vnd.ms-fontobject
application/x-font-ttf
application/x-web-app-manifest+json
application/xhtml+xml
application/xml
font/opentype
image/svg+xml
image/x-icon
text/css
text/plain
text/x-component;
ssl_protocols TLSv1.2 TLSv1.3;
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;

View File

@@ -58,7 +58,7 @@ ARG RESTY_CONFIG_OPTIONS_MORE="\
--with-http_iconv_module \
--add-module=/tmp/nginx-ct-master \
--add-module=/tmp/nginx-dav-ext-module-master \
--add-module=/tmp/ngx_brotli-master \
--add-module=/tmp/ngx_brotli \
--add-module=/tmp/ngx_cache_purge-master \
--add-module=/tmp/ngx_http_substitutions_filter_module-master \
"
@@ -166,7 +166,7 @@ RUN apk add --no-cache --virtual .build-deps \
&& 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://github.com/google/ngx_brotli/archive/master.tar.gz -o ngx_brotli.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 \

View File

@@ -193,7 +193,6 @@ RUN if [ ${INSTALL_PGSQL} = true ]; then \
ARG INSTALL_PG_CLIENT=false
ARG INSTALL_POSTGIS=false
ARG PG_CLIENT_VERSION
RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
apt-get install -yqq gnupg \
@@ -201,7 +200,7 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
&& echo "deb http://apt.postgresql.org/pub/repos/apt $VERSION_CODENAME-pgdg main" > /etc/apt/sources.list.d/pgdg.list \
&& curl -sL https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
&& apt-get update -yqq \
&& apt-get install -yqq postgresql-client-${PG_CLIENT_VERSION} postgis; \
&& apt-get install -yqq postgresql-client-12 postgis; \
if [ ${INSTALL_POSTGIS} = true ]; then \
apt-get install -yqq postgis; \
fi \
@@ -213,17 +212,12 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
###########################################################################
ARG INSTALL_XDEBUG=false
ARG XDEBUG_PORT=9003
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
# 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 \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xdebug-3.2.1; \
else \
pecl install xdebug-3.1.6; \
fi; \
pecl install xdebug-3.1.2; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \
@@ -241,10 +235,10 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Copy xdebug configuration for remote debugging
COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
RUN 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 \
RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=${XDEBUG_PORT}/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=9003/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /usr/local/etc/php/conf.d/xdebug.ini && \
@@ -265,9 +259,11 @@ USER root
ARG INSTALL_PCOV=false
RUN if [ ${INSTALL_PCOV} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; }; then \
pecl install pcov && \
docker-php-ext-enable pcov \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
if [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; then \
pecl install pcov && \
docker-php-ext-enable pcov \
;fi \
;fi \
;fi
@@ -306,8 +302,6 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
# Install Php Redis Extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install -o -f redis-4.3.0; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ] ;}; then \
pecl install -o -f redis-5.3.7; \
else \
pecl install -o -f redis; \
fi \
@@ -329,8 +323,6 @@ RUN set -eux; \
pecl install swoole-4.3.5; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
pecl install swoole-4.5.11; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
pecl install swoole-4.8.12; \
else \
pecl install swoole; \
fi; \
@@ -425,12 +417,8 @@ RUN set -eux; \
if [ ${INSTALL_AMQP} = true ]; then \
# # Install the amqp extension
apt-get -yqq install librabbitmq-dev; \
if [ ${LARADOCK_PHP_VERSION} = "7.3" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.2" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.0" ] \
|| [ ${LARADOCK_PHP_VERSION} = "5.6" ]; then \
pecl install amqp-1.11.0; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install amqp-1.11.0beta; \
else \
pecl install amqp; \
fi; \
@@ -606,17 +594,13 @@ RUN set -xe; \
###########################################################################
ARG INSTALL_OCI8=false
ARG ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/the-paulus/oracle-instantclient/raw/master/
ARG ORACLE_INSTANT_CLIENT_ARCH=x86_64
ARG ORACLE_INSTANT_CLIENT_MAJOR=18
ARG ORACLE_INSTANT_CLIENT_MINOR=3
ARG ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/diogomascarenha/oracle-instantclient/raw/master/
ENV ORACLE_INSTANT_CLIENT_VERSION=${ORACLE_INSTANT_CLIENT_MAJOR}_${ORACLE_INSTANT_CLIENT_MINOR}
ENV LD_LIBRARY_PATH="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_HOME="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_LIB_DIR="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_INCLUDE_DIR="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/sdk/include"
ENV OCI_VERSION=${ORACLE_INSTANT_CLIENT_MAJOR}
ENV LD_LIBRARY_PATH="/opt/oracle/instantclient_12_1"
ENV OCI_HOME="/opt/oracle/instantclient_12_1"
ENV OCI_LIB_DIR="/opt/oracle/instantclient_12_1"
ENV OCI_INCLUDE_DIR="/opt/oracle/instantclient_12_1/sdk/include"
ENV OCI_VERSION=12
RUN if [ ${INSTALL_OCI8} = true ]; then \
# Install wget
@@ -624,13 +608,13 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
# Install Oracle Instantclient
&& mkdir /opt/oracle \
&& cd /opt/oracle \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-basic-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-sdk-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip \
&& unzip /opt/oracle/instantclient-basic-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip -d /opt/oracle \
&& unzip /opt/oracle/instantclient-sdk-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip -d /opt/oracle \
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntsh.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntsh.so ; fi\
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntshcore.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntshcore.so ; fi \
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libocci.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libocci.so ; fi \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-basic-linux.x64-12.1.0.2.0.zip \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-sdk-linux.x64-12.1.0.2.0.zip \
&& unzip /opt/oracle/instantclient-basic-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& unzip /opt/oracle/instantclient-sdk-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& ln -s /opt/oracle/instantclient_12_1/libclntsh.so.12.1 /opt/oracle/instantclient_12_1/libclntsh.so \
&& ln -s /opt/oracle/instantclient_12_1/libclntshcore.so.12.1 /opt/oracle/instantclient_12_1/libclntshcore.so \
&& ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so \
&& rm -rf /opt/oracle/*.zip \
# Install PHP extensions deps
&& apt-get install --no-install-recommends -yqq \
@@ -638,17 +622,15 @@ 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_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.0.12; \
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_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.2.0; \
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_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.0.1; \
elif [ $(php -r "echo PHP_MAJOR_VERSION . PHP_MINOR_VERSION;") = "81" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.2.1; \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-3.0.1; \
else \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8; \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8; \
fi \
&& docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION},${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} \
&& 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 \
&& docker-php-ext-install \
pdo_oci \
@@ -663,13 +645,7 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
ARG INSTALL_IONCUBE=false
RUN if [ ${INSTALL_IONCUBE} = true ]; then \
if [ ${LARADOCK_PHP_VERSION} = "8.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.4" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.3" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.2" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.0" ] \
|| [ ${LARADOCK_PHP_VERSION} = "5.6" ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \
# Install the php ioncube loader
curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \
&& tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \
@@ -739,8 +715,7 @@ ARG INSTALL_LDAP=false
RUN if [ ${INSTALL_LDAP} = true ]; then \
apt-get install -yqq libldap2-dev && \
ARCH=$(arch) && \
docker-php-ext-configure ldap --with-libdir="lib/${ARCH}-linux-gnu/" && \
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
docker-php-ext-install ldap \
;fi
@@ -762,17 +737,12 @@ RUN set -eux; \
###########################################################################
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
###########################################################################
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux \
apt-get update \
&& apt-get install -yqq apt-transport-https gnupg lsb-release \
&& if [ ${LARADOCK_PHP_VERSION} = "8.1" ] || [ ${LARADOCK_PHP_VERSION} = "8.2" ]; then \
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg \
;else \
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
;fi \
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
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/$(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 msodbcsql18 locales \
&& 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 \
@@ -782,10 +752,6 @@ RUN set -eux; \
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 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70400" ]; then \
pecl install pdo_sqlsrv-5.10.1 sqlsrv-5.10.1 \
;else \
pecl install pdo_sqlsrv sqlsrv \
;fi \
@@ -818,7 +784,6 @@ ARG IMAGEMAGICK_VERSION=latest
ENV IMAGEMAGICK_VERSION ${IMAGEMAGICK_VERSION}
RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \
apt-get update && \
apt-get install -yqq libmagickwand-dev imagemagick && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
cd /tmp && \
@@ -885,13 +850,25 @@ ARG INSTALL_PHALCON=false
ARG LARADOCK_PHALCON_VERSION
ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
# Copy phalcon configration
COPY ./phalcon.ini /usr/local/etc/php/conf.d/phalcon.ini.disable
RUN if [ $INSTALL_PHALCON = true ]; then \
apt-get update -yqq \
&& pecl channel-update pecl.php.net \
&& apt-get install -yqq libpcre3-dev; \
pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
docker-php-ext-enable phalcon \
;fi
apt-get install -yqq unzip libpcre3-dev gcc make re2c git automake autoconf\
&& 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${LARADOCK_PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${LARADOCK_PHALCON_VERSION}/build \
&& ./install \
&& mv /usr/local/etc/php/conf.d/phalcon.ini.disable /usr/local/etc/php/conf.d/phalcon.ini \
&& rm -rf /tmp/cphalcon* \
;fi
###########################################################################
# APCU:
@@ -1027,7 +1004,6 @@ USER root
ARG INSTALL_FFMPEG=false
RUN if [ ${INSTALL_FFMPEG} = true ]; then \
apt-get update -y && \
apt-get -y install ffmpeg \
;fi
@@ -1051,17 +1027,7 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
&& make \
&& make install \
;fi
#####################################
# poppler-utils:
#####################################
USER root
ARG INSTALL_POPPLER_UTILS=false
RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
apt-get -y install poppler-utils antiword \
;fi
#####################################
# wkhtmltopdf:
@@ -1070,11 +1036,9 @@ RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
USER root
ARG INSTALL_WKHTMLTOPDF=false
ARG WKHTMLTOPDF_VERSION=0.12.6.1-3
RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \
ARCH=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) \
&& apt-get install -yqq \
apt-get install -yqq \
libxrender1 \
libfontconfig1 \
libx11-dev \
@@ -1085,24 +1049,9 @@ RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \
xfonts-base \
xfonts-75dpi \
wget \
# && cat /etc/os-release \
&& if [ ${LARADOCK_PHP_VERSION} = "5.6" ] || \
[ ${LARADOCK_PHP_VERSION} = "7.0" ]; then \
wget "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.stretch_${ARCH}.deb"; \
dpkg -i "wkhtmltox_0.12.6-1.stretch_${ARCH}.deb"; \
elif [ ${LARADOCK_PHP_VERSION} = "7.1" ] || \
[ ${LARADOCK_PHP_VERSION} = "7.2" ] || \
[ ${LARADOCK_PHP_VERSION} = "7.3" ] || \
[ ${LARADOCK_PHP_VERSION} = "7.4" ]; then \
wget "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.buster_${ARCH}.deb"; \
dpkg -i "wkhtmltox_0.12.6-1.buster_${ARCH}.deb"; \
elif [ ${LARADOCK_PHP_VERSION} = "8.0" ]; then \
wget "https://github.com/wkhtmltopdf/packaging/releases/download/${WKHTMLTOPDF_VERSION}/wkhtmltox_${WKHTMLTOPDF_VERSION}.bullseye_${ARCH}.deb"; \
dpkg -i "wkhtmltox_${WKHTMLTOPDF_VERSION}.bullseye_${ARCH}.deb"; \
else \
wget "https://github.com/wkhtmltopdf/packaging/releases/download/${WKHTMLTOPDF_VERSION}/wkhtmltox_${WKHTMLTOPDF_VERSION}.bookworm_${ARCH}.deb"; \
dpkg -i "wkhtmltox_${WKHTMLTOPDF_VERSION}.bookworm_${ARCH}.deb"; \
fi \
&& wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.stretch_amd64.deb \
&& dpkg -i wkhtmltox_0.12.6-1.stretch_amd64.deb \
&& apt -f install \
;fi
#####################################
@@ -1139,9 +1088,9 @@ ARG INSTALL_CACHETOOL=false
RUN if [ ${INSTALL_CACHETOOL} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") -ge 1 ]; then \
curl -sO https://gordalina.github.io/cachetool/downloads/cachetool.phar; \
curl -sO http://gordalina.github.io/cachetool/downloads/cachetool.phar; \
else \
curl https://gordalina.github.io/cachetool/downloads/cachetool-3.2.1.phar -o cachetool.phar; \
curl http://gordalina.github.io/cachetool/downloads/cachetool-3.2.1.phar -o cachetool.phar; \
fi && \
chmod +x cachetool.phar && \
mv cachetool.phar /usr/local/bin/cachetool \
@@ -1172,24 +1121,15 @@ USER root
ARG INSTALL_PHPDECIMAL=false
RUN if [ ${INSTALL_PHPDECIMAL} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
echo 'decimal not support PHP 5.6'; \
else \
if [ ${LARADOCK_PHP_VERSION} = "8.1" ] || \
[ ${LARADOCK_PHP_VERSION} = "8.2" ]; then \
curl -L -o /tmp/mpdecimal.tar.gz "https://www.bytereef.org/software/mpdecimal/releases/mpdecimal-2.5.1.tar.gz"; \
mkdir -p /tmp/mpdecimal; \
tar -C /tmp/mpdecimal -zxvf /tmp/mpdecimal.tar.gz --strip 1; \
cd /tmp/mpdecimal; \
./configure && make && make install; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
echo 'decimal not support PHP 5.6'; \
else \
apt-get install -yqq libmpdec-dev; \
fi; \
pecl install decimal; \
docker-php-ext-enable decimal; \
php -m | grep -oiE '^decimal$'; \
fi; \
fi
apt-get install -yqq libmpdec-dev \
&& pecl install decimal \
&& docker-php-ext-enable decimal \
&& php -m | grep -q 'decimal' \
;fi \
;fi
###########################################################################
# zookeeper
@@ -1268,10 +1208,9 @@ RUN set -xe; \
###########################################################################
ARG DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL=false
ARG DOWNGRADE_OPENSSL_TLS_VERSION=1.2
RUN if [ ${DOWNGRADE_OPENSSL_TLS_AND_SECLEVEL} = true ]; then \
sed -i 's,^\(MinProtocol[ ]*=\).*,\1'TLSv${DOWNGRADE_OPENSSL_TLS_VERSION}',g' /etc/ssl/openssl.cnf \
sed -i 's,^\(MinProtocol[ ]*=\).*,\1'TLSv1.2',g' /etc/ssl/openssl.cnf \
&& \
sed -i 's,^\(CipherString[ ]*=\).*,\1'DEFAULT@SECLEVEL=1',g' /etc/ssl/openssl.cnf\
;fi
@@ -1297,55 +1236,11 @@ RUN if [ ${INSTALL_ZMQ} = true ]; then \
&& echo "extension=zmq.so" > /usr/local/etc/php/conf.d/zmq.ini \
;fi
############################################################################
## Event:
############################################################################
USER root
ARG INSTALL_EVENT=false
RUN set -eux; \
if [ ${INSTALL_EVENT} = true ]; then \
curl -L -o /tmp/libevent.tar.gz https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz &&\
mkdir -p /tmp/libevent-php &&\
tar -C /tmp/libevent-php -zxvf /tmp/libevent.tar.gz --strip 1 &&\
cd /tmp/libevent-php &&\
./configure --prefix=/usr/local/libevent-2.1.12 &&\
make &&\
make install &&\
rm /tmp/libevent.tar.gz &&\
docker-php-ext-install sockets &&\
curl -L -o /tmp/event.tar.gz http://pecl.php.net/get/event-3.0.6.tgz &&\
mkdir -p /tmp/event-php &&\
tar -C /tmp/event-php -zxvf /tmp/event.tar.gz --strip 1 &&\
cd /tmp/event-php &&\
phpize &&\
./configure --with-event-libevent-dir=/usr/local/libevent-2.1.12/ &&\
make &&\
make install &&\
rm /tmp/event.tar.gz &&\
docker-php-ext-enable event &&\
php -m | grep -q 'event' \
;fi
###########################################################################
# DNS utilities:
###########################################################################
USER root
ARG INSTALL_DNSUTILS=false
RUN if [ ${INSTALL_DNSUTILS} = true ]; then \
apt-get update && apt-get install -y dnsutils \
;fi
###########################################################################
# Check PHP version:
###########################################################################
RUN set -xe; php -v | grep -q "PHP ${LARADOCK_PHP_VERSION}."
RUN set -xe; php -v | head -n 1 | grep -q "PHP ${LARADOCK_PHP_VERSION}."
#
#--------------------------------------------------------------------------
@@ -1361,7 +1256,7 @@ USER root
# Clean up
RUN apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
rm -f /var/log/lastlog /var/log/faillog
rm /var/log/lastlog /var/log/faillog
# Configure non-root user.
ARG PUID=1000

View File

@@ -1 +1,2 @@
extension=phalcon.so
extension=psr.so
extension=phalcon.so

File diff suppressed because it is too large Load Diff

View File

@@ -32,20 +32,15 @@ RUN apk --update add wget \
cyrus-sasl-dev \
libgsasl-dev \
oniguruma-dev \
supervisor; \
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "50600" ] || \
[ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70000" ]; then \
apk --update add libressl libressl-dev; \
else \
apk --update add openssl-dev; \
fi
libressl \
libressl-dev \
supervisor
RUN pecl channel-update pecl.php.net; \
docker-php-ext-install mysqli mbstring pdo pdo_mysql xml pcntl; \
if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80100" ] || \
[ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80200" ]; then \
php -m | grep -oiE '^tokenizer$'; \
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
@@ -72,22 +67,11 @@ RUN if [ ${INSTALL_BZ2} = true ]; then \
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; \
if [ ${LARADOCK_PHP_VERSION} = "7.0" ]; then \
wget -O /tmp/gnupg.tgz "https://pecl.php.net/get/gnupg-1.5.1.tgz"; \
mkdir -p /tmp/gnupg; \
tar -C /tmp/gnupg -zxvf /tmp/gnupg.tgz --strip 1; \
cd /tmp/gnupg; \
phpize; \
./configure; \
make && make install; \
else \
pecl install gnupg; \
fi; \
docker-php-ext-enable gnupg; \
php -m | grep -oiE '^gnupg$'; \
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; \
pecl install gnupg; \
docker-php-ext-enable gnupg; \
fi
#Install LDAP
@@ -103,7 +87,7 @@ 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; \
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; \
@@ -274,28 +258,13 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
&& make install \
;fi
#####################################
# poppler-utils:
#####################################
USER root
ARG INSTALL_POPPLER_UTILS=false
RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
apk add --update --no-cache poppler-utils antiword \
;fi
# Install AMQP:
ARG INSTALL_AMQP=false
RUN if [ ${INSTALL_AMQP} = true ]; then \
docker-php-ext-install sockets; \
apk --update add -q rabbitmq-c rabbitmq-c-dev && \
if [ ${LARADOCK_PHP_VERSION} = "7.3" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.2" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.0" ] \
|| [ ${LARADOCK_PHP_VERSION} = "5.6" ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
printf "\n" | pecl install amqp-1.11.0; \
else \
printf "\n" | pecl install amqp; \
@@ -341,29 +310,24 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
# Install Phalcon ext
ARG INSTALL_PHALCON=false
ARG LARADOCK_PHALCON_VERSION
ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
ARG PHALCON_VERSION
ENV PHALCON_VERSION ${PHALCON_VERSION}
RUN if [ $INSTALL_PHALCON = true ]; then \
apt-get update -yqq \
&& pecl channel-update pecl.php.net \
&& apt-get install -yqq libpcre3-dev; \
pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
docker-php-ext-enable phalcon; \
php -m | grep -q 'phalcon' \
;fi
# Install APCU ext
ARG INSTALL_APCU=false
RUN if [ ${INSTALL_APCU} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install -a apcu-4.0.11; \
else \
pecl install apcu; \
fi && \
docker-php-ext-enable apcu \
;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 \
@@ -398,8 +362,6 @@ RUN set -eux; \
pecl install swoole-4.3.5; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70100" ]; then \
pecl install swoole-4.5.11; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
pecl install swoole-4.8.12; \
else \
pecl install swoole; \
fi; \
@@ -496,53 +458,27 @@ ARG INSTALL_MSSQL=false
RUN set -eux; \
if [ ${INSTALL_MSSQL} = true ]; then \
apk add --update gnupg; \
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
###########################################################################
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
# Add Microsoft repo for Microsoft ODBC Driver 17 for Linux
# Driver version 17.10 or higher is required for Alpine support.
# 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.10.5.1-1_amd64.apk \
&& 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.10.5.1-1_amd64.sig \
&& 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.10.5.1-1_amd64.sig msodbcsql17_17.10.5.1-1_amd64.apk \
&& 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.10.5.1-1_amd64.apk unixodbc-dev \
;else \
# Add Microsoft repo for Microsoft ODBC Driver 18 for Linux
# Driver version 18.5 or higher is required for Alpine support.
# Download the desired package(s)
curl -O https://download.microsoft.com/download/3/5/5/355d7943-a338-41a7-858d-53b259ea33f5/msodbcsql18_18.3.2.1-1_amd64.apk \
# Verify signature, if 'gpg' is missing install it using 'apk add gnupg':
&& curl -O https://download.microsoft.com/download/3/5/5/355d7943-a338-41a7-858d-53b259ea33f5/msodbcsql18_18.3.2.1-1_amd64.sig \
&& curl https://packages.microsoft.com/keys/microsoft.asc | gpg --import - \
&& gpg --verify msodbcsql18_18.3.2.1-1_amd64.sig msodbcsql18_18.3.2.1-1_amd64.apk \
# Install the package(s)
&& apk add --allow-untrusted msodbcsql18_18.3.2.1-1_amd64.apk unixodbc-dev \
;fi \
#
&& 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 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70400" ]; then \
pecl install pdo_sqlsrv-5.10.1 sqlsrv-5.10.1 \
;else \
pecl install pdo_sqlsrv sqlsrv \
;fi \
&& 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 -oiE '^pdo_sqlsrv$' \
&& php -m | grep -oiE '^sqlsrv$' \
&& php -m | grep -q 'pdo_sqlsrv' \
&& php -m | grep -q 'sqlsrv' \
;fi
###########################################################################
@@ -572,50 +508,6 @@ RUN set -xe; \
&& docker-php-ext-enable ssdb \
;fi
###########################################################################
# Intl:
###########################################################################
ARG INSTALL_INTL=false
RUN if [ ${INSTALL_INTL} = true ]; then \
apk add icu-dev && \
docker-php-ext-configure intl && \
docker-php-ext-install intl && \
docker-php-ext-enable intl \
;fi
############################################################################
## Event:
############################################################################
USER root
ARG INSTALL_EVENT=false
RUN set -eux; \
if [ ${INSTALL_EVENT} = true ]; then \
curl -L -o /tmp/libevent.tar.gz https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz &&\
mkdir -p /tmp/libevent-php &&\
tar -C /tmp/libevent-php -zxvf /tmp/libevent.tar.gz --strip 1 &&\
cd /tmp/libevent-php &&\
./configure --prefix=/usr/local/libevent-2.1.12 &&\
make &&\
make install &&\
rm /tmp/libevent.tar.gz &&\
docker-php-ext-install sockets &&\
curl -L -o /tmp/event.tar.gz http://pecl.php.net/get/event-3.0.6.tgz &&\
mkdir -p /tmp/event-php &&\
tar -C /tmp/event-php -zxvf /tmp/event.tar.gz --strip 1 &&\
cd /tmp/event-php &&\
phpize &&\
./configure --with-event-libevent-dir=/usr/local/libevent-2.1.12/ &&\
make &&\
make install &&\
rm /tmp/event.tar.gz &&\
docker-php-ext-enable --ini-name zz-event.ini event &&\
php -m | grep -q 'event' \
;fi
#
#--------------------------------------------------------------------------
# Optional Supervisord Configuration

View File

@@ -1,44 +0,0 @@
#!/bin/bash
#
# Copy createdb.sh.example to createdb.sh
# then uncomment then set database name and username to create you need databases
#
# example: .env POSTGRES_USER=appuser and need db name is myshop_db
#
# psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
# CREATE USER myuser WITH PASSWORD 'mypassword';
# CREATE DATABASE myshop_db;
# GRANT ALL PRIVILEGES ON DATABASE myshop_db TO myuser;
# EOSQL
#
# this sh script will auto run when the postgres container starts and the $DATA_PATH_HOST/postgres not found.
#
#
# psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
# CREATE USER db1 WITH PASSWORD 'db1';
# CREATE DATABASE db1;
# GRANT ALL PRIVILEGES ON DATABASE db1 TO db1;
# EOSQL
#
# psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
# CREATE USER db2 WITH PASSWORD 'db2';
# CREATE DATABASE db2;
# GRANT ALL PRIVILEGES ON DATABASE db2 TO db2;
# EOSQL
#
# psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
# CREATE USER db3 WITH PASSWORD 'db3';
# CREATE DATABASE db3;
# GRANT ALL PRIVILEGES ON DATABASE db3 TO db3;
# EOSQL
#
### default database and user for keycloak ##############################################
if [ "$KEYCLOAK_POSTGRES_INIT" == 'true' ]; then
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER $KEYCLOAK_POSTGRES_USER WITH PASSWORD '$KEYCLOAK_POSTGRES_PASSWORD';
CREATE DATABASE $KEYCLOAK_POSTGRES_DB;
GRANT ALL PRIVILEGES ON DATABASE $KEYCLOAK_POSTGRES_DB TO $KEYCLOAK_POSTGRES_USER;
ALTER ROLE $KEYCLOAK_POSTGRES_USER CREATEROLE SUPERUSER;
EOSQL
echo
fi

20097
react/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -12,7 +12,7 @@
"axios": "^0.21.2",
"bootstrap": "^4.5.3",
"jss-rtl": "^0.3.0",
"node-sass": "^9.0.0",
"node-sass": "^7.0.0",
"prop-types": "^15.7.2",
"react": "^17.0.1",
"react-bootstrap": "^1.4.0",
@@ -20,7 +20,7 @@
"react-intl": "^4.7.6",
"react-redux": "^7.2.2",
"react-router-dom": "^5.2.0",
"react-scripts": "5.0.1",
"react-scripts": "3.4.1",
"redux": "^4.0.5",
"redux-saga": "^1.1.3"
},

View File

@@ -1,9 +0,0 @@
FROM quay.io/soketi/soketi:latest-16-debian
LABEL maintainer="Er-Niebla <er.niebla@gmail.com>"
COPY config.json /app/bin/config.json
CMD ["--config=/app/bin/config.json"]
EXPOSE 6001 9601

View File

@@ -1,3 +0,0 @@
{
"debug": false
}

61
travis-build.sh Executable file
View File

@@ -0,0 +1,61 @@
#!/usr/bin/env bash
#### halt script on error
set -xe
echo '##### Print docker version'
docker --version
echo '##### Print environment'
env | sort
#### Build the Docker Images
if [ -n "${PHP_VERSION}" ]; then
cp .env.example .env
sed -i -- "s/PHP_VERSION=.*/PHP_VERSION=${PHP_VERSION}/g" .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/V8JS=true/V8JS=false/g' .env
sed -i -- 's/OCI8=true/OCI8=false/g' .env
if [ "${PHP_VERSION}" == "5.6" ]; then
# Aerospike C Client SDK 4.0.7, Debian 9.6 is not supported
# https://github.com/aerospike/aerospike-client-php5/issues/145
sed -i -- 's/WORKSPACE_INSTALL_AEROSPIKE=true/WORKSPACE_INSTALL_AEROSPIKE=false/g' .env
sed -i -- 's/PHP_FPM_INSTALL_AEROSPIKE=true/PHP_FPM_INSTALL_AEROSPIKE=false/g' .env
fi
if [ "${PHP_VERSION}" == "7.3" ]; then
# This ssh2 extension does not yet support PHP 7.3.
sed -i -- 's/PHP_FPM_INSTALL_SSH2=true/PHP_FPM_INSTALL_SSH2=false/g' .env
fi
cat .env
docker-compose build ${BUILD_SERVICE}
docker images
fi
#### Generate the Laradock Documentation site using Hugo
if [ -n "${HUGO_VERSION}" ]; then
HUGO_PACKAGE=hugo_${HUGO_VERSION}_Linux-64bit
HUGO_BIN=hugo_${HUGO_VERSION}_linux_amd64
# Download hugo binary
curl -L https://github.com/spf13/hugo/releases/download/v$HUGO_VERSION/$HUGO_PACKAGE.tar.gz | tar xz
mkdir -p $HOME/bin
mv ./${HUGO_BIN}/${HUGO_BIN} $HOME/bin/hugo
# Remove existing docs
if [ -d "./docs" ]; then
rm -r ./docs
fi
# Build docs
cd DOCUMENTATION
hugo
fi

View File

@@ -32,9 +32,8 @@ USER root
ARG CHANGE_SOURCE=false
RUN if [ ${CHANGE_SOURCE} = true ]; then \
# Change application source from ubuntu.com to tuna.tsinghua.edu.cn source
sed -i "s@http://.*archive.ubuntu.com@https://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list; \
sed -i "s@http://.*security.ubuntu.com@https://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list; \
# Change application source from deb.debian.org to aliyun source
sed -i 's/ports.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list; \
fi;
###########################################################################
@@ -199,15 +198,6 @@ COPY ./crontab /etc/cron.d
RUN chmod -R 644 /etc/cron.d
###########################################################################
# Certificate Authorities
###########################################################################
USER root
COPY ./ca-certificates/* /usr/local/share/ca-certificates/
RUN update-ca-certificates
###########################################################################
# Drush:
###########################################################################
@@ -337,18 +327,13 @@ RUN set -eux; \
USER root
ARG INSTALL_XDEBUG=false
ARG XDEBUG_PORT=9003
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
# 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 \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
pecl install xdebug-3.2.1; \
else \
pecl install xdebug-3.1.6; \
fi; \
pecl install xdebug-3.1.2; \
else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \
@@ -366,10 +351,10 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# ADD for REMOTE debugging
COPY ./xdebug.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini
RUN 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 \
RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=${XDEBUG_PORT}/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=9003/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
@@ -390,10 +375,12 @@ USER root
ARG INSTALL_PCOV=false
RUN if [ ${INSTALL_PCOV} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; }; then \
pecl install pcov && \
echo "extension=pcov.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini && \
echo "pcov.enabled" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
if [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; then \
pecl install pcov && \
echo "extension=pcov.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini && \
echo "pcov.enabled" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \
;fi \
;fi \
;fi
@@ -483,18 +470,13 @@ ARG INSTALL_AMQP=false
RUN if [ ${INSTALL_AMQP} = true ]; then \
apt-get install -yqq librabbitmq-dev && \
if [ ${LARADOCK_PHP_VERSION} = "7.3" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.2" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.0" ] \
|| [ ${LARADOCK_PHP_VERSION} = "5.6" ]; then \
printf "\n" | pecl install amqp-1.11.0; \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \
printf "\n" | pecl install amqp-1.11.0beta; \
else \
printf "\n" | pecl install amqp; \
fi && \
echo "extension=amqp.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/amqp.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/amqp.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-amqp.ini && \
php -m | grep -oiE '^amqp$' \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/amqp.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-amqp.ini \
;fi
###########################################################################
@@ -541,11 +523,7 @@ ARG INSTALL_GEARMAN=false
RUN if [ ${INSTALL_GEARMAN} = true ]; then \
add-apt-repository -y ppa:ondrej/pkg-gearman && \
apt-get update && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
apt-get install php${LARADOCK_PHP_VERSION}-gearman -y \
; else \
apt-get install php-gearman -y \
;fi \
apt-get -yqq install php-gearman \
;fi
###########################################################################
@@ -555,8 +533,7 @@ RUN if [ ${INSTALL_GEARMAN} = true ]; then \
ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
apt-get update \
&& apt-get install -yqq php${LARADOCK_PHP_VERSION}-redis \
apt-get install -yqq php${LARADOCK_PHP_VERSION}-redis \
;fi
###########################################################################
@@ -574,8 +551,6 @@ RUN set -eux; \
echo '' | pecl -q install swoole-4.3.5; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "1" ]; then \
echo '' | pecl -q install swoole-4.5.11; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \
echo '' | pecl -q install swoole-4.8.12; \
else \
echo '' | pecl -q install swoole; \
fi; \
@@ -697,13 +672,7 @@ RUN if [ ${INSTALL_GRAPHVIZ} = true ]; then \
ARG INSTALL_IONCUBE=false
RUN if [ ${INSTALL_IONCUBE} = true ]; then \
if [ ${LARADOCK_PHP_VERSION} = "8.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.4" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.3" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.2" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.1" ] \
|| [ ${LARADOCK_PHP_VERSION} = "7.0" ] \
|| [ ${LARADOCK_PHP_VERSION} = "5.6" ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \
# Install the php ioncube loader
curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \
&& tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \
@@ -744,7 +713,6 @@ ARG INSTALL_NPM_GULP=false
ARG INSTALL_NPM_BOWER=false
ARG INSTALL_NPM_VUE_CLI=false
ARG INSTALL_NPM_ANGULAR_CLI=false
ARG INSTALL_NPM_CHECK_UPDATES_CLI=false
ARG NPM_REGISTRY
ENV NPM_REGISTRY ${NPM_REGISTRY}
ARG NPM_FETCH_RETRIES
@@ -762,12 +730,11 @@ 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/nvm-sh/nvm/v0.39.2/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} \
&& nvm alias ${NODE_VERSION} \
&& npm cache clear --force \
&& npm config set fetch-retries ${NPM_FETCH_RETRIES} \
&& npm config set fetch-retry-factor ${NPM_FETCH_RETRY_FACTOR} \
&& npm config set fetch-retry-mintimeout ${NPM_FETCH_RETRY_MINTIMEOUT} \
@@ -787,9 +754,7 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
&& if [ ${INSTALL_NPM_ANGULAR_CLI} = true ]; then \
npm install -g @angular/cli \
;fi \
&& if [ ${INSTALL_NPM_CHECK_UPDATES_CLI} = true ]; then \
npm install -g npm-check-updates \
;fi \
&& ln -s `npm bin --global` /home/laradock/.node-bin \
;fi
# Wouldn't execute when added to the RUN statement in the above block
@@ -809,6 +774,9 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
;fi
# Add PATH for node
ENV PATH $PATH:/home/laradock/.node-bin
# Make it so the node modules can be executed with 'docker-compose exec'
# We'll create symbolic links into '/usr/local/bin'.
RUN if [ ${INSTALL_NODE} = true ]; then \
@@ -836,16 +804,11 @@ COPY ./.npmrc /home/laradock/.npmrc
# PNPM:
###########################################################################
USER root
USER laradock
ARG INSTALL_PNPM=false
ENV PNPM_HOME="/home/laradock/.local/share/pnpm"
ENV PATH $PATH:/home/laradock/.local/share/pnpm
RUN if [ ${INSTALL_PNPM} = true ]; then \
echo "" >> ~/.bashrc && \
echo 'export PNPM_HOME="/home/laradock/.local/share/pnpm"' >> ~/.bashrc && \
echo 'export PATH="$PNPM_HOME:$PATH"' >> ~/.bashrc && \
npx pnpm add -g pnpm \
;fi
@@ -935,17 +898,13 @@ RUN set -xe; \
USER root
ARG INSTALL_OCI8=false
ARG ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/the-paulus/oracle-instantclient/raw/master/
ARG ORACLE_INSTANT_CLIENT_ARCH=x86_64
ARG ORACLE_INSTANT_CLIENT_MAJOR=18
ARG ORACLE_INSTANT_CLIENT_MINOR=3
ARG ORACLE_INSTANT_CLIENT_MIRROR=https://github.com/diogomascarenha/oracle-instantclient/raw/master/
ENV ORACLE_INSTANT_CLIENT_VERSION=${ORACLE_INSTANT_CLIENT_MAJOR}_${ORACLE_INSTANT_CLIENT_MINOR}
ENV LD_LIBRARY_PATH="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_HOME="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_LIB_DIR="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}"
ENV OCI_INCLUDE_DIR="/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/sdk/include"
ENV OCI_VERSION=${ORACLE_INSTANT_CLIENT_MAJOR}
ENV LD_LIBRARY_PATH="/opt/oracle/instantclient_12_1"
ENV OCI_HOME="/opt/oracle/instantclient_12_1"
ENV OCI_LIB_DIR="/opt/oracle/instantclient_12_1"
ENV OCI_INCLUDE_DIR="/opt/oracle/instantclient_12_1/sdk/include"
ENV OCI_VERSION=12
RUN if [ ${INSTALL_OCI8} = true ]; then \
# Install wget
@@ -953,13 +912,13 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
# Install Oracle Instantclient
&& mkdir /opt/oracle \
&& cd /opt/oracle \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-basic-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-sdk-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip \
&& unzip /opt/oracle/instantclient-basic-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip -d /opt/oracle \
&& unzip /opt/oracle/instantclient-sdk-linux.${ORACLE_INSTANT_CLIENT_ARCH}-${ORACLE_INSTANT_CLIENT_VERSION}.zip -d /opt/oracle \
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntsh.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntsh.so ; fi\
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntshcore.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libclntshcore.so ; fi \
&& if [ ${OCI_VERSION} -lt 18 ] ; then ln -s /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libocci.so.${ORACLE_INSTANT_CLIENT_MAJOR}.${ORACLE_INSTANT_CLIENT_MINOR} /opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/libocci.so ; fi \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-basic-linux.x64-12.1.0.2.0.zip \
&& wget ${ORACLE_INSTANT_CLIENT_MIRROR}instantclient-sdk-linux.x64-12.1.0.2.0.zip \
&& unzip /opt/oracle/instantclient-basic-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& unzip /opt/oracle/instantclient-sdk-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& ln -s /opt/oracle/instantclient_12_1/libclntsh.so.12.1 /opt/oracle/instantclient_12_1/libclntsh.so \
&& ln -s /opt/oracle/instantclient_12_1/libclntshcore.so.12.1 /opt/oracle/instantclient_12_1/libclntshcore.so \
&& ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so \
&& rm -rf /opt/oracle/*.zip \
# Install PHP extensions deps
&& apt-get update \
@@ -967,15 +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_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.0.12; \
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_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.2.0; \
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_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.0.1; \
elif [ $(php -r "echo PHP_MAJOR_VERSION . PHP_MINOR_VERSION;") = "81" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.2.1; \
echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-3.0.1; \
else \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8; \
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' \
@@ -1013,7 +970,6 @@ ARG INSTALL_LARAVEL_ENVOY=false
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
# Install the Laravel Envoy
composer global config --no-plugins allow-plugins.kylekatarnls/update-helper true && \
composer global require laravel/envoy \
;fi
@@ -1116,7 +1072,7 @@ RUN set -eux; \
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
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 msodbcsql18 mssql-tools18 unixodbc unixodbc-dev libgss3 odbcinst locales && \
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 && \
@@ -1129,8 +1085,6 @@ RUN set -eux; \
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 \
;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "70400" ]; then \
pecl install pdo_sqlsrv-5.10.1 sqlsrv-5.10.1 \
;else \
pecl install pdo_sqlsrv sqlsrv \
;fi && \
@@ -1185,7 +1139,7 @@ RUN if [ ${INSTALL_SYMFONY} = true ]; then \
mkdir -p /usr/local/bin \
&& apt-get -y install sudo wget \
&& wget --quiet https://get.symfony.com/cli/installer -O - | bash \
&& mv /root/.symfony5/bin/symfony /usr/local/bin/symfony \
&& mv /root/.symfony/bin/symfony /usr/local/bin/symfony \
&& chmod a+x /usr/local/bin/symfony \
;fi
@@ -1318,7 +1272,6 @@ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
USER root
ARG INSTALL_PG_CLIENT=false
ARG PG_CLIENT_VERSION
RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
# Install the pgsql client
@@ -1326,7 +1279,7 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
&& wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list \
&& apt-get update \
&& apt-get -y install postgresql-client-${PG_CLIENT_VERSION} \
&& apt-get -y install postgresql-client-12 \
;fi
###########################################################################
@@ -1344,7 +1297,6 @@ RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 xvfb \
gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi \
xfonts-base xfonts-scalable x11-apps \
fonts-ipafont \
&& wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
&& dpkg -i --force-depends google-chrome-stable_current_amd64.deb \
&& apt-get -y -f install \
@@ -1365,30 +1317,22 @@ ARG LARADOCK_PHALCON_VERSION
ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
RUN if [ $INSTALL_PHALCON = true ]; then \
apt-get update -yqq \
&& pecl channel-update pecl.php.net \
&& apt-get install -yqq libpcre3-dev; \
pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
echo "extension=phalcon.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini; \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/50-phalcon.ini; \
php -m | grep -q 'phalcon' \
;fi
###########################################################################
# APCU:
###########################################################################
ARG INSTALL_APCU=false
RUN if [ ${INSTALL_APCU} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install apcu-4.0.11; \
else \
pecl install apcu; \
fi && \
echo "extension=apcu.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/apcu.ini; \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/apcu.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/50-apcu.ini; \
php -m | grep -q 'apcu' \
apt-get update && apt-get install -yqq unzip libpcre3-dev gcc make re2c git automake autoconf\
&& 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${LARADOCK_PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${LARADOCK_PHALCON_VERSION}/build \
&& ./install \
&& echo "extension=psr.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini \
&& echo "extension=phalcon.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-phalcon.ini \
&& rm -rf /tmp/cphalcon* \
;fi
###########################################################################
@@ -1489,17 +1433,6 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
&& make install \
;fi
#####################################
# poppler-utils:
#####################################
USER root
ARG INSTALL_POPPLER_UTILS=false
RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
apt-get -y install poppler-utils antiword \
;fi
#####################################
# wkhtmltopdf:
#####################################
@@ -1507,11 +1440,9 @@ RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
USER root
ARG INSTALL_WKHTMLTOPDF=false
ARG WKHTMLTOPDF_VERSION=0.12.6-1
RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \
ARCH=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) \
&& apt-get install -y \
apt-get install -y \
libxrender1 \
libfontconfig1 \
libx11-dev \
@@ -1522,8 +1453,8 @@ RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \
xfonts-base \
xfonts-75dpi \
wget \
&& wget "https://github.com/wkhtmltopdf/packaging/releases/download/${WKHTMLTOPDF_VERSION}/wkhtmltox_${WKHTMLTOPDF_VERSION}.focal_${ARCH}.deb" \
&& dpkg -i "wkhtmltox_${WKHTMLTOPDF_VERSION}.focal_${ARCH}.deb" \
&& wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb \
&& dpkg -i wkhtmltox_0.12.6-1.bionic_amd64.deb \
&& apt -f install \
;fi
@@ -1591,7 +1522,6 @@ ARG INSTALL_PROTOC=false
ARG PROTOC_VERSION
RUN if [ ${INSTALL_PROTOC} = true ]; then \
apt-get -yqq install sudo wget unzip && \
if [ ${PROTOC_VERSION} = "latest" ]; then \
REAL_PROTOC_VERSION=$(curl -s https://api.github.com/repos/protocolbuffers/protobuf/releases/latest | \
sed -nr 's/.*"tag_name":\s?"v(.+?)".*/\1/p'); \
@@ -1599,10 +1529,10 @@ RUN if [ ${INSTALL_PROTOC} = true ]; then \
REAL_PROTOC_VERSION=${PROTOC_VERSION}; \
fi && \
PROTOC_ZIP=protoc-${REAL_PROTOC_VERSION}-linux-x86_64.zip; \
wget https://github.com/protocolbuffers/protobuf/releases/download/v${REAL_PROTOC_VERSION}/${PROTOC_ZIP} && \
unzip -q -o ${PROTOC_ZIP} -d /usr/local bin/protoc && \
unzip -q -o ${PROTOC_ZIP} -d /usr/local 'include/*' && \
rm -f ${PROTOC_ZIP} && \
curl -L -o /tmp/protoc.zip https://github.com/protocolbuffers/protobuf/releases/download/v${REAL_PROTOC_VERSION}/${PROTOC_ZIP} && \
unzip -q -o /tmp/protoc.zip -d /usr/local bin/protoc && \
unzip -q -o /tmp/protoc.zip -d /usr/local 'include/*' && \
rm -f /tmp/protoc.zip && \
chmod +x /usr/local/bin/protoc && \
chmod -R +r /usr/local/include/google \
;fi
@@ -1630,7 +1560,7 @@ ARG SHELL_OH_MY_ZSH_ALIASES=false
USER laradock
RUN if [ ${SHELL_OH_MY_ZSH} = true ]; then \
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh) --keep-zshrc" && \
sed -i -r 's/^plugins=\(.*?\)$/plugins=(laravel composer)/' /home/laradock/.zshrc && \
sed -i -r 's/^plugins=\(.*?\)$/plugins=(laravel5)/' /home/laradock/.zshrc && \
echo '\n\
bindkey "^[OB" down-line-or-search\n\
bindkey "^[OC" forward-char\n\
@@ -1803,65 +1733,6 @@ RUN if [ ${INSTALL_ZMQ} = true ]; then \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/zmq.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-zmq.ini \
;fi
############################################################################
## Event:
############################################################################
USER root
ARG INSTALL_EVENT=false
RUN set -eux; \
if [ ${INSTALL_EVENT} = true ]; then \
curl -L -o /tmp/libevent.tar.gz https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz &&\
mkdir -p /tmp/libevent-php &&\
tar -C /tmp/libevent-php -zxvf /tmp/libevent.tar.gz --strip 1 &&\
cd /tmp/libevent-php &&\
./configure --prefix=/usr/local/libevent-2.1.12 &&\
make &&\
make install &&\
rm /tmp/libevent.tar.gz &&\
if [ ! -f /etc/php/${LARADOCK_PHP_VERSION}/mods-available/sockets.ini ]; then\
echo "extension=sockets.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/sockets.ini; \
fi &&\
ln -sf /etc/php/${LARADOCK_PHP_VERSION}/mods-available/sockets.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-sockets.ini && \
curl -L -o /tmp/event.tar.gz http://pecl.php.net/get/event-3.0.6.tgz &&\
mkdir -p /tmp/event-php &&\
tar -C /tmp/event-php -zxvf /tmp/event.tar.gz --strip 1 &&\
cd /tmp/event-php &&\
phpize &&\
./configure --with-event-libevent-dir=/usr/local/libevent-2.1.12/ &&\
make &&\
make install &&\
rm /tmp/event.tar.gz &&\
echo "extension=event.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/event.ini && \
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/event.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-event.ini && \
php -m | grep -q 'event' \
;fi
###########################################################################
# DNS utilities:
###########################################################################
USER root
ARG INSTALL_DNSUTILS=false
RUN if [ ${INSTALL_DNSUTILS} = true ]; then \
apt-get update && apt-get install -y dnsutils \
;fi
###########################################################################
# Java Development Kit:
###########################################################################
ARG INSTALL_JDK=false
RUN if [ ${INSTALL_JDK} = true ]; then \
apt-get update \
&& apt-get install -y default-jdk ca-certificates-java \
&& update-ca-certificates -f \
;fi
#
#--------------------------------------------------------------------------
# Final Touch
@@ -1873,7 +1744,7 @@ USER root
# Clean up
RUN apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
rm -f /var/log/lastlog /var/log/faillog
rm /var/log/lastlog /var/log/faillog
# Set default work directory
WORKDIR /var/www

View File

@@ -148,14 +148,3 @@ function fs() {
du $arg .[^.]* ./*;
fi;
}
# Add artisan autocomplete
function _artisan()
{
COMP_WORDBREAKS=${COMP_WORDBREAKS//:}
COMMANDS=`php artisan --raw --no-ansi list | sed "s/[[:space:]].*//g"`
COMPREPLY=(`compgen -W "$COMMANDS" -- "${COMP_WORDS[COMP_CWORD]}"`)
return 0
}
complete -F _artisan art
complete -F _artisan artisan