Merge branch 'master' into fix_xhprof_version
This commit is contained in:
commit
76b046f321
9
.devcontainer/devcontainer.example.json
Normal file
9
.devcontainer/devcontainer.example.json
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"name": "Laradock",
|
||||||
|
"dockerComposeFile": ["../docker-compose.yml"],
|
||||||
|
"runServices": ["nginx", "postgres", "pgadmin"],
|
||||||
|
"service": "workspace",
|
||||||
|
"workspaceFolder": "/var/www",
|
||||||
|
"shutdownAction": "stopCompose",
|
||||||
|
"postCreateCommand": "uname -a"
|
||||||
|
}
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -13,4 +13,7 @@
|
|||||||
/nginx/ssl/*.key
|
/nginx/ssl/*.key
|
||||||
/nginx/ssl/*.csr
|
/nginx/ssl/*.csr
|
||||||
|
|
||||||
|
/.devcontainer/*
|
||||||
|
!/.devcontainer/devcontainer.example.json
|
||||||
|
|
||||||
.DS_Store
|
.DS_Store
|
11
.travis.yml
11
.travis.yml
@ -12,20 +12,23 @@ env:
|
|||||||
- PHP_VERSION=7.1 BUILD_SERVICE=workspace
|
- PHP_VERSION=7.1 BUILD_SERVICE=workspace
|
||||||
- PHP_VERSION=7.2 BUILD_SERVICE=workspace
|
- PHP_VERSION=7.2 BUILD_SERVICE=workspace
|
||||||
- PHP_VERSION=7.3 BUILD_SERVICE=workspace
|
- PHP_VERSION=7.3 BUILD_SERVICE=workspace
|
||||||
|
- PHP_VERSION=7.4 BUILD_SERVICE=workspace
|
||||||
|
|
||||||
- PHP_VERSION=5.6 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=5.6 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=7.0 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=7.0 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=7.1 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=7.1 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=7.2 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=7.2 BUILD_SERVICE=php-fpm
|
||||||
- PHP_VERSION=7.3 BUILD_SERVICE=php-fpm
|
- PHP_VERSION=7.3 BUILD_SERVICE=php-fpm
|
||||||
|
- PHP_VERSION=7.4 BUILD_SERVICE=php-fpm
|
||||||
|
|
||||||
- PHP_VERSION=hhvm BUILD_SERVICE=hhvm
|
- PHP_VERSION=hhvm BUILD_SERVICE=hhvm
|
||||||
|
|
||||||
# - PHP_VERSION=5.6 BUILD_SERVICE=php-worker
|
# - PHP_VERSION=5.6 BUILD_SERVICE=php-worker
|
||||||
- PHP_VERSION=7.0 BUILD_SERVICE=php-worker
|
- PHP_VERSION=7.0 BUILD_SERVICE="php-worker laravel-horizon"
|
||||||
- PHP_VERSION=7.1 BUILD_SERVICE=php-worker
|
- PHP_VERSION=7.1 BUILD_SERVICE="php-worker laravel-horizon"
|
||||||
- PHP_VERSION=7.2 BUILD_SERVICE=php-worker
|
- PHP_VERSION=7.2 BUILD_SERVICE="php-worker laravel-horizon"
|
||||||
- PHP_VERSION=7.3 BUILD_SERVICE=php-worker
|
- PHP_VERSION=7.3 BUILD_SERVICE="php-worker laravel-horizon"
|
||||||
|
- PHP_VERSION=7.4 BUILD_SERVICE="php-worker laravel-horizon"
|
||||||
|
|
||||||
- PHP_VERSION=NA BUILD_SERVICE=solr
|
- PHP_VERSION=NA BUILD_SERVICE=solr
|
||||||
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"
|
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"
|
||||||
|
@ -76,7 +76,7 @@ docker-compose exec mysql bash
|
|||||||
*Example: enter to MySQL prompt within MySQL container*
|
*Example: enter to MySQL prompt within MySQL container*
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker-compose exec mysql mysql -u homestead -psecret
|
docker-compose exec mysql mysql -udefault -psecret
|
||||||
```
|
```
|
||||||
|
|
||||||
3 - To exit a container, type `exit`.
|
3 - To exit a container, type `exit`.
|
||||||
@ -536,7 +536,7 @@ Note: Should add `--user=laradock` (example `docker-compose exec --user=laradock
|
|||||||
php artisan
|
php artisan
|
||||||
```
|
```
|
||||||
```bash
|
```bash
|
||||||
Composer update
|
composer update
|
||||||
```
|
```
|
||||||
```bash
|
```bash
|
||||||
phpunit
|
phpunit
|
||||||
@ -650,7 +650,7 @@ docker-compose up -d metabase
|
|||||||
|
|
||||||
1) Boot the container `docker-compose up -d jenkins`. To enter the container type `docker-compose exec jenkins bash`.
|
1) Boot the container `docker-compose up -d jenkins`. To enter the container type `docker-compose exec jenkins bash`.
|
||||||
|
|
||||||
2) Go to `http://localhost:8090/` (if you didn't chanhed your default port mapping)
|
2) Go to `http://localhost:8090/` (if you didn't change your default port mapping)
|
||||||
|
|
||||||
3) Authenticate from the web app.
|
3) Authenticate from the web app.
|
||||||
|
|
||||||
@ -1044,6 +1044,7 @@ _Note: You can customize the port on which beanstalkd console is listening by ch
|
|||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Use-Confluence"></a>
|
<a name="Use-Confluence"></a>
|
||||||
|
|
||||||
## Use Confluence
|
## Use Confluence
|
||||||
|
|
||||||
1 - Run the Confluence Container (`confluence`) with the `docker-compose up` command. Example:
|
1 - Run the Confluence Container (`confluence`) with the `docker-compose up` command. Example:
|
||||||
@ -1054,10 +1055,19 @@ docker-compose up -d confluence
|
|||||||
|
|
||||||
2 - Open your browser and visit the localhost on port **8090**: `http://localhost:8090`
|
2 - Open your browser and visit the localhost on port **8090**: `http://localhost:8090`
|
||||||
|
|
||||||
**Note:** You can you trial version and then you have to buy a licence to use it.
|
**Note:** Confluence is a licensed application - an evaluation licence can be obtained from Atlassian.
|
||||||
|
|
||||||
You can set custom confluence version in `CONFLUENCE_VERSION`. [Find more info in section 'Versioning'](https://hub.docker.com/r/atlassian/confluence-server/)
|
You can set custom confluence version in `CONFLUENCE_VERSION`. [Find more info in section 'Versioning'](https://hub.docker.com/r/atlassian/confluence-server/)
|
||||||
|
|
||||||
|
|
||||||
|
##### Confluence usage with Nginx and SSL.
|
||||||
|
|
||||||
|
1. Find an instance configuration file in `nginx/sites/confluence.conf.example` and replace sample domain with yours.
|
||||||
|
|
||||||
|
2. Configure ssl keys to your domain.
|
||||||
|
|
||||||
|
Keep in mind that Confluence is still accessible on 8090 anyway.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Use-ElasticSearch"></a>
|
<a name="Use-ElasticSearch"></a>
|
||||||
## Use ElasticSearch
|
## Use ElasticSearch
|
||||||
@ -1575,7 +1585,7 @@ The default username and password for the root MySQL user are `root` and `root `
|
|||||||
|
|
||||||
1 - Enter the MySQL container: `docker-compose exec mysql bash`.
|
1 - Enter the MySQL container: `docker-compose exec mysql bash`.
|
||||||
|
|
||||||
2 - Enter mysql: `mysql -uroot -proot` for non root access use `mysql -uhomestead -psecret`.
|
2 - Enter mysql: `mysql -uroot -proot` for non root access use `mysql -udefault -psecret`.
|
||||||
|
|
||||||
3 - See all users: `SELECT User FROM mysql.user;`
|
3 - See all users: `SELECT User FROM mysql.user;`
|
||||||
|
|
||||||
@ -1865,6 +1875,27 @@ To install GNU Parallel in the Workspace container
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<a name="Install-Supervisor"></a>
|
||||||
|
## Install Supervisor
|
||||||
|
|
||||||
|
Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.
|
||||||
|
|
||||||
|
(see http://supervisord.org/index.html)
|
||||||
|
|
||||||
|
To install Supervisor in the Workspace container
|
||||||
|
|
||||||
|
1 - Open the `.env` file
|
||||||
|
|
||||||
|
2 - Set `WORKSPACE_INSTALL_SUPERVISOR` and `WORKSPACE_INSTALL_PYTHON` to `true`.
|
||||||
|
|
||||||
|
3 - Re-build the container `docker-compose build workspace` Or `docker-composer up --build -d workspace`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Common-Aliases"></a>
|
<a name="Common-Aliases"></a>
|
||||||
<br>
|
<br>
|
||||||
@ -1973,6 +2004,26 @@ YAML PHP extension allows you to easily parse and create YAML structured data. I
|
|||||||
4 - Re-build the container `docker-compose build php-fpm`<br>
|
4 - Re-build the container `docker-compose build php-fpm`<br>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<a name="Install-AST"></a>
|
||||||
|
## Install AST PHP extension
|
||||||
|
AST exposes the abstract syntax tree generated by PHP 7+. This extension is required by tools such as `Phan`, a static analyzer for PHP.
|
||||||
|
|
||||||
|
1 - Open the `.env` file
|
||||||
|
|
||||||
|
2 - Search for the `WORKSPACE_INSTALL_AST` argument under the Workspace Container
|
||||||
|
|
||||||
|
3 - Set it to `true`
|
||||||
|
|
||||||
|
4 - Re-build the container `docker-compose build workspace`
|
||||||
|
|
||||||
|
**Note** If you need a specific version of AST then search for the `WORKSPACE_AST_VERSION` argument under the Workspace Container and set it to the desired version and continue step 4.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="phpstorm-debugging"></a>
|
<a name="phpstorm-debugging"></a>
|
||||||
## PHPStorm Debugging Guide
|
## PHPStorm Debugging Guide
|
||||||
|
@ -70,6 +70,16 @@ If you want to only execute some command and don't want to enter bash, you can e
|
|||||||
docker-compose run workspace php artisan migrate
|
docker-compose run workspace php artisan migrate
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Prepare for Visual Studio Code remote development
|
||||||
|
|
||||||
|
If you want to use Visual Studio Code for [remote development](https://code.visualstudio.com/docs/remote/containers) directly on your `workspace` container, copy file `devcontainer.example.json` to `devcontainer.json` and customize it (see [devcontainer.json reference](https://code.visualstudio.com/docs/remote/containers#_devcontainerjson-reference) for more options):
|
||||||
|
```
|
||||||
|
cd .devcontainer
|
||||||
|
cp devcontainer.example.json devcontainer.json
|
||||||
|
```
|
||||||
|
|
||||||
|
Then open your `laradock` folder in Visual Studio Code and click on popup button **Reopen in Container**.
|
||||||
|
|
||||||
### Install and configure Laravel
|
### Install and configure Laravel
|
||||||
|
|
||||||
Let's install Laravel's dependencies, add the `.env` file, generate the key and give proper permissions to the cache folder.
|
Let's install Laravel's dependencies, add the `.env` file, generate the key and give proper permissions to the cache folder.
|
||||||
|
@ -12,7 +12,7 @@ Supporting a variety of common services, all pre-configured to provide a full PH
|
|||||||
<a name="features"></a>
|
<a name="features"></a>
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
- Easy switch between PHP versions: 7.3, 7.2, 7.1, 5.6...
|
- Easy switch between PHP versions: 7.4, 7.3, 7.2, 7.1, 5.6...
|
||||||
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
|
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
|
||||||
- Run your own stack: Memcached, HHVM, RabbitMQ...
|
- Run your own stack: Memcached, HHVM, RabbitMQ...
|
||||||
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
|
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
|
||||||
@ -36,7 +36,6 @@ Supporting a variety of common services, all pre-configured to provide a full PH
|
|||||||
<a name="sponsors"></a>
|
<a name="sponsors"></a>
|
||||||
## Sponsors
|
## Sponsors
|
||||||
|
|
||||||
<a href="https://opencollective.com/socketio/sponsor/23/website" target="_blank"><img src="https://opencollective.com/socketio/sponsor/23/avatar.svg"></a>
|
|
||||||
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
|
||||||
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
|
||||||
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
|
||||||
|
@ -156,7 +156,7 @@ Laradock exists thanks to all the people who contribute.
|
|||||||
|
|
||||||
### Code Contributors
|
### Code Contributors
|
||||||
|
|
||||||
<a href="https://github.com/undefined/undefined/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890&button=false" /></a>
|
<a href="https://github.com/laradock/laradock/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890&button=false" /></a>
|
||||||
|
|
||||||
### Financial Contributors
|
### Financial Contributors
|
||||||
|
|
||||||
@ -176,7 +176,6 @@ Contribute and help us sustain the project.
|
|||||||
|
|
||||||
## Sponsors
|
## Sponsors
|
||||||
|
|
||||||
<a href="https://opencollective.com/socketio/sponsor/23/website" target="_blank"><img src="https://opencollective.com/socketio/sponsor/23/avatar.svg"></a>
|
|
||||||
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
|
||||||
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
|
||||||
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
|
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
|
||||||
|
@ -47,6 +47,10 @@ volumes:
|
|||||||
driver: ${VOLUMES_DRIVER}
|
driver: ${VOLUMES_DRIVER}
|
||||||
cassandra:
|
cassandra:
|
||||||
driver: ${VOLUMES_DRIVER}
|
driver: ${VOLUMES_DRIVER}
|
||||||
|
graylog:
|
||||||
|
driver: ${VOLUMES_DRIVER}
|
||||||
|
dind:
|
||||||
|
driver: ${VOLUMES_DRIVER}
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
|
||||||
@ -55,6 +59,7 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./workspace
|
context: ./workspace
|
||||||
args:
|
args:
|
||||||
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
||||||
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
- LARADOCK_PHP_VERSION=${PHP_VERSION}
|
||||||
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
- LARADOCK_PHALCON_VERSION=${PHALCON_VERSION}
|
||||||
- INSTALL_SUBVERSION=${WORKSPACE_INSTALL_SUBVERSION}
|
- INSTALL_SUBVERSION=${WORKSPACE_INSTALL_SUBVERSION}
|
||||||
@ -73,6 +78,7 @@ services:
|
|||||||
- INSTALL_GEARMAN=${WORKSPACE_INSTALL_GEARMAN}
|
- INSTALL_GEARMAN=${WORKSPACE_INSTALL_GEARMAN}
|
||||||
- INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS}
|
- INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS}
|
||||||
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
|
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
|
||||||
|
- NVM_NODEJS_ORG_MIRROR=${WORKSPACE_NVM_NODEJS_ORG_MIRROR}
|
||||||
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
||||||
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
||||||
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
||||||
@ -110,6 +116,8 @@ services:
|
|||||||
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
|
- INSTALL_MYSQL_CLIENT=${WORKSPACE_INSTALL_MYSQL_CLIENT}
|
||||||
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
|
- INSTALL_PING=${WORKSPACE_INSTALL_PING}
|
||||||
- INSTALL_SSHPASS=${WORKSPACE_INSTALL_SSHPASS}
|
- INSTALL_SSHPASS=${WORKSPACE_INSTALL_SSHPASS}
|
||||||
|
- INSTALL_AST=${WORKSPACE_INSTALL_AST}
|
||||||
|
- INSTALL_YAML=${WORKSPACE_INSTALL_YAML}
|
||||||
- INSTALL_MAILPARSE=${WORKSPACE_INSTALL_MAILPARSE}
|
- INSTALL_MAILPARSE=${WORKSPACE_INSTALL_MAILPARSE}
|
||||||
- PUID=${WORKSPACE_PUID}
|
- PUID=${WORKSPACE_PUID}
|
||||||
- PGID=${WORKSPACE_PGID}
|
- PGID=${WORKSPACE_PGID}
|
||||||
@ -117,17 +125,22 @@ services:
|
|||||||
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
|
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
|
||||||
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
|
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
|
||||||
- DRUSH_VERSION=${WORKSPACE_DRUSH_VERSION}
|
- DRUSH_VERSION=${WORKSPACE_DRUSH_VERSION}
|
||||||
|
- AST_VERSION=${WORKSPACE_AST_VERSION}
|
||||||
- TZ=${WORKSPACE_TIMEZONE}
|
- TZ=${WORKSPACE_TIMEZONE}
|
||||||
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
|
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
|
||||||
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
|
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
|
||||||
- INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE}
|
- INSTALL_POWERLINE=${WORKSPACE_INSTALL_POWERLINE}
|
||||||
|
- INSTALL_SUPERVISOR=${WORKSPACE_INSTALL_SUPERVISOR}
|
||||||
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
|
- INSTALL_FFMPEG=${WORKSPACE_INSTALL_FFMPEG}
|
||||||
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
|
- INSTALL_GNU_PARALLEL=${WORKSPACE_INSTALL_GNU_PARALLEL}
|
||||||
- http_proxy
|
- http_proxy
|
||||||
- https_proxy
|
- https_proxy
|
||||||
- no_proxy
|
- no_proxy
|
||||||
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
||||||
|
- UBUNTU_SOURCE=${UBUNTU_SOURCE}
|
||||||
volumes:
|
volumes:
|
||||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
|
||||||
|
- ./php-worker/supervisord.d:/etc/supervisord.d
|
||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "dockerhost:${DOCKER_HOST_IP}"
|
- "dockerhost:${DOCKER_HOST_IP}"
|
||||||
ports:
|
ports:
|
||||||
@ -185,8 +198,10 @@ services:
|
|||||||
- INSTALL_FAKETIME=${PHP_FPM_INSTALL_FAKETIME}
|
- INSTALL_FAKETIME=${PHP_FPM_INSTALL_FAKETIME}
|
||||||
- INSTALL_IONCUBE=${PHP_FPM_INSTALL_IONCUBE}
|
- INSTALL_IONCUBE=${PHP_FPM_INSTALL_IONCUBE}
|
||||||
- INSTALL_APCU=${PHP_FPM_INSTALL_APCU}
|
- INSTALL_APCU=${PHP_FPM_INSTALL_APCU}
|
||||||
|
- INSTALL_CACHETOOL=${PHP_FPM_INSTALL_CACHETOOL}
|
||||||
- INSTALL_YAML=${PHP_FPM_INSTALL_YAML}
|
- INSTALL_YAML=${PHP_FPM_INSTALL_YAML}
|
||||||
- INSTALL_RDKAFKA=${PHP_FPM_INSTALL_RDKAFKA}
|
- INSTALL_RDKAFKA=${PHP_FPM_INSTALL_RDKAFKA}
|
||||||
|
- INSTALL_GETTEXT=${PHP_FPM_INSTALL_GETTEXT}
|
||||||
- INSTALL_ADDITIONAL_LOCALES=${PHP_FPM_INSTALL_ADDITIONAL_LOCALES}
|
- INSTALL_ADDITIONAL_LOCALES=${PHP_FPM_INSTALL_ADDITIONAL_LOCALES}
|
||||||
- INSTALL_MYSQL_CLIENT=${PHP_FPM_INSTALL_MYSQL_CLIENT}
|
- INSTALL_MYSQL_CLIENT=${PHP_FPM_INSTALL_MYSQL_CLIENT}
|
||||||
- INSTALL_PING=${PHP_FPM_INSTALL_PING}
|
- INSTALL_PING=${PHP_FPM_INSTALL_PING}
|
||||||
@ -196,6 +211,8 @@ services:
|
|||||||
- ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES}
|
- ADDITIONAL_LOCALES=${PHP_FPM_ADDITIONAL_LOCALES}
|
||||||
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
|
- INSTALL_FFMPEG=${PHP_FPM_FFMPEG}
|
||||||
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
|
- INSTALL_XHPROF=${PHP_FPM_INSTALL_XHPROF}
|
||||||
|
- PUID=${PHP_FPM_PUID}
|
||||||
|
- PGID=${PHP_FPM_PGID}
|
||||||
- http_proxy
|
- http_proxy
|
||||||
- https_proxy
|
- https_proxy
|
||||||
- no_proxy
|
- no_proxy
|
||||||
@ -222,6 +239,7 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./php-worker
|
context: ./php-worker
|
||||||
args:
|
args:
|
||||||
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
||||||
- PHP_VERSION=${PHP_VERSION}
|
- PHP_VERSION=${PHP_VERSION}
|
||||||
- PHALCON_VERSION=${PHALCON_VERSION}
|
- PHALCON_VERSION=${PHALCON_VERSION}
|
||||||
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
|
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
|
||||||
@ -255,6 +273,7 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./laravel-horizon
|
context: ./laravel-horizon
|
||||||
args:
|
args:
|
||||||
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
||||||
- PHP_VERSION=${PHP_VERSION}
|
- PHP_VERSION=${PHP_VERSION}
|
||||||
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
|
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
|
||||||
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
||||||
@ -262,6 +281,7 @@ services:
|
|||||||
- INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS}
|
- INSTALL_SOCKETS=${LARAVEL_HORIZON_INSTALL_SOCKETS}
|
||||||
- INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
|
- INSTALL_CASSANDRA=${PHP_FPM_INSTALL_CASSANDRA}
|
||||||
- INSTALL_PHPREDIS=${LARAVEL_HORIZON_INSTALL_PHPREDIS}
|
- INSTALL_PHPREDIS=${LARAVEL_HORIZON_INSTALL_PHPREDIS}
|
||||||
|
- INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
|
||||||
volumes:
|
volumes:
|
||||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||||
- ./laravel-horizon/supervisord.d:/etc/supervisord.d
|
- ./laravel-horizon/supervisord.d:/etc/supervisord.d
|
||||||
@ -277,9 +297,9 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./nginx
|
context: ./nginx
|
||||||
args:
|
args:
|
||||||
|
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
||||||
- PHP_UPSTREAM_CONTAINER=${NGINX_PHP_UPSTREAM_CONTAINER}
|
- PHP_UPSTREAM_CONTAINER=${NGINX_PHP_UPSTREAM_CONTAINER}
|
||||||
- PHP_UPSTREAM_PORT=${NGINX_PHP_UPSTREAM_PORT}
|
- PHP_UPSTREAM_PORT=${NGINX_PHP_UPSTREAM_PORT}
|
||||||
- CHANGE_SOURCE=${CHANGE_SOURCE}
|
|
||||||
- http_proxy
|
- http_proxy
|
||||||
- https_proxy
|
- https_proxy
|
||||||
- no_proxy
|
- no_proxy
|
||||||
@ -498,6 +518,7 @@ services:
|
|||||||
- "${MONGODB_PORT}:27017"
|
- "${MONGODB_PORT}:27017"
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_PATH_HOST}/mongo:/data/db
|
- ${DATA_PATH_HOST}/mongo:/data/db
|
||||||
|
- ${DATA_PATH_HOST}/mongo_config:/data/configdb
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
@ -931,9 +952,9 @@ services:
|
|||||||
- ${GRAYLOG_GELF_TCP_PORT}:12201
|
- ${GRAYLOG_GELF_TCP_PORT}:12201
|
||||||
# GELF UDP
|
# GELF UDP
|
||||||
- ${GRAYLOG_GELF_UDP_PORT}:12201/udp
|
- ${GRAYLOG_GELF_UDP_PORT}:12201/udp
|
||||||
user: root
|
user: graylog
|
||||||
volumes:
|
volumes:
|
||||||
- ./graylog/config:/usr/share/graylog/data/config
|
- ${DATA_PATH_HOST}/graylog:/usr/share/graylog/data
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
@ -1213,6 +1234,7 @@ services:
|
|||||||
privileged: true
|
privileged: true
|
||||||
volumes:
|
volumes:
|
||||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||||
|
- ${DATA_PATH_HOST}/dind:/var/lib/docker
|
||||||
expose:
|
expose:
|
||||||
- 2375
|
- 2375
|
||||||
networks:
|
networks:
|
||||||
|
16
env-example
16
env-example
@ -37,7 +37,8 @@ COMPOSE_PROJECT_NAME=laradock
|
|||||||
|
|
||||||
### PHP Version ###########################################
|
### PHP Version ###########################################
|
||||||
|
|
||||||
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 7.3 - 7.2 - 7.1 - 7.0 - 5.6
|
# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).
|
||||||
|
# Accepted values: 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
|
||||||
PHP_VERSION=7.3
|
PHP_VERSION=7.3
|
||||||
|
|
||||||
### Phalcon Version ###########################################
|
### Phalcon Version ###########################################
|
||||||
@ -69,6 +70,8 @@ COMPOSE_CONVERT_WINDOWS_PATHS=1
|
|||||||
|
|
||||||
# If you need to change the sources (i.e. to China), set CHANGE_SOURCE to true
|
# If you need to change the sources (i.e. to China), set CHANGE_SOURCE to true
|
||||||
CHANGE_SOURCE=false
|
CHANGE_SOURCE=false
|
||||||
|
# Set CHANGE_SOURCE and UBUNTU_SOURCE option if you want to change the Ubuntu system sources.list file.
|
||||||
|
UBUNTU_SOURCE=aliyun
|
||||||
|
|
||||||
### Docker Sync ###########################################
|
### Docker Sync ###########################################
|
||||||
|
|
||||||
@ -84,6 +87,7 @@ DOCKER_SYNC_STRATEGY=native_osx
|
|||||||
WORKSPACE_COMPOSER_GLOBAL_INSTALL=true
|
WORKSPACE_COMPOSER_GLOBAL_INSTALL=true
|
||||||
WORKSPACE_COMPOSER_AUTH=false
|
WORKSPACE_COMPOSER_AUTH=false
|
||||||
WORKSPACE_COMPOSER_REPO_PACKAGIST=
|
WORKSPACE_COMPOSER_REPO_PACKAGIST=
|
||||||
|
WORKSPACE_NVM_NODEJS_ORG_MIRROR=
|
||||||
WORKSPACE_INSTALL_NODE=true
|
WORKSPACE_INSTALL_NODE=true
|
||||||
WORKSPACE_NODE_VERSION=node
|
WORKSPACE_NODE_VERSION=node
|
||||||
WORKSPACE_NPM_REGISTRY=
|
WORKSPACE_NPM_REGISTRY=
|
||||||
@ -124,6 +128,7 @@ WORKSPACE_INSTALL_MC=false
|
|||||||
WORKSPACE_INSTALL_SYMFONY=false
|
WORKSPACE_INSTALL_SYMFONY=false
|
||||||
WORKSPACE_INSTALL_PYTHON=false
|
WORKSPACE_INSTALL_PYTHON=false
|
||||||
WORKSPACE_INSTALL_POWERLINE=false
|
WORKSPACE_INSTALL_POWERLINE=false
|
||||||
|
WORKSPACE_INSTALL_SUPERVISOR=false
|
||||||
WORKSPACE_INSTALL_IMAGE_OPTIMIZERS=false
|
WORKSPACE_INSTALL_IMAGE_OPTIMIZERS=false
|
||||||
WORKSPACE_INSTALL_IMAGEMAGICK=false
|
WORKSPACE_INSTALL_IMAGEMAGICK=false
|
||||||
WORKSPACE_INSTALL_TERRAFORM=false
|
WORKSPACE_INSTALL_TERRAFORM=false
|
||||||
@ -139,6 +144,7 @@ WORKSPACE_INSTALL_PING=false
|
|||||||
WORKSPACE_INSTALL_SSHPASS=false
|
WORKSPACE_INSTALL_SSHPASS=false
|
||||||
WORKSPACE_INSTALL_INOTIFY=false
|
WORKSPACE_INSTALL_INOTIFY=false
|
||||||
WORKSPACE_INSTALL_FSWATCH=false
|
WORKSPACE_INSTALL_FSWATCH=false
|
||||||
|
WORKSPACE_INSTALL_YAML=false
|
||||||
WORKSPACE_INSTALL_MAILPARSE=false
|
WORKSPACE_INSTALL_MAILPARSE=false
|
||||||
WORKSPACE_PUID=1000
|
WORKSPACE_PUID=1000
|
||||||
WORKSPACE_PGID=1000
|
WORKSPACE_PGID=1000
|
||||||
@ -147,6 +153,8 @@ WORKSPACE_TIMEZONE=UTC
|
|||||||
WORKSPACE_SSH_PORT=2222
|
WORKSPACE_SSH_PORT=2222
|
||||||
WORKSPACE_INSTALL_FFMPEG=false
|
WORKSPACE_INSTALL_FFMPEG=false
|
||||||
WORKSPACE_INSTALL_GNU_PARALLEL=false
|
WORKSPACE_INSTALL_GNU_PARALLEL=false
|
||||||
|
WORKSPACE_INSTALL_AST=true
|
||||||
|
WORKSPACE_AST_VERSION=1.0.3
|
||||||
|
|
||||||
### PHP_FPM ###############################################
|
### PHP_FPM ###############################################
|
||||||
|
|
||||||
@ -186,8 +194,10 @@ PHP_FPM_INSTALL_CALENDAR=false
|
|||||||
PHP_FPM_INSTALL_FAKETIME=false
|
PHP_FPM_INSTALL_FAKETIME=false
|
||||||
PHP_FPM_INSTALL_IONCUBE=false
|
PHP_FPM_INSTALL_IONCUBE=false
|
||||||
PHP_FPM_INSTALL_RDKAFKA=false
|
PHP_FPM_INSTALL_RDKAFKA=false
|
||||||
|
PHP_FPM_INSTALL_GETTEXT=false
|
||||||
PHP_FPM_FAKETIME=-0
|
PHP_FPM_FAKETIME=-0
|
||||||
PHP_FPM_INSTALL_APCU=false
|
PHP_FPM_INSTALL_APCU=false
|
||||||
|
PHP_FPM_INSTALL_CACHETOOL=false
|
||||||
PHP_FPM_INSTALL_YAML=false
|
PHP_FPM_INSTALL_YAML=false
|
||||||
PHP_FPM_INSTALL_ADDITIONAL_LOCALES=false
|
PHP_FPM_INSTALL_ADDITIONAL_LOCALES=false
|
||||||
PHP_FPM_INSTALL_MYSQL_CLIENT=false
|
PHP_FPM_INSTALL_MYSQL_CLIENT=false
|
||||||
@ -197,6 +207,9 @@ PHP_FPM_INSTALL_MAILPARSE=false
|
|||||||
PHP_FPM_FFMPEG=false
|
PHP_FPM_FFMPEG=false
|
||||||
PHP_FPM_ADDITIONAL_LOCALES="es_ES.UTF-8 fr_FR.UTF-8"
|
PHP_FPM_ADDITIONAL_LOCALES="es_ES.UTF-8 fr_FR.UTF-8"
|
||||||
|
|
||||||
|
PHP_FPM_PUID=1000
|
||||||
|
PHP_FPM_PGID=1000
|
||||||
|
|
||||||
### PHP_WORKER ############################################
|
### PHP_WORKER ############################################
|
||||||
|
|
||||||
PHP_WORKER_INSTALL_PGSQL=false
|
PHP_WORKER_INSTALL_PGSQL=false
|
||||||
@ -232,6 +245,7 @@ NGINX_SSL_PATH=./nginx/ssl/
|
|||||||
|
|
||||||
LARAVEL_HORIZON_INSTALL_SOCKETS=false
|
LARAVEL_HORIZON_INSTALL_SOCKETS=false
|
||||||
LARAVEL_HORIZON_INSTALL_PHPREDIS=true
|
LARAVEL_HORIZON_INSTALL_PHPREDIS=true
|
||||||
|
LARAVEL_HORIZON_INSTALL_MONGO=false
|
||||||
|
|
||||||
### APACHE ################################################
|
### APACHE ################################################
|
||||||
|
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
FROM docker.elastic.co/kibana/kibana:6.6.0
|
FROM docker.elastic.co/kibana/kibana:7.1.1
|
||||||
|
|
||||||
EXPOSE 5601
|
EXPOSE 5601
|
||||||
|
@ -9,6 +9,14 @@ FROM php:${PHP_VERSION}-alpine
|
|||||||
|
|
||||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
|
|
||||||
|
ARG CHANGE_SOURCE=false
|
||||||
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
|
# Change application source from dl-cdn.alpinelinux.org to aliyun source
|
||||||
|
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories \
|
||||||
|
;fi
|
||||||
|
|
||||||
RUN apk --update add wget \
|
RUN apk --update add wget \
|
||||||
curl \
|
curl \
|
||||||
git \
|
git \
|
||||||
@ -74,6 +82,12 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
|
|||||||
&& docker-php-ext-enable cassandra \
|
&& docker-php-ext-enable cassandra \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
# Install MongoDB drivers:
|
||||||
|
ARG INSTALL_MONGO=false
|
||||||
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
|
pecl install mongodb \
|
||||||
|
&& docker-php-ext-enable mongodb \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
|
@ -12,6 +12,8 @@ ENV TZ ${TZ}
|
|||||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && chown -R mysql:root /var/lib/mysql/
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && chown -R mysql:root /var/lib/mysql/
|
||||||
COPY my.cnf /etc/mysql/conf.d/my.cnf
|
COPY my.cnf /etc/mysql/conf.d/my.cnf
|
||||||
|
|
||||||
|
RUN chmod -R 644 /etc/mysql/conf.d/my.cnf
|
||||||
|
|
||||||
CMD ["mysqld"]
|
CMD ["mysqld"]
|
||||||
|
|
||||||
EXPOSE 3306
|
EXPOSE 3306
|
||||||
|
@ -13,6 +13,8 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone &
|
|||||||
|
|
||||||
COPY my.cnf /etc/mysql/conf.d/my.cnf
|
COPY my.cnf /etc/mysql/conf.d/my.cnf
|
||||||
|
|
||||||
|
RUN chmod 0444 /etc/mysql/conf.d/my.cnf
|
||||||
|
|
||||||
CMD ["mysqld"]
|
CMD ["mysqld"]
|
||||||
|
|
||||||
EXPOSE 3306
|
EXPOSE 3306
|
||||||
|
43
nginx/sites/confluence.conf.example
Normal file
43
nginx/sites/confluence.conf.example
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name www.confluence-domain.com;
|
||||||
|
rewrite ^(.*) https://confluence-domain.com$1/ permanent;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name confluence-domain.com;
|
||||||
|
rewrite ^(.*) https://confluence-domain.com/ permanent;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
listen [::]:443 ssl;
|
||||||
|
ssl_certificate /etc/nginx/ssl/confluence-domain.com.crt;
|
||||||
|
ssl_certificate_key /etc/nginx/ssl/confluence-domain.com.key;
|
||||||
|
|
||||||
|
server_name confluence-domain.com;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
client_max_body_size 100m;
|
||||||
|
proxy_set_header X-Forwarded-Host $host;
|
||||||
|
proxy_set_header X-Forwarded-Server $host;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_pass http://confluence-domain.com:8090/;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /synchrony {
|
||||||
|
proxy_set_header X-Forwarded-Host $host;
|
||||||
|
proxy_set_header X-Forwarded-Server $host;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_pass http://confluence-domain.com:8090/synchrony-proxy;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "Upgrade";
|
||||||
|
}
|
||||||
|
|
||||||
|
error_log /var/log/nginx/bookchangerru_error.log;
|
||||||
|
access_log /var/log/nginx/bookchangerru_access.log;
|
||||||
|
}
|
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
ARG LARADOCK_PHP_VERSION
|
ARG LARADOCK_PHP_VERSION
|
||||||
|
|
||||||
FROM laradock/php-fpm:2.5-${LARADOCK_PHP_VERSION}
|
FROM laradock/php-fpm:2.6.1-${LARADOCK_PHP_VERSION}
|
||||||
|
|
||||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
@ -23,10 +23,14 @@ ARG LARADOCK_PHP_VERSION
|
|||||||
# Set Environment Variables
|
# Set Environment Variables
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
|
|
||||||
ARG CHANGE_SOURCE=false
|
ARG CHANGE_SOURCE=false
|
||||||
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
# Change application source from deb.debian.org to aliyun source
|
# Change application source from deb.debian.org to aliyun source
|
||||||
sed -i 's/deb.debian.org/mirrors.aliyun.com/' /etc/apt/sources.list \
|
sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
|
||||||
|
sed -i 's/security.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
|
||||||
|
sed -i 's/security-cdn.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
# always run apt update when start and after add new source list, then clean up at end.
|
# always run apt update when start and after add new source list, then clean up at end.
|
||||||
@ -682,6 +686,17 @@ RUN if [ ${INSTALL_RDKAFKA} = true ]; then \
|
|||||||
docker-php-ext-enable rdkafka \
|
docker-php-ext-enable rdkafka \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# GETTEXT:
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
ARG INSTALL_GETTEXT=false
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_GETTEXT} = true ]; then \
|
||||||
|
apt-get install -y zlib1g-dev libicu-dev g++ libpq-dev libssl-dev gettext && \
|
||||||
|
docker-php-ext-install gettext \
|
||||||
|
;fi
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Install additional locales:
|
# Install additional locales:
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -708,7 +723,11 @@ ARG INSTALL_MYSQL_CLIENT=false
|
|||||||
|
|
||||||
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
|
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
|
||||||
apt-get update -yqq && \
|
apt-get update -yqq && \
|
||||||
|
if [ ${LARADOCK_PHP_VERSION} = "7.3" ]; then \
|
||||||
|
apt-get -y install default-mysql-client \
|
||||||
|
;else \
|
||||||
apt-get -y install mysql-client \
|
apt-get -y install mysql-client \
|
||||||
|
;fi \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -763,6 +782,22 @@ RUN if [ ${INSTALL_MAILPARSE} = true ]; then \
|
|||||||
&& docker-php-ext-enable mailparse \
|
&& docker-php-ext-enable mailparse \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# CacheTool:
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
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 http://gordalina.github.io/cachetool/downloads/cachetool.phar; \
|
||||||
|
else \
|
||||||
|
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 \
|
||||||
|
;fi
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Check PHP version:
|
# Check PHP version:
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -785,7 +820,14 @@ RUN apt-get clean && \
|
|||||||
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
|
||||||
rm /var/log/lastlog /var/log/faillog
|
rm /var/log/lastlog /var/log/faillog
|
||||||
|
|
||||||
RUN usermod -u 1000 www-data
|
# Configure non-root user.
|
||||||
|
ARG PUID=1000
|
||||||
|
ENV PUID ${PUID}
|
||||||
|
ARG PGID=1000
|
||||||
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
RUN groupmod -o -g ${PGID} www-data && \
|
||||||
|
usermod -o -u ${PUID} -g www-data www-data
|
||||||
|
|
||||||
# Adding the faketime library to the preload file needs to be done last
|
# Adding the faketime library to the preload file needs to be done last
|
||||||
# otherwise it will preload it for all commands that follow in this file
|
# otherwise it will preload it for all commands that follow in this file
|
||||||
|
@ -9,6 +9,14 @@ FROM php:${PHP_VERSION}-alpine
|
|||||||
|
|
||||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
|
|
||||||
|
ARG CHANGE_SOURCE=false
|
||||||
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
|
# Change application source from dl-cdn.alpinelinux.org to aliyun source
|
||||||
|
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories \
|
||||||
|
;fi
|
||||||
|
|
||||||
RUN apk --update add wget \
|
RUN apk --update add wget \
|
||||||
curl \
|
curl \
|
||||||
git \
|
git \
|
||||||
@ -66,7 +74,11 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
|
|||||||
# Install MySQL Client:
|
# Install MySQL Client:
|
||||||
ARG INSTALL_MYSQL_CLIENT=false
|
ARG INSTALL_MYSQL_CLIENT=false
|
||||||
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
|
RUN if [ ${INSTALL_MYSQL_CLIENT} = true ]; then \
|
||||||
|
if [ ${PHP_VERSION} = "7.3" ]; then \
|
||||||
|
apk --update add default-mysql-client \
|
||||||
|
;else \
|
||||||
apk --update add mysql-client \
|
apk --update add mysql-client \
|
||||||
|
;fi \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
# Install FFMPEG:
|
# Install FFMPEG:
|
||||||
|
@ -5,5 +5,10 @@ LABEL maintainer="Bo-Yi Wu <appleboy.tw@gmail.com>"
|
|||||||
# Add volume for sessions to allow session persistence
|
# Add volume for sessions to allow session persistence
|
||||||
VOLUME /sessions
|
VOLUME /sessions
|
||||||
|
|
||||||
|
RUN echo '' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
|
||||||
|
&& echo '[PHP]' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
|
||||||
|
&& echo 'post_max_size = 2G' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini \
|
||||||
|
&& echo 'upload_max_filesize = 2G' >> /usr/local/etc/php/conf.d/php-phpmyadmin.ini
|
||||||
|
|
||||||
# We expose phpMyAdmin on port 80
|
# We expose phpMyAdmin on port 80
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
# EOSQL
|
# EOSQL
|
||||||
#
|
#
|
||||||
### default database and user for confluence ##############################################
|
### default database and user for confluence ##############################################
|
||||||
if [ "$POSTGRES_CONFLUENCE_INIT" == 'true' ]; then
|
if [ "$CONFLUENCE_POSTGRES_INIT" == 'true' ]; then
|
||||||
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
|
||||||
CREATE USER $POSTGRES_CONFLUENCE_USER WITH PASSWORD '$POSTGRES_CONFLUENCE_PASSWORD';
|
CREATE USER $POSTGRES_CONFLUENCE_USER WITH PASSWORD '$POSTGRES_CONFLUENCE_PASSWORD';
|
||||||
CREATE DATABASE $POSTGRES_CONFLUENCE_DB;
|
CREATE DATABASE $POSTGRES_CONFLUENCE_DB;
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
ARG LARADOCK_PHP_VERSION
|
ARG LARADOCK_PHP_VERSION
|
||||||
|
|
||||||
FROM laradock/workspace:2.5-${LARADOCK_PHP_VERSION}
|
FROM laradock/workspace:2.6.1-${LARADOCK_PHP_VERSION}
|
||||||
|
|
||||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||||
|
|
||||||
@ -23,6 +23,16 @@ ARG LARADOCK_PHP_VERSION
|
|||||||
# Set Environment Variables
|
# Set Environment Variables
|
||||||
ENV DEBIAN_FRONTEND noninteractive
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
# If you're in China, or you need to change sources, will be set CHANGE_SOURCE to true in .env.
|
||||||
|
|
||||||
|
ARG CHANGE_SOURCE=false
|
||||||
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
|
# Change application source from deb.debian.org to aliyun source
|
||||||
|
sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
|
||||||
|
sed -i 's/security.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list && \
|
||||||
|
sed -i 's/security-cdn.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list \
|
||||||
|
;fi
|
||||||
|
|
||||||
# Start as root
|
# Start as root
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
@ -36,6 +46,15 @@ ENV PUID ${PUID}
|
|||||||
ARG PGID=1000
|
ARG PGID=1000
|
||||||
ENV PGID ${PGID}
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
ARG CHANGE_SOURCE=false
|
||||||
|
ARG UBUNTU_SOURCE
|
||||||
|
COPY ./sources.sh /tmp/sources.sh
|
||||||
|
|
||||||
|
RUN if [ ${CHANGE_SOURCE} = true ]; then \
|
||||||
|
/bin/sh -c /tmp/sources.sh && \
|
||||||
|
rm -rf /tmp/sources.sh \
|
||||||
|
;fi
|
||||||
|
|
||||||
# always run apt update when start and after add new source list, then clean up at end.
|
# always run apt update when start and after add new source list, then clean up at end.
|
||||||
RUN set -xe; \
|
RUN set -xe; \
|
||||||
apt-get update -yqq && \
|
apt-get update -yqq && \
|
||||||
@ -520,6 +539,21 @@ RUN if [ ${INSTALL_INOTIFY} = true ]; then \
|
|||||||
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/inotify.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-inotify.ini \
|
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/inotify.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-inotify.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# AST EXTENSION
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
ARG INSTALL_AST=false
|
||||||
|
ARG AST_VERSION=1.0.3
|
||||||
|
ENV AST_VERSION ${AST_VERSION}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_AST} = true ]; then \
|
||||||
|
# Install AST extension
|
||||||
|
printf "\n" | pecl -q install ast-${AST_VERSION} && \
|
||||||
|
echo "extension=ast.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/ast.ini && \
|
||||||
|
phpenmod -v ${LARADOCK_PHP_VERSION} -s cli ast \
|
||||||
|
;fi
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# fswatch
|
# fswatch
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -580,6 +614,7 @@ ARG INSTALL_NPM_ANGULAR_CLI=false
|
|||||||
ARG NPM_REGISTRY
|
ARG NPM_REGISTRY
|
||||||
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
ENV NPM_REGISTRY ${NPM_REGISTRY}
|
||||||
ENV NVM_DIR /home/laradock/.nvm
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
|
ENV NVM_NODEJS_ORG_MIRROR=${NVM_NODEJS_ORG_MIRROR}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_NODE} = true ]; then \
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
# Install nvm (A Node Version Manager)
|
# Install nvm (A Node Version Manager)
|
||||||
@ -777,13 +812,6 @@ RUN if [ ${COMPOSER_REPO_PACKAGIST} ]; then \
|
|||||||
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
composer config -g repo.packagist composer ${COMPOSER_REPO_PACKAGIST} \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
ARG INSTALL_LARAVEL_INSTALLER=false
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
|
||||||
# Install the Laravel Installer
|
|
||||||
composer global require "laravel/installer" \
|
|
||||||
;fi
|
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Deployer:
|
# Deployer:
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -957,6 +985,20 @@ RUN if [ ${INSTALL_POWERLINE} = true ]; then \
|
|||||||
;fi \
|
;fi \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# SUPERVISOR:
|
||||||
|
###########################################################################
|
||||||
|
ARG INSTALL_SUPERVISOR=false
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_SUPERVISOR} = true ]; then \
|
||||||
|
if [ ${INSTALL_PYTHON} = true ]; then \
|
||||||
|
python -m pip install --upgrade supervisor && \
|
||||||
|
echo_supervisord_conf > /etc/supervisord.conf && \
|
||||||
|
sed -i 's/\;\[include\]/\[include\]/g' /etc/supervisord.conf && \
|
||||||
|
sed -i 's/\;files\s.*/files = supervisord.d\/*.conf/g' /etc/supervisord.conf \
|
||||||
|
;fi \
|
||||||
|
;fi
|
||||||
|
|
||||||
USER laradock
|
USER laradock
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -1087,6 +1129,25 @@ RUN if [ ${INSTALL_SSHPASS} = true ]; then \
|
|||||||
apt-get -y install sshpass \
|
apt-get -y install sshpass \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# YAML: extension for PHP-CLI
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_YAML=false
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_YAML} = true ]; then \
|
||||||
|
apt-get install libyaml-dev -y ; \
|
||||||
|
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
|
||||||
|
pecl install -a yaml-1.3.2; \
|
||||||
|
else \
|
||||||
|
pecl install yaml; \
|
||||||
|
fi && \
|
||||||
|
echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini && \
|
||||||
|
ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# FFMpeg:
|
# FFMpeg:
|
||||||
###########################################################################
|
###########################################################################
|
||||||
|
83
workspace/sources.sh
Executable file
83
workspace/sources.sh
Executable file
@ -0,0 +1,83 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -xe;
|
||||||
|
|
||||||
|
if type "tee" 2>/dev/null && [ -n "${UBUNTU_SOURCE}" ]; then
|
||||||
|
SOURCE_PATH="/etc/apt/sources.list"
|
||||||
|
cp ${SOURCE_PATH} ${SOURCE_PATH}.bak && rm -rf ${SOURCE_PATH}
|
||||||
|
case "${UBUNTU_SOURCE}" in
|
||||||
|
"aliyun")
|
||||||
|
tee ${SOURCE_PATH} <<-'EOF'
|
||||||
|
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
"zju")
|
||||||
|
tee ${SOURCE_PATH} <<-'EOF'
|
||||||
|
deb http://mirrors.zju.edu.cn/ubuntu/ bionic main multiverse restricted universe
|
||||||
|
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-backports main multiverse restricted universe
|
||||||
|
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-proposed main multiverse restricted universe
|
||||||
|
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-security main multiverse restricted universe
|
||||||
|
deb http://mirrors.zju.edu.cn/ubuntu/ bionic-updates main multiverse restricted universe
|
||||||
|
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic main multiverse restricted universe
|
||||||
|
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-backports main multiverse restricted universe
|
||||||
|
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-proposed main multiverse restricted universe
|
||||||
|
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-security main multiverse restricted universe
|
||||||
|
deb-src http://mirrors.zju.edu.cn/ubuntu/ bionic-updates main multiverse restricted universe
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
"tsinghua")
|
||||||
|
tee ${SOURCE_PATH} <<-'EOF'
|
||||||
|
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
"163")
|
||||||
|
tee ${SOURCE_PATH} <<-'EOF'
|
||||||
|
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
"ustc")
|
||||||
|
tee ${SOURCE_PATH} <<-'EOF'
|
||||||
|
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
|
||||||
|
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
|
||||||
|
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
|
||||||
|
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
|
||||||
|
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Please check whether there is aliyun|zju|tsinghua|163|ustc in the parameter"
|
||||||
|
exit 1;;
|
||||||
|
esac
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user