Compare commits
179 Commits
Author | SHA1 | Date | |
---|---|---|---|
7c9f9c1ecd | |||
63152e11fa | |||
27c6de1fb1 | |||
70e01125fd | |||
26d7fb01ed | |||
d181a69a73 | |||
106f8ec7af | |||
1951834150 | |||
4c732aa5d6 | |||
c35445b066 | |||
72198ed38c | |||
ab464d93d3 | |||
e56587ec47 | |||
bbea2f0bab | |||
9db39ad36f | |||
f009ba752b | |||
03b551f9d6 | |||
30df311ec2 | |||
262b9f20a3 | |||
3eb8fce4f9 | |||
05f8166bef | |||
1bdf113767 | |||
392960dc98 | |||
26ee54a4ad | |||
7207ccbbeb | |||
6e09e2a774 | |||
0561199914 | |||
430a5f21cf | |||
0290142bf4 | |||
5745a50d15 | |||
18b6c1b907 | |||
4a663649c0 | |||
7c9d7a6de6 | |||
d0e5d50712 | |||
d0c0a8895e | |||
e23ecb6a11 | |||
da60b32a04 | |||
5a47080859 | |||
f296a39bf5 | |||
f04acee6df | |||
992c76d29c | |||
f3a016aa79 | |||
58995966ec | |||
c913c429c0 | |||
d4caddcaed | |||
8d7b3a84be | |||
fc8ffe5731 | |||
9e81f92d58 | |||
bf4a5beb0b | |||
3288c20658 | |||
5a8df95fd3 | |||
43545cefd2 | |||
71364f962e | |||
b2ad5f16e8 | |||
5dc4db40f7 | |||
cec83afe45 | |||
01f6d8f038 | |||
a90a3c1d28 | |||
a1bc99ef4e | |||
35efcc4a7c | |||
c85fd97e00 | |||
895a24f332 | |||
6ff7f4a402 | |||
109e596417 | |||
20fddc6de7 | |||
1eaac78fdd | |||
855241d966 | |||
be9f7f8346 | |||
b5431bc061 | |||
783da59b59 | |||
41574fe026 | |||
848398d443 | |||
4dfc794b6e | |||
ac895209f0 | |||
b24d6224d9 | |||
8a13ae1bb9 | |||
a2058ca6f6 | |||
aab2017bda | |||
f9266a509d | |||
546ef0ade6 | |||
4661f1ab0e | |||
264bec8806 | |||
e2d60be3e5 | |||
e1e9830348 | |||
0e0dc44a49 | |||
533c8fc7f7 | |||
07651842b6 | |||
3796f9f70a | |||
31d21c74a0 | |||
c6245fdaf8 | |||
c539c630ed | |||
a414e5434f | |||
08b35e63d6 | |||
1598868445 | |||
3134221445 | |||
4cf5f3eabf | |||
3a3e58de4c | |||
26ecb09685 | |||
6db5bc0162 | |||
eab859fe80 | |||
1d6c369c06 | |||
05faf24582 | |||
e454d1c8a7 | |||
f162864e89 | |||
69c9202304 | |||
100a2eb4ae | |||
59293d7a99 | |||
02958c06fe | |||
a6e2a6ee59 | |||
cf30e159fb | |||
9f12f63aea | |||
e8aad1238e | |||
6843f508fa | |||
3b0e4cd05d | |||
e8b49a9fe5 | |||
15d7cd1d35 | |||
61f74b5307 | |||
a81686d9d0 | |||
2f010506eb | |||
4f24550463 | |||
7f7d8839eb | |||
e579b18794 | |||
fde406bafa | |||
4cb440504b | |||
aa5e8e6666 | |||
61aabf664e | |||
c31e002064 | |||
61168cb9d3 | |||
da58d2e9b9 | |||
57616901fd | |||
623d7aa58d | |||
2710723d88 | |||
e0d5fb03ed | |||
ca198b85bf | |||
f339c3f055 | |||
207cb2929a | |||
bedb663a8e | |||
5a5dceb967 | |||
369fbded81 | |||
06b9dd3327 | |||
b9b9d52e57 | |||
767fbddde9 | |||
3e63afb907 | |||
f6fe749da3 | |||
e5fbc623eb | |||
02a512dd72 | |||
d5883e4bcf | |||
5815549a9a | |||
b2821b85ab | |||
9413f2c86f | |||
47150da482 | |||
1e6ee4a7b5 | |||
1be9df7d61 | |||
8246863cd7 | |||
5291f0f884 | |||
d44873085b | |||
956b9209bf | |||
080fffba3d | |||
fd47c89736 | |||
ae72b00e29 | |||
74ba0ef0a8 | |||
db353fbbdc | |||
f6f89fca61 | |||
c979878288 | |||
68ef6235c1 | |||
a94b4e259c | |||
988750e737 | |||
c7a726cd59 | |||
6348d032c9 | |||
6bf9ac877b | |||
dde95043f8 | |||
4bf0df8ee1 | |||
1db18b1cec | |||
c6bd305b13 | |||
49f245b37a | |||
ef6071bff0 | |||
690137a349 | |||
24d70ad1e3 | |||
1310d633fc |
26
.github/ISSUE_TEMPLATE.md
vendored
Normal file
26
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
### Info:
|
||||||
|
- Docker version (`$ docker --version`):
|
||||||
|
- Laradock commit (`$ git rev-parse HEAD`):
|
||||||
|
- System info (Mac, PC, Linux):
|
||||||
|
- System info disto/version:
|
||||||
|
|
||||||
|
### Issue:
|
||||||
|
##### What seems to be going wrong?
|
||||||
|
|
||||||
|
_____
|
||||||
|
|
||||||
|
### Expected behavior:
|
||||||
|
##### What should be happening instead?
|
||||||
|
|
||||||
|
_____
|
||||||
|
|
||||||
|
### Reproduce:
|
||||||
|
##### How might we be able to reproduce the error?
|
||||||
|
|
||||||
|
_____
|
||||||
|
|
||||||
|
### Relevant Code:
|
||||||
|
|
||||||
|
```
|
||||||
|
// place code here
|
||||||
|
```
|
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
### Thank you for contributing to Laradock.
|
||||||
|
|
||||||
|
##### Make sure you completed the basic 3 steps below:
|
||||||
|
|
||||||
|
- [] I've read the simple [Contribution Guide](http://laradock.io/contributing).
|
||||||
|
- [] I've updated the **documentation**. (refer to [this](http://laradock.io/contributing/#update-the-documentation-site) for how to do so).
|
||||||
|
- [] I enjoyed my time contributing and making developer's life easier :)
|
45
.travis.yml
45
.travis.yml
@ -4,12 +4,49 @@ services:
|
|||||||
- docker
|
- docker
|
||||||
|
|
||||||
env:
|
env:
|
||||||
matrix:
|
matrix:
|
||||||
- PHP_VERSION=56
|
- PHP_VERSION=56 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
||||||
- PHP_VERSION=70
|
- PHP_VERSION=70 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
||||||
- PHP_VERSION=71
|
- PHP_VERSION=71 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis"
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE=workspace
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE=workspace
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE=workspace
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE=php-fpm
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE=php-fpm
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE=php-fpm
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE="php-worker hhvm"
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE="php-worker hhvm"
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE="php-worker hhvm"
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE=mssql
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE=mssql
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE=mssql
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE=rethinkdb
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE=rethinkdb
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE=rethinkdb
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE=aerospike
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE=aerospike
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE=aerospike
|
||||||
|
|
||||||
|
- PHP_VERSION=56 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer"
|
||||||
|
- PHP_VERSION=70 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer"
|
||||||
|
- PHP_VERSION=71 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer"
|
||||||
|
|
||||||
- HUGO_VERSION=0.20.2
|
- HUGO_VERSION=0.20.2
|
||||||
|
|
||||||
|
# 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
|
script: ./travis-build.sh
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
|
@ -153,9 +153,28 @@ You might use the `--no-cache` option if you want full rebuilding (`docker-compo
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<a name="Docker-Sync"></a>
|
||||||
|
|
||||||
|
## Docker-Sync
|
||||||
|
|
||||||
|
Docker on the Mac [is slow](https://github.com/docker/for-mac/issues/77), at the time of writing. Especially for larger projects, this can be a problem. The problem is [older than March 2016](https://forums.docker.com/t/file-access-in-mounted-volumes-extremely-slow-cpu-bound/8076) - as it's a such a long-running issue, we're including it in the docs here.
|
||||||
|
|
||||||
|
The problem originates in bind-mount performance on MacOS. Docker for Mac uses osxfs by default. This is not without reason, it has [a lot of advantages](https://docs.docker.com/docker-for-mac/osxfs/).
|
||||||
|
|
||||||
|
Solutions to resolve this issue are easily installed however, we're hoping it'll be fixed by Docker themselves over time. They are currently [adding "cached and delegated" options](https://github.com/docker/for-mac/issues/77#issuecomment-283996750), which is partly available for Docker Edge.
|
||||||
|
|
||||||
|
Options are [to switch over to NFS](https://github.com/IFSight/d4m-nfs) which is the simplest. The fastest option is [Docker-Sync "native"](https://github.com/EugenMayer/docker-sync) which is still quite easy to install.
|
||||||
|
|
||||||
|
Clone [this repo](https://github.com/EugenMayer/docker-sync-boilerplate) to your machine, copy `default/docker-sync.yml` to your Laradock directory and run `docker-sync-stack start`. Be sure to use `docker-sync-stack clean` to stop and `docker-compose build` to rebuild. More information can be found [in the Docker-sync docs](https://github.com/EugenMayer/docker-sync).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a name="Add-Docker-Images"></a>
|
<a name="Add-Docker-Images"></a>
|
||||||
|
|
||||||
## Add more Software (Docker Images)
|
## Add more Software (Docker Images)
|
||||||
|
|
||||||
To add an image (software), just edit the `docker-compose.yml` and add your container details, to do so you need to be familiar with the [docker compose file syntax](https://docs.docker.com/compose/compose-file/).
|
To add an image (software), just edit the `docker-compose.yml` and add your container details, to do so you need to be familiar with the [docker compose file syntax](https://docs.docker.com/compose/compose-file/).
|
||||||
@ -699,6 +718,8 @@ docker-compose up -d mysql phpmyadmin
|
|||||||
docker-compose up -d mariadb phpmyadmin
|
docker-compose up -d mariadb phpmyadmin
|
||||||
```
|
```
|
||||||
|
|
||||||
|
*Note: To use with MariaDB, open `.env` and set `PMA_DB_ENGINE=mysql` to `PMA_DB_ENGINE=mariadb`.*
|
||||||
|
|
||||||
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
|
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
|
||||||
|
|
||||||
|
|
||||||
@ -718,6 +739,7 @@ docker-compose up -d adminer
|
|||||||
|
|
||||||
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
|
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
|
||||||
|
|
||||||
|
**Note:** We've locked Adminer to version 4.3.0 as at the time of writing [it contained a major bug](https://sourceforge.net/p/adminer/bugs-and-features/548/) preventing PostgreSQL users from logging in. If that bug is fixed (or if you're not using PostgreSQL) feel free to set Adminer to the latest version within [the Dockerfile](https://github.com/laradock/laradock/blob/master/adminer/Dockerfile#L1): `FROM adminer:latest`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1236,11 +1258,11 @@ You are free to modify the `aliases.sh` as you see fit, adding your own aliases
|
|||||||
<br>
|
<br>
|
||||||
a) open the `docker-compose.yml` file
|
a) open the `docker-compose.yml` file
|
||||||
<br>
|
<br>
|
||||||
b) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the Workspace Container
|
b) search for the `INSTALL_AEROSPIKE` argument under the Workspace Container
|
||||||
<br>
|
<br>
|
||||||
c) set it to `true`
|
c) set it to `true`
|
||||||
<br>
|
<br>
|
||||||
d) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the PHP-FPM Container
|
d) search for the `INSTALL_AEROSPIKE` argument under the PHP-FPM Container
|
||||||
<br>
|
<br>
|
||||||
e) set it to `true`
|
e) set it to `true`
|
||||||
|
|
||||||
@ -1251,13 +1273,13 @@ It should be like this:
|
|||||||
build:
|
build:
|
||||||
context: ./workspace
|
context: ./workspace
|
||||||
args:
|
args:
|
||||||
- INSTALL_AEROSPIKE_EXTENSION=true
|
- INSTALL_AEROSPIKE=true
|
||||||
...
|
...
|
||||||
php-fpm:
|
php-fpm:
|
||||||
build:
|
build:
|
||||||
context: ./php-fpm
|
context: ./php-fpm
|
||||||
args:
|
args:
|
||||||
- INSTALL_AEROSPIKE_EXTENSION=true
|
- INSTALL_AEROSPIKE=true
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -39,23 +39,21 @@ Choose the setup the best suits your needs.
|
|||||||
git submodule add https://github.com/Laradock/laradock.git
|
git submodule add https://github.com/Laradock/laradock.git
|
||||||
```
|
```
|
||||||
|
|
||||||
**Notes:**
|
Note: If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
|
||||||
|
|
||||||
- If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
|
*To keep track of your Laradock changes, between your projects and also keep Laradock updated [check these docs](/documentation/#keep-track-of-your-laradock-changes)*
|
||||||
|
|
||||||
- Note 2: To keep track of your Laradock changes, between your projects and also keep Laradock updated. [Check this](/documentation/#keep-track-of-your-laradock-changes)
|
|
||||||
|
|
||||||
|
|
||||||
Your folder structure should look like this:
|
Your folder structure should look like this:
|
||||||
|
|
||||||
```
|
```
|
||||||
+ project-a
|
+ project-a
|
||||||
+ laradock-a
|
+ laradock-a
|
||||||
+ project-b
|
+ project-b
|
||||||
+ laradock-b
|
+ laradock-b
|
||||||
```
|
```
|
||||||
|
|
||||||
(It's important to rename the folders differently in each project.)
|
*(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project).*
|
||||||
|
|
||||||
> **Now jump to the [Usage](#Usage) section.**
|
> **Now jump to the [Usage](#Usage) section.**
|
||||||
|
|
||||||
@ -77,14 +75,19 @@ Your folder structure should look like this:
|
|||||||
|
|
||||||
2 - Edit your web server sites configuration.
|
2 - Edit your web server sites configuration.
|
||||||
|
|
||||||
**In case of NGINX:** open `nginx/sites/default.conf` and change the `root` from `/var/www/public` to `/var/www/{my-project-folder-name}/public`.
|
We'll need to do step 1 of the [Usage](#Usage) section now to make this happen.
|
||||||
|
|
||||||
*Or you can keep `default.conf` as it is, and create a separate config `my-site.conf` file for it.*
|
```
|
||||||
|
cp env-example .env
|
||||||
|
```
|
||||||
|
|
||||||
**In case of Apache:** :P
|
At the top, change the `APPLICATION` variable to your project path.
|
||||||
|
|
||||||
<br>
|
```
|
||||||
|
APPLICATION=../project-z/
|
||||||
|
```
|
||||||
|
|
||||||
|
Make sure to replace `project-z` with your project folder name.
|
||||||
|
|
||||||
> **Now jump to the [Usage](#Usage) section.**
|
> **Now jump to the [Usage](#Usage) section.**
|
||||||
|
|
||||||
@ -142,11 +145,15 @@ If you are using **Docker Toolbox** (VM), do one of the following:
|
|||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
We recommend using a Docker version which is newer than 1.13.
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
|
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
1 - Enter the laradock folder and rename `env-example` to `.env`
|
1 - Enter the laradock folder and copy `env-example` to `.env`
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
cp env-example .env
|
cp env-example .env
|
||||||
@ -204,6 +211,4 @@ DB_HOST=mysql
|
|||||||
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`. But first don't
|
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`.
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,6 +55,10 @@ $root@server:~/laravel/ cd laradock
|
|||||||
$root@server:~/laravel/laradock# curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
|
$root@server:~/laravel/laradock# curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
|
||||||
$root@server:~/chmod +x /usr/local/bin/docker-compose
|
$root@server:~/chmod +x /usr/local/bin/docker-compose
|
||||||
```
|
```
|
||||||
|
## Enter the laradock folder and rename env-example to .env.
|
||||||
|
```
|
||||||
|
$root@server:~/laravel/laradock# cp env-example .env
|
||||||
|
```
|
||||||
|
|
||||||
## Create Your Laradock Containers
|
## Create Your Laradock Containers
|
||||||
|
|
||||||
@ -138,8 +142,8 @@ And add `server_name` (your custom domain)
|
|||||||
## Rebuild Your Nginx
|
## Rebuild Your Nginx
|
||||||
|
|
||||||
```
|
```
|
||||||
$root@server:~/laravel/laradock/nginx# docker-compose down
|
$root@server:~/laravel/laradock# docker-compose down
|
||||||
$root@server:~/laravel/laradock/nginx# docker-compose build nginx
|
$root@server:~/laravel/laradock# docker-compose build nginx
|
||||||
```
|
```
|
||||||
|
|
||||||
## Re Run Your Containers MYSQL and NGINX
|
## Re Run Your Containers MYSQL and NGINX
|
||||||
@ -428,54 +432,54 @@ If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will
|
|||||||
## PHPStorm Settings
|
## PHPStorm Settings
|
||||||
- Here are some settings that are known to work:
|
- Here are some settings that are known to work:
|
||||||
- `Settings/BuildDeploymentConnection`
|
- `Settings/BuildDeploymentConnection`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/BuildDeploymentConnectionMappings`
|
- `Settings/BuildDeploymentConnectionMappings`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/BuildDeploymentDebugger`
|
- `Settings/BuildDeploymentDebugger`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/EditRunConfigurationRemoteWebDebug`
|
- `Settings/EditRunConfigurationRemoteWebDebug`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
|
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/LangsPHPDebug`
|
- `Settings/LangsPHPDebug`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/LangsPHPInterpreters`
|
- `Settings/LangsPHPInterpreters`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/LangsPHPPHPUnit`
|
- `Settings/LangsPHPPHPUnit`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `Settings/LangsPHPServers`
|
- `Settings/LangsPHPServers`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `RemoteHost`
|
- `RemoteHost`
|
||||||
To switch on this view, go to: `Menu/Tools/Deployment/Browse Remote Host`.
|
To switch on this view, go to: `Menu/Tools/Deployment/Browse Remote Host`.
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `RemoteWebDebug`
|
- `RemoteWebDebug`
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `EditRunConfigurationRemoteWebDebug`
|
- `EditRunConfigurationRemoteWebDebug`
|
||||||
Go to: `Menu/Run/Edit Configurations`.
|
Go to: `Menu/Run/Edit Configurations`.
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `EditRunConfigurationRemoteExampleTestDebug`
|
- `EditRunConfigurationRemoteExampleTestDebug`
|
||||||
Go to: `Menu/Run/Edit Configurations`.
|
Go to: `Menu/Run/Edit Configurations`.
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `WindowsFirewallAllowedApps`
|
- `WindowsFirewallAllowedApps`
|
||||||
Go to: `Control Panel\All Control Panel Items\Windows Firewall\Allowed apps`.
|
Go to: `Control Panel\All Control Panel Items\Windows Firewall\Allowed apps`.
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- `hosts`
|
- `hosts`
|
||||||
Edit: `C:\Windows\System32\drivers\etc\hosts`.
|
Edit: `C:\Windows\System32\drivers\etc\hosts`.
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
||||||
|
|
||||||
@ -497,7 +501,7 @@ If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will
|
|||||||
- right-click on `tests/ExampleTest.php`
|
- right-click on `tests/ExampleTest.php`
|
||||||
- Select: `Debug 'ExampleTest.php'`.
|
- Select: `Debug 'ExampleTest.php'`.
|
||||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||||
- 
|
- 
|
||||||
|
|
||||||
|
|
||||||
<a name="UsagePHPStormDebugSite"></a>
|
<a name="UsagePHPStormDebugSite"></a>
|
||||||
@ -508,13 +512,13 @@ If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will
|
|||||||
`.php-fpm/xdebug stop`
|
`.php-fpm/xdebug stop`
|
||||||
|
|
||||||
- Start Remote Debugging
|
- Start Remote Debugging
|
||||||
- 
|
- 
|
||||||
|
|
||||||
- Open to edit: `bootstrap/app.php`
|
- Open to edit: `bootstrap/app.php`
|
||||||
- Add a BreakPoint on line 14: `$app = new Illuminate\Foundation\Application(`
|
- Add a BreakPoint on line 14: `$app = new Illuminate\Foundation\Application(`
|
||||||
- Reload [Laravel Site](http://laravel/)
|
- Reload [Laravel Site](http://laravel/)
|
||||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||||
- 
|
- 
|
||||||
|
|
||||||
|
|
||||||
<a name="SSHintoWorkspace"></a>
|
<a name="SSHintoWorkspace"></a>
|
||||||
@ -533,14 +537,14 @@ Assuming that you are in laradock folder, type:
|
|||||||
[Kitty](http://www.9bis.net/kitty/) KiTTY is a fork from version 0.67 of PuTTY.
|
[Kitty](http://www.9bis.net/kitty/) KiTTY is a fork from version 0.67 of PuTTY.
|
||||||
|
|
||||||
- Here are some settings that are working for me:
|
- Here are some settings that are working for me:
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
- 
|
- 
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
---
|
|
||||||
title: Welcome
|
|
||||||
type: index
|
|
||||||
weight: 0
|
|
||||||
---
|
|
||||||
|
|
||||||
Welcome to Laradock :)
|
|
@ -83,17 +83,21 @@ In adhering to the separation of concerns principle as promoted by Docker, Larad
|
|||||||
You can turn On/Off as many instances of as any container without worrying about the configurations, everything works like a charm.
|
You can turn On/Off as many instances of as any container without worrying about the configurations, everything works like a charm.
|
||||||
|
|
||||||
- **Database Engines:**
|
- **Database Engines:**
|
||||||
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres Postgis.
|
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres-PostGIS.
|
||||||
|
- **Database Management:**
|
||||||
|
PhpMyAdmin - Adminer - PgAdmin
|
||||||
- **Cache Engines:**
|
- **Cache Engines:**
|
||||||
Redis - Memcached - Aerospike
|
Redis - Memcached - Aerospike
|
||||||
- **PHP Servers:**
|
- **PHP Servers:**
|
||||||
NGINX - Apache2 - Caddy
|
NGINX - Apache2 - Caddy
|
||||||
- **PHP Compilers:**
|
- **PHP Compilers:**
|
||||||
PHP FPM - HHVM
|
PHP FPM - HHVM
|
||||||
- **Message Queuing:**
|
- **Message Queueing:**
|
||||||
Beanstalkd - Beanstalkd Console - RabbitMQ - RabbitMQ Console - PHP Worker
|
Beanstalkd - RabbitMQ - PHP Worker
|
||||||
- **Tools:**
|
- **Queueing Management:**
|
||||||
HAProxy - Jenkins - ElasticSearch - Selenium - Certbot - Mailhog - Minio - Varnish - PhpMyAdmin - Adminer - PgAdmin - MailHog - [Blackfire](https://blackfire.io)...
|
Beanstalkd Console - RabbitMQ Console
|
||||||
|
- **Random Tools:**
|
||||||
|
HAProxy - Certbot - Blackfire - Selenium - Jenkins - ElasticSearch - Kibana - Mailhog - Minio - Varnish - Swoole - Laravel Echo...
|
||||||
|
|
||||||
Laradock introduces the **Workspace** Image, as a development environment.
|
Laradock introduces the **Workspace** Image, as a development environment.
|
||||||
It contains a rich set of helpful tools, all pre-configured to work and integrate with almost any combination of Containers and tools you may choose.
|
It contains a rich set of helpful tools, all pre-configured to work and integrate with almost any combination of Containers and tools you may choose.
|
||||||
@ -108,7 +112,7 @@ You can choose, which tools to install in your workspace container and other con
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
If you can't find your Software in the list, build it yourself and sumit it. Contributions are welcomed :)
|
If you can't find your Software in the list, build it yourself and submit it. Contributions are welcomed :)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -118,8 +122,10 @@ If you can't find your Software in the list, build it yourself and sumit it. Con
|
|||||||
<a name="what-is-docker"></a>
|
<a name="what-is-docker"></a>
|
||||||
## What is Docker?
|
## What is Docker?
|
||||||
|
|
||||||
[Docker](https://www.docker.com) is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of [operating-system-level virtualization](https://en.wikipedia.org/wiki/Operating-system-level_virtualization) on Linux, Mac OS and Windows.
|
[Docker](https://www.docker.com) is an open platform for developing, shipping, and running applications.
|
||||||
|
Docker enables you to separate your applications from your infrastructure so you can deliver software quickly.
|
||||||
|
With Docker, you can manage your infrastructure in the same ways you manage your applications.
|
||||||
|
By taking advantage of Docker’s methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -146,7 +152,7 @@ Most importantly Docker can run on Development and on Production (same environme
|
|||||||
|
|
||||||
What's better than a **Demo Video**:
|
What's better than a **Demo Video**:
|
||||||
|
|
||||||
- Laradock v5.* (soon or never)
|
- Laradock v5.* (should be next!)
|
||||||
- Laradock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
|
- Laradock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
|
||||||
- Laradock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
|
- Laradock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
|
||||||
- Laradock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
|
- Laradock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
|
||||||
|
13
README-zh.md
13
README-zh.md
@ -64,20 +64,23 @@ Laradock 努力简化创建开发环境过程。
|
|||||||
让我们了解使用它安装 `NGINX`, `PHP`, `Composer`, `MySQL` 和 `Redis`,然后运行 `Laravel`
|
让我们了解使用它安装 `NGINX`, `PHP`, `Composer`, `MySQL` 和 `Redis`,然后运行 `Laravel`
|
||||||
|
|
||||||
1. 将 Laradock 放到你的 Laravel 项目中:
|
1. 将 Laradock 放到你的 Laravel 项目中:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/laradock/laradock.git
|
git clone https://github.com/laradock/laradock.git
|
||||||
```
|
```
|
||||||
|
|
||||||
2. 进入 Laradock 目录,然后运行这些容器。
|
2. 进入 Laradock 目录
|
||||||
|
```bash
|
||||||
|
cp env-example .env
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 运行这些容器。
|
||||||
```bash
|
```bash
|
||||||
docker-compose up -d nginx mysql redis
|
docker-compose up -d nginx mysql redis
|
||||||
```
|
```
|
||||||
|
|
||||||
3. 打开你的 `.env` 文件,然后设置 `mysql` 的 `DB_HOST` 和 `redis` 的`REDIS_HOST`。
|
4. 打开你的Laravel 项目的 `.env` 文件,然后设置 `mysql` 的 `DB_HOST` 和 `redis` 的`REDIS_HOST`。
|
||||||
|
|
||||||
4. 打开浏览器,访问 localhost:
|
5. 打开浏览器,访问 localhost:
|
||||||
|
|
||||||
<a name="features"></a>
|
<a name="features"></a>
|
||||||
### 特点
|
### 特点
|
||||||
@ -461,7 +464,7 @@ REDIS_HOST=redis
|
|||||||
],
|
],
|
||||||
```
|
```
|
||||||
|
|
||||||
3 - 启用 Redis 缓存或者开启 Session 管理也在 `.env` 文件中用 `redis` 替换默认 `file` 设置 `CACHE_DRIVER` 和 `SESSION_DRIVER`
|
3 - 启用 Redis 缓存或者开启 Session 管理也在 `.env` 文件中用 `redis` 替换默认 `file` 设置 `CACHE_DRIVER` 和 `SESSION_DRIVER`
|
||||||
|
|
||||||
```env
|
```env
|
||||||
CACHE_DRIVER=redis
|
CACHE_DRIVER=redis
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||

|

|
||||||
|
|
||||||
[](https://travis-ci.org/laradock/laradock)
|
[](https://travis-ci.org/laradock/laradock) [](https://github.com/laradock/laradock/issues) [](https://github.com/laradock/laradock/network) [](https://github.com/laradock/laradock/stargazers) [](https://raw.githubusercontent.com/laradock/laradock/master/LICENSE)
|
||||||
|
|
||||||
> Use Docker first and learn about it later.
|
> Use Docker first and learn about it later.
|
||||||
|
|
||||||
@ -23,6 +23,9 @@ A Docker PHP development environment that facilitates running **PHP** Apps on **
|
|||||||
- [Dwi Fahni Denni](https://github.com/zeroc0d3) @zeroc0d3
|
- [Dwi Fahni Denni](https://github.com/zeroc0d3) @zeroc0d3
|
||||||
- [Thor Erik](https://github.com/thorerik) @thorerik
|
- [Thor Erik](https://github.com/thorerik) @thorerik
|
||||||
- [Winfried van Loon](https://github.com/winfried-van-loon) @winfried-van-loon
|
- [Winfried van Loon](https://github.com/winfried-van-loon) @winfried-van-loon
|
||||||
|
- [TJ Miller](https://github.com/sixlive) @sixlive
|
||||||
|
- [Yu-Lung Shao (Allen)](https://github.com/bestlong) @bestlong
|
||||||
|
- [Milan Urukalo](https://github.com/urukalo) @urukalo
|
||||||
- Join Us.
|
- Join Us.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
@ -1,9 +1,29 @@
|
|||||||
FROM adminer:latest
|
FROM adminer:4.3.0
|
||||||
|
|
||||||
|
# Version 4.3.1 contains PostgreSQL login errors. See docs.
|
||||||
|
# See https://sourceforge.net/p/adminer/bugs-and-features/548/
|
||||||
|
|
||||||
MAINTAINER Patrick Artounian <partounian@gmail.com>
|
MAINTAINER Patrick Artounian <partounian@gmail.com>
|
||||||
|
|
||||||
# Add volume for sessions to allow session persistence
|
# Add volume for sessions to allow session persistence
|
||||||
VOLUME /sessions
|
VOLUME /sessions
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
set -xe \
|
||||||
|
&& apk --update add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc unixodbc-dev \
|
||||||
|
&& pecl channel-update pecl.php.net \
|
||||||
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
|
&& echo "extension=sqlsrv.so" > /usr/local/etc/php/conf.d/20-sqlsrv.ini \
|
||||||
|
&& echo "extension=pdo_sqlsrv.so" > /usr/local/etc/php/conf.d/20-pdo_sqlsrv.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER adminer
|
||||||
|
|
||||||
# We expose Adminer on port 8080 (Adminer's default)
|
# We expose Adminer on port 8080 (Adminer's default)
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
|
@ -6,13 +6,13 @@ ARG PHP_SOCKET=php-fpm:9000
|
|||||||
|
|
||||||
ENV WEB_PHP_SOCKET=$PHP_SOCKET
|
ENV WEB_PHP_SOCKET=$PHP_SOCKET
|
||||||
|
|
||||||
ENV WEB_DOCUMENT_ROOT=/var/www/
|
ENV WEB_DOCUMENT_ROOT=/var/www/public/
|
||||||
|
|
||||||
EXPOSE 80 443
|
EXPOSE 80 443
|
||||||
|
|
||||||
WORKDIR /var/www/
|
WORKDIR /var/www/public/
|
||||||
|
|
||||||
ADD vhost.conf /etc/apache2/sites-enabled/vhost.conf
|
COPY vhost.conf /etc/apache2/sites-enabled/vhost.conf
|
||||||
|
|
||||||
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
|
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<VirtualHost *:80>
|
<VirtualHost *:80>
|
||||||
ServerName laradock.dev
|
ServerName laradock.dev
|
||||||
DocumentRoot /var/www/html/
|
DocumentRoot /var/www/public/
|
||||||
Options Indexes FollowSymLinks
|
Options Indexes FollowSymLinks
|
||||||
|
|
||||||
<Directory "/var/www/html/">
|
<Directory "/var/www/public/">
|
||||||
AllowOverride All
|
AllowOverride All
|
||||||
<IfVersion < 2.4>
|
<IfVersion < 2.4>
|
||||||
Allow from all
|
Allow from all
|
||||||
|
@ -2,17 +2,18 @@ FROM alpine:3.4
|
|||||||
|
|
||||||
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
||||||
|
|
||||||
ENV caddy_version=0.10.0
|
ENV caddy_version=0.10.3
|
||||||
|
ARG plugins=http.git
|
||||||
|
|
||||||
LABEL caddy_version="$caddy_version" architecture="amd64"
|
LABEL caddy_version="$caddy_version" architecture="amd64"
|
||||||
|
|
||||||
RUN apk update \
|
RUN apk update \
|
||||||
&& apk upgrade \
|
&& apk upgrade \
|
||||||
&& apk add tar curl git
|
&& apk add tar curl git openssh
|
||||||
|
|
||||||
RUN curl --silent --show-error --fail --location \
|
RUN curl --silent --show-error --fail --location \
|
||||||
--header "Accept: application/tar+gzip, application/x-gzip, application/octet-stream" -o - \
|
--header "Accept: application/tar+gzip, application/x-gzip, application/octet-stream" -o - \
|
||||||
"https://caddyserver.com/download/linux/amd64?plugins=http.cgi,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.realip,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.dnspod,tls.dns.dyn,tls.dns.googlecloud,tls.dns.linode,tls.dns.namecheap,tls.dns.ovh,tls.dns.route53,tls.dns.vultr" \
|
"https://caddyserver.com/download/linux/amd64?plugins=${plugins}" \
|
||||||
| tar --no-same-owner -C /usr/bin/ -xz caddy \
|
| tar --no-same-owner -C /usr/bin/ -xz caddy \
|
||||||
&& mv /usr/bin/caddy /usr/bin/caddy \
|
&& mv /usr/bin/caddy /usr/bin/caddy \
|
||||||
&& chmod 0755 /usr/bin/caddy
|
&& chmod 0755 /usr/bin/caddy
|
||||||
|
@ -19,14 +19,16 @@ services:
|
|||||||
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
||||||
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
|
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
|
||||||
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
||||||
|
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
|
||||||
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
||||||
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
||||||
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
|
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
|
||||||
- INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
|
- INSTALL_AEROSPIKE=${WORKSPACE_INSTALL_AEROSPIKE}
|
||||||
- INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION}
|
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
||||||
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
||||||
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
||||||
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
|
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
|
||||||
|
- INSTALL_LARAVEL_INSTALLER=${WORKSPACE_INSTALL_LARAVEL_INSTALLER}
|
||||||
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
|
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
|
||||||
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
|
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
|
||||||
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
||||||
@ -59,17 +61,20 @@ services:
|
|||||||
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
||||||
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
||||||
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
||||||
|
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
||||||
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
|
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
|
||||||
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
||||||
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
||||||
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
||||||
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
||||||
- INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
|
- INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
|
||||||
- INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
|
- INSTALL_AEROSPIKE=${PHP_FPM_INSTALL_AEROSPIKE}
|
||||||
- INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
|
- INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
|
||||||
- INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
|
- INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
|
||||||
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
|
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
|
||||||
- INSTALL_GHOSTSCRIPT=${PHP_FPM_INSTALL_GHOSTSCRIPT}
|
- INSTALL_GHOSTSCRIPT=${PHP_FPM_INSTALL_GHOSTSCRIPT}
|
||||||
|
- INSTALL_LDAP=${PHP_FPM_INSTALL_LDAP}
|
||||||
|
- INSTALL_SWOOLE=${PHP_FPM_INSTALL_SWOOLE}
|
||||||
dockerfile: "Dockerfile-${PHP_VERSION}"
|
dockerfile: "Dockerfile-${PHP_VERSION}"
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- applications
|
- applications
|
||||||
@ -95,6 +100,8 @@ services:
|
|||||||
- applications
|
- applications
|
||||||
depends_on:
|
depends_on:
|
||||||
- workspace
|
- workspace
|
||||||
|
extra_hosts:
|
||||||
|
- "dockerhost:${DOCKER_HOST_IP}"
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
@ -190,8 +197,10 @@ services:
|
|||||||
- MYSQL_USER=${MYSQL_USER}
|
- MYSQL_USER=${MYSQL_USER}
|
||||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||||
|
- TZ=${WORKSPACE_TIMEZONE}
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_SAVE_PATH}/mysql:/var/lib/mysql
|
- ${DATA_SAVE_PATH}/mysql:/var/lib/mysql
|
||||||
|
- ./mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
|
||||||
ports:
|
ports:
|
||||||
- "${MYSQL_PORT}:3306"
|
- "${MYSQL_PORT}:3306"
|
||||||
networks:
|
networks:
|
||||||
@ -208,7 +217,8 @@ services:
|
|||||||
- MYSQL_PASSWORD=${PERCONA_PASSWORD}
|
- MYSQL_PASSWORD=${PERCONA_PASSWORD}
|
||||||
- MYSQL_ROOT_PASSWORD=${PERCONA_ROOT_PASSWORD}
|
- MYSQL_ROOT_PASSWORD=${PERCONA_ROOT_PASSWORD}
|
||||||
volumes:
|
volumes:
|
||||||
- percona:/var/lib/mysql
|
- ${DATA_SAVE_PATH}/percona:/var/lib/mysql
|
||||||
|
- ./percona/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
|
||||||
ports:
|
ports:
|
||||||
- "${PERCONA_PORT}:3306"
|
- "${PERCONA_PORT}:3306"
|
||||||
networks:
|
networks:
|
||||||
@ -236,6 +246,7 @@ services:
|
|||||||
build: ./mariadb
|
build: ./mariadb
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_SAVE_PATH}/mariadb:/var/lib/mysql
|
- ${DATA_SAVE_PATH}/mariadb:/var/lib/mysql
|
||||||
|
- ./mariadb/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
|
||||||
ports:
|
ports:
|
||||||
- "${MARIADB_PORT}:3306"
|
- "${MARIADB_PORT}:3306"
|
||||||
environment:
|
environment:
|
||||||
@ -295,7 +306,7 @@ services:
|
|||||||
mongo:
|
mongo:
|
||||||
build: ./mongo
|
build: ./mongo
|
||||||
ports:
|
ports:
|
||||||
- "27017:27017"
|
- "${MONGODB_PORT}:27017"
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_SAVE_PATH}/mongo:/data/db
|
- ${DATA_SAVE_PATH}/mongo:/data/db
|
||||||
networks:
|
networks:
|
||||||
@ -306,7 +317,7 @@ services:
|
|||||||
rethinkdb:
|
rethinkdb:
|
||||||
build: ./rethinkdb
|
build: ./rethinkdb
|
||||||
ports:
|
ports:
|
||||||
- "8090:8080"
|
- "${RETHINKDB_PORT}:8080"
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_SAVE_PATH}/rethinkdb:/data/rethinkdb_data
|
- ${DATA_SAVE_PATH}/rethinkdb:/data/rethinkdb_data
|
||||||
networks:
|
networks:
|
||||||
@ -332,10 +343,10 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ${DATA_SAVE_PATH}/aerospike:/opt/aerospike/data
|
- ${DATA_SAVE_PATH}/aerospike:/opt/aerospike/data
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
- "${AEROSPIKE_SERVICE_PORT}:3000"
|
||||||
- "3001:3001"
|
- "${AEROSPIKE_FABRIC_PORT}:3001"
|
||||||
- "3002:3002"
|
- "${AEROSPIKE_HEARTBEAT_PORT}:3002"
|
||||||
- "3003:3003"
|
- "${AEROSPIKE_INFO_PORT}:3003"
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
@ -396,16 +407,15 @@ services:
|
|||||||
|
|
||||||
caddy:
|
caddy:
|
||||||
build: ./caddy
|
build: ./caddy
|
||||||
ports:
|
|
||||||
- "80:80"
|
|
||||||
- "443:443"
|
|
||||||
- "2015:2015"
|
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- applications
|
- applications
|
||||||
volumes:
|
volumes:
|
||||||
- ./caddy/Caddyfile:/etc/Caddyfile
|
- ${CADDY_CUSTOM_CADDYFILE}:/etc/Caddyfile
|
||||||
- ./logs/caddy:/var/log/caddy
|
- ${CADDY_HOST_LOG_PATH}:/var/log/caddy
|
||||||
- caddy:/root/.caddy
|
- ${DATA_SAVE_PATH}:/root/.caddy
|
||||||
|
ports:
|
||||||
|
- "${CADDY_HOST_HTTP_PORT}:80"
|
||||||
|
- "${CADDY_HOST_HTTPS_PORT}:443"
|
||||||
depends_on:
|
depends_on:
|
||||||
- php-fpm
|
- php-fpm
|
||||||
networks:
|
networks:
|
||||||
@ -432,7 +442,10 @@ services:
|
|||||||
### Adminer Container ####################################
|
### Adminer Container ####################################
|
||||||
|
|
||||||
adminer:
|
adminer:
|
||||||
build: ./adminer
|
build:
|
||||||
|
context: ./adminer
|
||||||
|
args:
|
||||||
|
- INSTALL_MSSQL=${ADM_INSTALL_MSSQL}
|
||||||
ports:
|
ports:
|
||||||
- "${ADM_PORT}:8080"
|
- "${ADM_PORT}:8080"
|
||||||
depends_on:
|
depends_on:
|
||||||
@ -469,6 +482,19 @@ services:
|
|||||||
- frontend
|
- frontend
|
||||||
- backend
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
### Kibana Container #######################################
|
||||||
|
|
||||||
|
kibana:
|
||||||
|
build: ./kibana
|
||||||
|
ports:
|
||||||
|
- "${KIBANA_HTTP_PORT}:5601"
|
||||||
|
depends_on:
|
||||||
|
- elasticsearch
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
|
||||||
### Certbot Container ##################################
|
### Certbot Container ##################################
|
||||||
|
|
||||||
certbot:
|
certbot:
|
||||||
@ -492,6 +518,7 @@ services:
|
|||||||
- "8025:8025"
|
- "8025:8025"
|
||||||
networks:
|
networks:
|
||||||
- frontend
|
- frontend
|
||||||
|
- backend
|
||||||
|
|
||||||
### Selenium Container ########################################
|
### Selenium Container ########################################
|
||||||
|
|
||||||
@ -555,6 +582,7 @@ services:
|
|||||||
- proxy2
|
- proxy2
|
||||||
|
|
||||||
### Jenkins ###################################################
|
### Jenkins ###################################################
|
||||||
|
|
||||||
jenkins:
|
jenkins:
|
||||||
build: ./jenkins
|
build: ./jenkins
|
||||||
environment:
|
environment:
|
||||||
@ -566,6 +594,23 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ${JENKINS_HOME}:/var/jenkins_home
|
- ${JENKINS_HOME}:/var/jenkins_home
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
|
||||||
|
### Laravel Echo Server #######################################
|
||||||
|
laravel-echo-server:
|
||||||
|
build:
|
||||||
|
context: ./laravel-echo-server
|
||||||
|
volumes:
|
||||||
|
- ./laravel-echo-server/laravel-echo-server.json:/app/laravel-echo-server.json:ro
|
||||||
|
ports:
|
||||||
|
- "${LARAVEL_ECHO_SERVER_PORT}:6001"
|
||||||
|
links:
|
||||||
|
- redis
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
|
||||||
### Networks Setup ############################################
|
### Networks Setup ############################################
|
||||||
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
FROM elasticsearch:latest
|
FROM docker.elastic.co/elasticsearch/elasticsearch:5.4.1
|
||||||
|
|
||||||
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
|
|
||||||
|
|
||||||
EXPOSE 9200 9300
|
EXPOSE 9200 9300
|
||||||
|
49
env-example
49
env-example
@ -10,7 +10,7 @@ APPLICATION=../
|
|||||||
### Data Path:
|
### Data Path:
|
||||||
# For all storage systems.
|
# For all storage systems.
|
||||||
|
|
||||||
DATA_SAVE_PATH=/tmp
|
DATA_SAVE_PATH=~/.laradock/data
|
||||||
|
|
||||||
### PHP version
|
### PHP version
|
||||||
# Applies to the Workspace and PHP-FPM containers (Does not apply to HHVM)
|
# Applies to the Workspace and PHP-FPM containers (Does not apply to HHVM)
|
||||||
@ -32,14 +32,16 @@ PHP_INTERPRETER=php-fpm
|
|||||||
WORKSPACE_INSTALL_XDEBUG=false
|
WORKSPACE_INSTALL_XDEBUG=false
|
||||||
WORKSPACE_INSTALL_SOAP=false
|
WORKSPACE_INSTALL_SOAP=false
|
||||||
WORKSPACE_INSTALL_MONGO=false
|
WORKSPACE_INSTALL_MONGO=false
|
||||||
|
WORKSPACE_INSTALL_MSSQL=false
|
||||||
WORKSPACE_INSTALL_NODE=false
|
WORKSPACE_INSTALL_NODE=false
|
||||||
WORKSPACE_INSTALL_YARN=false
|
WORKSPACE_INSTALL_YARN=false
|
||||||
WORKSPACE_INSTALL_DRUSH=false
|
WORKSPACE_INSTALL_DRUSH=false
|
||||||
WORKSPACE_INSTALL_AEROSPIKE_EXTENSION=false
|
WORKSPACE_INSTALL_AEROSPIKE=false
|
||||||
WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION=false
|
WORKSPACE_INSTALL_V8JS=false
|
||||||
WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
|
WORKSPACE_COMPOSER_GLOBAL_INSTALL=false
|
||||||
WORKSPACE_INSTALL_WORKSPACE_SSH=false
|
WORKSPACE_INSTALL_WORKSPACE_SSH=false
|
||||||
WORKSPACE_INSTALL_LARAVEL_ENVOY=false
|
WORKSPACE_INSTALL_LARAVEL_ENVOY=false
|
||||||
|
WORKSPACE_INSTALL_LARAVEL_INSTALLER=false
|
||||||
WORKSPACE_INSTALL_DEPLOYER=false
|
WORKSPACE_INSTALL_DEPLOYER=false
|
||||||
WORKSPACE_INSTALL_LINUXBREW=false
|
WORKSPACE_INSTALL_LINUXBREW=false
|
||||||
WORKSPACE_INSTALL_MC=false
|
WORKSPACE_INSTALL_MC=false
|
||||||
@ -54,6 +56,7 @@ WORKSPACE_SSH_PORT=2222
|
|||||||
|
|
||||||
PHP_FPM_INSTALL_XDEBUG=false
|
PHP_FPM_INSTALL_XDEBUG=false
|
||||||
PHP_FPM_INSTALL_MONGO=false
|
PHP_FPM_INSTALL_MONGO=false
|
||||||
|
PHP_FPM_INSTALL_MSSQL=false
|
||||||
PHP_FPM_INSTALL_SOAP=false
|
PHP_FPM_INSTALL_SOAP=false
|
||||||
PHP_FPM_INSTALL_ZIP_ARCHIVE=false
|
PHP_FPM_INSTALL_ZIP_ARCHIVE=false
|
||||||
PHP_FPM_INSTALL_BCMATH=false
|
PHP_FPM_INSTALL_BCMATH=false
|
||||||
@ -61,11 +64,13 @@ PHP_FPM_INSTALL_PHPREDIS=false
|
|||||||
PHP_FPM_INSTALL_MEMCACHED=false
|
PHP_FPM_INSTALL_MEMCACHED=false
|
||||||
PHP_FPM_INSTALL_OPCACHE=false
|
PHP_FPM_INSTALL_OPCACHE=false
|
||||||
PHP_FPM_INSTALL_EXIF=false
|
PHP_FPM_INSTALL_EXIF=false
|
||||||
PHP_FPM_INSTALL_AEROSPIKE_EXTENSION=false
|
PHP_FPM_INSTALL_AEROSPIKE=false
|
||||||
PHP_FPM_INSTALL_MYSQLI=false
|
PHP_FPM_INSTALL_MYSQLI=false
|
||||||
PHP_FPM_INSTALL_TOKENIZER=false
|
PHP_FPM_INSTALL_TOKENIZER=false
|
||||||
PHP_FPM_INSTALL_INTL=false
|
PHP_FPM_INSTALL_INTL=false
|
||||||
PHP_FPM_INSTALL_GHOSTSCRIPT=false
|
PHP_FPM_INSTALL_GHOSTSCRIPT=false
|
||||||
|
PHP_FPM_INSTALL_LDAP=false
|
||||||
|
PHP_FPM_INSTALL_SWOOLE=false
|
||||||
|
|
||||||
### NGINX ##############################################################################################################
|
### NGINX ##############################################################################################################
|
||||||
|
|
||||||
@ -132,6 +137,10 @@ RABBITMQ_DEFAULT_PASS=guest
|
|||||||
ELASTICSEARCH_HOST_HTTP_PORT=9200
|
ELASTICSEARCH_HOST_HTTP_PORT=9200
|
||||||
ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
|
ELASTICSEARCH_HOST_TRANSPORT_PORT=9300
|
||||||
|
|
||||||
|
### KIBANA #############################################################################################################
|
||||||
|
|
||||||
|
KIBANA_HTTP_PORT=5601
|
||||||
|
|
||||||
### MEMCACHED ##########################################################################################################
|
### MEMCACHED ##########################################################################################################
|
||||||
|
|
||||||
MEMCACHED_HOST_PORT=11211
|
MEMCACHED_HOST_PORT=11211
|
||||||
@ -156,7 +165,8 @@ MINIO_PORT=9000
|
|||||||
|
|
||||||
### ADMINER ############################################################################################################
|
### ADMINER ############################################################################################################
|
||||||
|
|
||||||
ADM_PORT=88
|
ADM_PORT=8080
|
||||||
|
ADM_INSTALL_MSSQL=false
|
||||||
|
|
||||||
### PHP MY ADMIN #######################################################################################################
|
### PHP MY ADMIN #######################################################################################################
|
||||||
|
|
||||||
@ -169,7 +179,7 @@ PMA_DB_ENGINE=mysql
|
|||||||
PMA_USER=default
|
PMA_USER=default
|
||||||
PMA_PASSWORD=secret
|
PMA_PASSWORD=secret
|
||||||
PMA_ROOT_PASSWORD=secret
|
PMA_ROOT_PASSWORD=secret
|
||||||
PMA_PORT=88
|
PMA_PORT=8080
|
||||||
|
|
||||||
### VARNISH ############################################################################################################
|
### VARNISH ############################################################################################################
|
||||||
|
|
||||||
@ -213,6 +223,32 @@ BLACKFIRE_CLIENT_TOKEN=<client_token>
|
|||||||
BLACKFIRE_SERVER_ID=<server_id>
|
BLACKFIRE_SERVER_ID=<server_id>
|
||||||
BLACKFIRE_SERVER_TOKEN=<server_token>
|
BLACKFIRE_SERVER_TOKEN=<server_token>
|
||||||
|
|
||||||
|
### AEROSPIKE ##########################################################################################################
|
||||||
|
|
||||||
|
AEROSPIKE_SERVICE_PORT=3000
|
||||||
|
AEROSPIKE_FABRIC_PORT=3001
|
||||||
|
AEROSPIKE_HEARTBEAT_PORT=3002
|
||||||
|
AEROSPIKE_INFO_PORT=3003
|
||||||
|
|
||||||
|
### RETHINKDB ##########################################################################################################
|
||||||
|
|
||||||
|
RETHINKDB_PORT=8090
|
||||||
|
|
||||||
|
### MONGODB ############################################################################################################
|
||||||
|
|
||||||
|
MONGODB_PORT=27017
|
||||||
|
|
||||||
|
### CADDY ##############################################################################################################
|
||||||
|
|
||||||
|
CADDY_HOST_HTTP_PORT=80
|
||||||
|
CADDY_HOST_HTTPS_PORT=443
|
||||||
|
CADDY_HOST_LOG_PATH=./logs/caddy
|
||||||
|
CADDY_CUSTOM_CADDYFILE=./caddy/Caddyfile
|
||||||
|
|
||||||
|
### LARAVEL ECHO SERVER ################################################################################################
|
||||||
|
|
||||||
|
LARAVEL_ECHO_SERVER_PORT=6001
|
||||||
|
|
||||||
|
|
||||||
##### TO BE CONTINUE .................................
|
##### TO BE CONTINUE .................................
|
||||||
|
|
||||||
@ -239,4 +275,3 @@ PHP_IDE_CONFIG=serverName=laradock
|
|||||||
# Fix for windows users to make sure the application path works.
|
# Fix for windows users to make sure the application path works.
|
||||||
|
|
||||||
COMPOSE_CONVERT_WINDOWS_PATHS=1
|
COMPOSE_CONVERT_WINDOWS_PATHS=1
|
||||||
|
|
||||||
|
0
jenkins/install-plugins.sh
Normal file → Executable file
0
jenkins/install-plugins.sh
Normal file → Executable file
0
jenkins/jenkins-support
Normal file → Executable file
0
jenkins/jenkins-support
Normal file → Executable file
0
jenkins/jenkins.sh
Normal file → Executable file
0
jenkins/jenkins.sh
Normal file → Executable file
0
jenkins/plugins.sh
Normal file → Executable file
0
jenkins/plugins.sh
Normal file → Executable file
0
jenkins/publish.sh
Normal file → Executable file
0
jenkins/publish.sh
Normal file → Executable file
0
jenkins/update-official-library.sh
Normal file → Executable file
0
jenkins/update-official-library.sh
Normal file → Executable file
3
kibana/Dockerfile
Normal file
3
kibana/Dockerfile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
FROM docker.elastic.co/kibana/kibana:5.4.1
|
||||||
|
|
||||||
|
EXPOSE 5601
|
15
laravel-echo-server/Dockerfile
Normal file
15
laravel-echo-server/Dockerfile
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
FROM node:argon
|
||||||
|
|
||||||
|
# Create app directory
|
||||||
|
RUN mkdir -p /usr/src/app
|
||||||
|
WORKDIR /usr/src/app
|
||||||
|
|
||||||
|
# Install app dependencies
|
||||||
|
COPY package.json /usr/src/app/
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
# Bundle app source
|
||||||
|
COPY laravel-echo-server.json /usr/src/app/laravel-echo-server.json
|
||||||
|
|
||||||
|
EXPOSE 3000
|
||||||
|
CMD [ "npm", "start" ]
|
19
laravel-echo-server/laravel-echo-server.json
Normal file
19
laravel-echo-server/laravel-echo-server.json
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"authHost": "localhost",
|
||||||
|
"authEndpoint": "/broadcasting/auth",
|
||||||
|
"clients": [],
|
||||||
|
"database": "redis",
|
||||||
|
"databaseConfig": {
|
||||||
|
"redis": {
|
||||||
|
"port": "6379",
|
||||||
|
"host": "redis"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"devMode": true,
|
||||||
|
"host": null,
|
||||||
|
"port": "6001",
|
||||||
|
"protocol": "http",
|
||||||
|
"socketio": {},
|
||||||
|
"sslCertPath": "",
|
||||||
|
"sslKeyPath": ""
|
||||||
|
}
|
12
laravel-echo-server/package.json
Normal file
12
laravel-echo-server/package.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"name": "laravel-echo-server-docker",
|
||||||
|
"description": "Docker container for running laravel-echo-server",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"laravel-echo-server": "^1.2.8"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"start": "laravel-echo-server start"
|
||||||
|
}
|
||||||
|
}
|
1
mariadb/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
1
mariadb/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
*.sql
|
28
mariadb/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
28
mariadb/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
###
|
||||||
|
### Copy createdb.sql.example to createdb.sql
|
||||||
|
### then uncomment then set database name and username to create you need databases
|
||||||
|
#
|
||||||
|
# example: .env MYSQL_USER=appuser and need db name is myshop_db
|
||||||
|
#
|
||||||
|
# CREATE DATABASE IF NOT EXISTS `myshop_db` ;
|
||||||
|
# GRANT ALL ON `myshop_db`.* TO 'appuser'@'%' ;
|
||||||
|
#
|
||||||
|
###
|
||||||
|
### this sql script is auto run when mariadb container start and $DATA_SAVE_PATH/mariadb not exists.
|
||||||
|
###
|
||||||
|
### if your $DATA_SAVE_PATH/mariadb is exists and you do not want to delete it, you can run by manual execution:
|
||||||
|
###
|
||||||
|
### docker-compose exec mariadb bash
|
||||||
|
### mysql -u root -p < /docker-entrypoint-initdb.d/createdb.sql
|
||||||
|
###
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_1` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_1`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_2` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_2`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_3` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_3`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
FLUSH PRIVILEGES ;
|
@ -1,5 +1,5 @@
|
|||||||
#wait for the SQL Server to come up
|
#wait for the SQL Server to come up
|
||||||
sleep 45s
|
sleep 45
|
||||||
|
|
||||||
#run the setup script to create the DB and the schema in the DB
|
#run the setup script to create the DB and the schema in the DB
|
||||||
/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P $SA_PASSWORD -d master -i setup.sql
|
/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P $SA_PASSWORD -d master -i setup.sql
|
@ -1,2 +1,2 @@
|
|||||||
#start SQL Server, start the script to create the DB and import the data, start the app
|
#start SQL Server, start the script to create the DB and import the data, start the app
|
||||||
/opt/mssql/bin/sqlservr.sh & /usr/src/app/create_table.sh & tail -f /dev/null
|
/opt/mssql/bin/sqlservr & /usr/src/app/create_table.sh & tail -f /dev/null
|
||||||
|
@ -2,6 +2,14 @@ FROM mysql:5.7
|
|||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Set Timezone
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG TZ=UTC
|
||||||
|
ENV TZ ${TZ}
|
||||||
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||||
|
|
||||||
RUN chown -R mysql:root /var/lib/mysql/
|
RUN chown -R mysql:root /var/lib/mysql/
|
||||||
|
|
||||||
ADD my.cnf /etc/mysql/conf.d/my.cnf
|
ADD my.cnf /etc/mysql/conf.d/my.cnf
|
||||||
|
1
mysql/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
1
mysql/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
*.sql
|
28
mysql/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
28
mysql/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
###
|
||||||
|
### Copy createdb.sql.example to createdb.sql
|
||||||
|
### then uncomment then set database name and username to create you need databases
|
||||||
|
#
|
||||||
|
# example: .env MYSQL_USER=appuser and need db name is myshop_db
|
||||||
|
#
|
||||||
|
# CREATE DATABASE IF NOT EXISTS `myshop_db` ;
|
||||||
|
# GRANT ALL ON `myshop_db`.* TO 'appuser'@'%' ;
|
||||||
|
#
|
||||||
|
###
|
||||||
|
### this sql script is auto run when mysql container start and $DATA_SAVE_PATH/mysql not exists.
|
||||||
|
###
|
||||||
|
### if your $DATA_SAVE_PATH/mysql is exists and you do not want to delete it, you can run by manual execution:
|
||||||
|
###
|
||||||
|
### docker-compose exec mysql bash
|
||||||
|
### mysql -u root -p < /docker-entrypoint-initdb.d/createdb.sql
|
||||||
|
###
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_1` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_1`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_2` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_2`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_3` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_3`.* TO 'default'@'%' ;
|
||||||
|
|
||||||
|
FLUSH PRIVILEGES ;
|
@ -28,7 +28,7 @@ http {
|
|||||||
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';
|
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
|
||||||
|
|
||||||
include /etc/nginx/conf.d/*.conf;
|
include /etc/nginx/conf.d/*.conf;
|
||||||
include /etc/nginx/sites-available/*;
|
include /etc/nginx/sites-available/*.conf;
|
||||||
open_file_cache off; # Disabled for issue 619
|
open_file_cache off; # Disabled for issue 619
|
||||||
charset UTF-8;
|
charset UTF-8;
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@ server {
|
|||||||
try_files $uri /index.php =404;
|
try_files $uri /index.php =404;
|
||||||
fastcgi_pass php-upstream;
|
fastcgi_pass php-upstream;
|
||||||
fastcgi_index index.php;
|
fastcgi_index index.php;
|
||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
@ -24,12 +24,9 @@ server {
|
|||||||
location ~ /\.ht {
|
location ~ /\.ht {
|
||||||
deny all;
|
deny all;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /.well-known/acme-challenge/ {
|
location /.well-known/acme-challenge/ {
|
||||||
root /var/www/letsencrypt/;
|
root /var/www/letsencrypt/;
|
||||||
log_not_found off;
|
log_not_found off;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ server {
|
|||||||
try_files $uri /index.php =404;
|
try_files $uri /index.php =404;
|
||||||
fastcgi_pass php-upstream;
|
fastcgi_pass php-upstream;
|
||||||
fastcgi_index index.php;
|
fastcgi_index index.php;
|
||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
@ -24,12 +24,9 @@ server {
|
|||||||
location ~ /\.ht {
|
location ~ /\.ht {
|
||||||
deny all;
|
deny all;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /.well-known/acme-challenge/ {
|
location /.well-known/acme-challenge/ {
|
||||||
root /var/www/letsencrypt/;
|
root /var/www/letsencrypt/;
|
||||||
log_not_found off;
|
log_not_found off;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ server {
|
|||||||
try_files $uri /index.php =404;
|
try_files $uri /index.php =404;
|
||||||
fastcgi_pass php-upstream;
|
fastcgi_pass php-upstream;
|
||||||
fastcgi_index index.php;
|
fastcgi_index index.php;
|
||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
@ -24,12 +24,9 @@ server {
|
|||||||
location ~ /\.ht {
|
location ~ /\.ht {
|
||||||
deny all;
|
deny all;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /.well-known/acme-challenge/ {
|
location /.well-known/acme-challenge/ {
|
||||||
root /var/www/letsencrypt/;
|
root /var/www/letsencrypt/;
|
||||||
log_not_found off;
|
log_not_found off;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
1
percona/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
1
percona/docker-entrypoint-initdb.d/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
*.sql
|
28
percona/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
28
percona/docker-entrypoint-initdb.d/createdb.sql.example
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
###
|
||||||
|
### Copy createdb.sql.example to createdb.sql
|
||||||
|
### then uncomment then set database name and username to create you need databases
|
||||||
|
#
|
||||||
|
# example: .env MYSQL_USER=appuser and need db name is myshop_db
|
||||||
|
#
|
||||||
|
# CREATE DATABASE IF NOT EXISTS `myshop_db` ;
|
||||||
|
# GRANT ALL ON `myshop_db`.* TO 'appuser'@'%' ;
|
||||||
|
#
|
||||||
|
###
|
||||||
|
### this sql script is auto run when percona container start and $DATA_SAVE_PATH/percona not exists.
|
||||||
|
###
|
||||||
|
### if your $DATA_SAVE_PATH/percona is exists and you do not want to delete it, you can run by manual execution:
|
||||||
|
###
|
||||||
|
### docker-compose exec percona bash
|
||||||
|
### mysql -u root -p < /docker-entrypoint-initdb.d/createdb.sql
|
||||||
|
###
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_1` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_1`.* TO 'homestead'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_2` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_2`.* TO 'homestead'@'%' ;
|
||||||
|
|
||||||
|
#CREATE DATABASE IF NOT EXISTS `dev_db_3` COLLATE 'utf8_general_ci' ;
|
||||||
|
#GRANT ALL ON `dev_db_3`.* TO 'homestead'@'%' ;
|
||||||
|
|
||||||
|
FLUSH PRIVILEGES ;
|
@ -45,7 +45,7 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
ARG INSTALL_SOAP=false
|
ARG INSTALL_SOAP=false
|
||||||
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
# Install the soap extension
|
# Install the soap extension
|
||||||
apt-get -y update && \
|
apt-get update -yqq && \
|
||||||
apt-get -y install libxml2-dev php-soap && \
|
apt-get -y install libxml2-dev php-soap && \
|
||||||
docker-php-ext-install soap \
|
docker-php-ext-install soap \
|
||||||
;fi
|
;fi
|
||||||
@ -92,6 +92,17 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
&& docker-php-ext-enable redis \
|
&& docker-php-ext-enable redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 5
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl install swoole \
|
||||||
|
&& docker-php-ext-enable swoole \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# MongoDB:
|
# MongoDB:
|
||||||
#####################################
|
#####################################
|
||||||
@ -148,13 +159,13 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -219,10 +230,34 @@ RUN if [ ${INSTALL_INTL} = true ]; then \
|
|||||||
ARG INSTALL_GHOSTSCRIPT=false
|
ARG INSTALL_GHOSTSCRIPT=false
|
||||||
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
||||||
# Install the ghostscript extension for PDF editing
|
# Install the ghostscript extension for PDF editing
|
||||||
apt-get update && \
|
apt-get update -yqq && \
|
||||||
apt-get install -y poppler-utils ghostscript \
|
apt-get install -y poppler-utils ghostscript \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
|
||||||
|
docker-php-ext-install ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
apt-get -y install php5-sybase freetds-bin && \
|
||||||
|
cp /usr/lib/php5/20131226/*.so /usr/local/lib/php/extensions/no-debug-non-zts-20131226/ && \
|
||||||
|
docker-php-ext-enable mssql pdo pdo_dblib \
|
||||||
|
;fi
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -45,7 +45,7 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
ARG INSTALL_SOAP=false
|
ARG INSTALL_SOAP=false
|
||||||
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
# Install the soap extension
|
# Install the soap extension
|
||||||
apt-get -y update && \
|
apt-get update -yqq && \
|
||||||
apt-get -y install libxml2-dev php-soap && \
|
apt-get -y install libxml2-dev php-soap && \
|
||||||
docker-php-ext-install soap \
|
docker-php-ext-install soap \
|
||||||
;fi
|
;fi
|
||||||
@ -89,6 +89,17 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
&& docker-php-ext-enable redis \
|
&& docker-php-ext-enable redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl install swoole \
|
||||||
|
&& docker-php-ext-enable swoole \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# MongoDB:
|
# MongoDB:
|
||||||
#####################################
|
#####################################
|
||||||
@ -156,13 +167,13 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -205,86 +216,6 @@ RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
|
|||||||
docker-php-ext-install tokenizer \
|
docker-php-ext-install tokenizer \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
|
||||||
# SQL SERVER:
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
ARG MSSQL=false
|
|
||||||
RUN if [ ${MSSQL} = true ]; then \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Install Depenencies:
|
|
||||||
#####################################
|
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y --force-yes wget apt-transport-https curl freetds-common php5-odbc libsybdb5 freetds-bin unixodbc unixodbc-dev php5-sybase && \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# The following steps were taken from
|
|
||||||
# Microsoft's github account:
|
|
||||||
# https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
# Add PHP 7 repository
|
|
||||||
# for Debian jessie
|
|
||||||
# And System upgrade
|
|
||||||
echo "deb http://packages.dotdeb.org jessie all" \
|
|
||||||
| tee /etc/apt/sources.list.d/dotdeb.list \
|
|
||||||
&& wget -qO- https://www.dotdeb.org/dotdeb.gpg \
|
|
||||||
| apt-key add - \
|
|
||||||
&& apt-get update \
|
|
||||||
&& apt-get upgrade -qq && \
|
|
||||||
|
|
||||||
# Install UnixODBC
|
|
||||||
# Compile odbc_config as it is not part of unixodbc package
|
|
||||||
apt-get install -y whiptail \
|
|
||||||
unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \
|
|
||||||
&& dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \
|
|
||||||
&& cd unixodbc-*/ \
|
|
||||||
&& dpkg-buildpackage -uc -us -B -d \
|
|
||||||
&& cp -v ./exe/odbc_config /usr/local/bin/ && \
|
|
||||||
|
|
||||||
# Fake uname for install.sh
|
|
||||||
printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \
|
|
||||||
| tee /usr/local/bin/uname \
|
|
||||||
&& chmod +x /usr/local/bin/uname && \
|
|
||||||
|
|
||||||
# Microsoft ODBC Driver 13 for Linux
|
|
||||||
# Note: There's a copy of this tar on my hubiC
|
|
||||||
wget -nv -O msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
"https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \
|
|
||||||
&& tar -xf msodbcsql-13.0.0.0.tar.gz \
|
|
||||||
&& cd msodbcsql-*/ \
|
|
||||||
&& ldd lib64/libmsodbcsql-13.0.so.0.0 \
|
|
||||||
&& ./install.sh install --accept-license \
|
|
||||||
&& ls -l /opt/microsoft/msodbcsql/ \
|
|
||||||
&& odbcinst -q -d -n "ODBC Driver 13 for SQL Server" \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Install pdo_dblib
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
&& docker-php-ext-install pdo \
|
|
||||||
&& docker-php-ext-configure pdo_dblib --with-libdir=/lib/x86_64-linux-gnu \
|
|
||||||
&& docker-php-ext-install pdo_dblib \
|
|
||||||
&& docker-php-ext-enable pdo_dblib && \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Install sqlsrv y pdo_sqlsrv
|
|
||||||
# extensions:
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
pecl install sqlsrv-4.0.6 && \
|
|
||||||
pecl install pdo_sqlsrv-4.0.6 && \
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
# Set locales for the container
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
apt-get install -y locales \
|
|
||||||
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
|
||||||
&& locale-gen \
|
|
||||||
;fi
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Human Language and Character Encoding Support:
|
# Human Language and Character Encoding Support:
|
||||||
#####################################
|
#####################################
|
||||||
@ -292,8 +223,8 @@ RUN if [ ${MSSQL} = true ]; then \
|
|||||||
ARG INSTALL_INTL=false
|
ARG INSTALL_INTL=false
|
||||||
RUN if [ ${INSTALL_INTL} = true ]; then \
|
RUN if [ ${INSTALL_INTL} = true ]; then \
|
||||||
# Install intl and requirements
|
# Install intl and requirements
|
||||||
apt-get -y update \
|
apt-get update -yqq && \
|
||||||
&& apt-get install -y zlib1g-dev libicu-dev g++ && \
|
apt-get install -y zlib1g-dev libicu-dev g++ && \
|
||||||
docker-php-ext-configure intl && \
|
docker-php-ext-configure intl && \
|
||||||
docker-php-ext-install intl \
|
docker-php-ext-install intl \
|
||||||
;fi
|
;fi
|
||||||
@ -306,19 +237,58 @@ ARG INSTALL_GHOSTSCRIPT=false
|
|||||||
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
||||||
# Install the ghostscript extension
|
# Install the ghostscript extension
|
||||||
# for PDF editing
|
# for PDF editing
|
||||||
apt-get -y update \
|
apt-get update -yqq \
|
||||||
&& apt-get install -y \
|
&& apt-get install -y \
|
||||||
poppler-utils \
|
poppler-utils \
|
||||||
ghostscript \
|
ghostscript \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
|
||||||
|
docker-php-ext-install ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
||||||
|
#####################################
|
||||||
|
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
||||||
|
apt-get update -yqq \
|
||||||
|
&& apt-get install -y apt-transport-https \
|
||||||
|
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||||
|
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
|
||||||
|
# Install Dependencies
|
||||||
|
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
||||||
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
|
&& locale-gen \
|
||||||
|
|
||||||
|
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
||||||
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
|
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
||||||
|
;fi
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
|
|
||||||
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
ADD ./laravel.ini /usr/local/etc/php/conf.d/
|
||||||
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
||||||
|
|
||||||
#RUN rm -r /var/lib/apt/lists/*
|
#RUN rm -r /var/lib/apt/lists/*
|
||||||
|
@ -45,7 +45,7 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
ARG INSTALL_SOAP=false
|
ARG INSTALL_SOAP=false
|
||||||
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
# Install the soap extension
|
# Install the soap extension
|
||||||
apt-get -y update && \
|
apt-get update -yqq && \
|
||||||
apt-get -y install libxml2-dev php-soap && \
|
apt-get -y install libxml2-dev php-soap && \
|
||||||
docker-php-ext-install soap \
|
docker-php-ext-install soap \
|
||||||
;fi
|
;fi
|
||||||
@ -89,6 +89,17 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
|
|||||||
&& docker-php-ext-enable redis \
|
&& docker-php-ext-enable redis \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Swoole EXTENSION FOR PHP 7
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_SWOOLE=false
|
||||||
|
RUN if [ ${INSTALL_SWOOLE} = true ]; then \
|
||||||
|
# Install Php Swoole Extension
|
||||||
|
pecl install swoole \
|
||||||
|
&& docker-php-ext-enable swoole \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# MongoDB:
|
# MongoDB:
|
||||||
#####################################
|
#####################################
|
||||||
@ -156,13 +167,19 @@ RUN if [ ${INSTALL_EXIF} = true ]; then \
|
|||||||
# PHP Aerospike:
|
# PHP Aerospike:
|
||||||
#####################################
|
#####################################
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=false
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
|
||||||
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
|
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -172,7 +189,10 @@ RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
|||||||
&& make install \
|
&& make install \
|
||||||
) \
|
) \
|
||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
&& docker-php-ext-enable aerospike \
|
;fi
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
||||||
|
rm /usr/local/etc/php/conf.d/aerospike.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -202,7 +222,7 @@ RUN if [ ${INSTALL_MYSQLI} = true ]; then \
|
|||||||
|
|
||||||
ARG INSTALL_TOKENIZER=false
|
ARG INSTALL_TOKENIZER=false
|
||||||
RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
|
RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
|
||||||
docker-php-ext-install tokenizer \
|
docker-php-ext-install tokenizer \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -212,6 +232,7 @@ RUN if [ ${INSTALL_TOKENIZER} = true ]; then \
|
|||||||
ARG INSTALL_INTL=false
|
ARG INSTALL_INTL=false
|
||||||
RUN if [ ${INSTALL_INTL} = true ]; then \
|
RUN if [ ${INSTALL_INTL} = true ]; then \
|
||||||
# Install intl and requirements
|
# Install intl and requirements
|
||||||
|
apt-get update -yqq && \
|
||||||
apt-get install -y zlib1g-dev libicu-dev g++ && \
|
apt-get install -y zlib1g-dev libicu-dev g++ && \
|
||||||
docker-php-ext-configure intl && \
|
docker-php-ext-configure intl && \
|
||||||
docker-php-ext-install intl \
|
docker-php-ext-install intl \
|
||||||
@ -225,12 +246,49 @@ ARG INSTALL_GHOSTSCRIPT=false
|
|||||||
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \
|
||||||
# Install the ghostscript extension
|
# Install the ghostscript extension
|
||||||
# for PDF editing
|
# for PDF editing
|
||||||
apt-get -y update \
|
apt-get update -yqq \
|
||||||
&& apt-get install -y \
|
&& apt-get install -y \
|
||||||
poppler-utils \
|
poppler-utils \
|
||||||
ghostscript \
|
ghostscript \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# LDAP:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_LDAP=false
|
||||||
|
RUN if [ ${INSTALL_LDAP} = true ]; then \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y libldap2-dev && \
|
||||||
|
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
|
||||||
|
docker-php-ext-install ldap \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image
|
||||||
|
#####################################
|
||||||
|
# Add Microsoft repo for Microsoft ODBC Driver 13 for Linux
|
||||||
|
apt-get update -yqq && apt-get install -y apt-transport-https \
|
||||||
|
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||||
|
&& curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
|
||||||
|
# Install Dependencies
|
||||||
|
&& ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \
|
||||||
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen \
|
||||||
|
|
||||||
|
# Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version.
|
||||||
|
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||||
|
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
|
||||||
|
;fi
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -11,6 +11,3 @@ upload_max_filesize = 20M
|
|||||||
; Sets max size of post data allowed.
|
; Sets max size of post data allowed.
|
||||||
; http://php.net/post-max-size
|
; http://php.net/post-max-size
|
||||||
post_max_size = 20M
|
post_max_size = 20M
|
||||||
; Enables the MSSQL extensions
|
|
||||||
extension=sqlsrv.so
|
|
||||||
extension=pdo_sqlsrv.so
|
|
@ -2,10 +2,13 @@ FROM redis:latest
|
|||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
## For security settings uncomment, make the dir, copy conf, and also start with the conf, to use it
|
||||||
|
#RUN mkdir -p /usr/local/etc/redis
|
||||||
#COPY redis.conf /usr/local/etc/redis/redis.conf
|
#COPY redis.conf /usr/local/etc/redis/redis.conf
|
||||||
|
|
||||||
VOLUME /data
|
VOLUME /data
|
||||||
|
|
||||||
EXPOSE 6379
|
EXPOSE 6379
|
||||||
|
|
||||||
|
#CMD ["redis-server", "/usr/local/etc/redis/redis.conf"]
|
||||||
CMD ["redis-server"]
|
CMD ["redis-server"]
|
||||||
|
@ -1,11 +1,21 @@
|
|||||||
#!/usr/bin/env bash
|
#!/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
|
#### Build the Docker Images
|
||||||
if [ -n "${PHP_VERSION}" ]; then
|
if [ -n "${PHP_VERSION}" ]; then
|
||||||
cp env-example .env
|
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/=false/=true/g' .env
|
||||||
cat .env
|
cat .env
|
||||||
docker-compose build
|
docker-compose build ${BUILD_SERVICE}
|
||||||
docker images
|
docker images
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -20,7 +30,9 @@ if [ -n "${HUGO_VERSION}" ]; then
|
|||||||
mv ./${HUGO_BIN}/${HUGO_BIN} $HOME/bin/hugo
|
mv ./${HUGO_BIN}/${HUGO_BIN} $HOME/bin/hugo
|
||||||
|
|
||||||
# Remove existing docs
|
# Remove existing docs
|
||||||
rm -r ./docs
|
if [ -d "./docs" ]; then
|
||||||
|
rm -r ./docs
|
||||||
|
fi
|
||||||
|
|
||||||
# Build docs
|
# Build docs
|
||||||
cd DOCUMENTATION
|
cd DOCUMENTATION
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.7-56
|
FROM laradock/workspace:1.8-56
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
@ -46,9 +46,13 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
# Add a non-root user to prevent files being created with root permissions on host machine.
|
# Add a non-root user to prevent files being created with root permissions on host machine.
|
||||||
ARG PUID=1000
|
ARG PUID=1000
|
||||||
ARG PGID=1000
|
ARG PGID=1000
|
||||||
RUN groupadd -g $PGID laradock && \
|
|
||||||
useradd -u $PUID -g laradock -m laradock
|
|
||||||
|
|
||||||
|
ENV PUID ${PUID}
|
||||||
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
apt-get update -yqq
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# SOAP:
|
# SOAP:
|
||||||
@ -60,10 +64,9 @@ ENV INSTALL_SOAP ${INSTALL_SOAP}
|
|||||||
|
|
||||||
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
# Install the PHP SOAP extension
|
# Install the PHP SOAP extension
|
||||||
apt-get -y update && \
|
|
||||||
add-apt-repository -y ppa:ondrej/php && \
|
add-apt-repository -y ppa:ondrej/php && \
|
||||||
apt-get -y install libxml2-dev php5.6-soap && \
|
apt-get update -yqq && \
|
||||||
echo "extension=soap.so" >> /etc/php/5.6/cli/conf.d/40-soap.ini \
|
apt-get -y install libxml2-dev php5.6-soap \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -114,13 +117,17 @@ COPY ./aliases.sh /home/laradock/aliases.sh
|
|||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
USER root
|
USER root
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
@ -129,9 +136,8 @@ RUN echo "" >> ~/.bashrc && \
|
|||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
# Load the xdebug extension only with phpunit commands
|
# Load the xdebug extension only with phpunit commands
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y --force-yes php5.6-xdebug && \
|
apt-get install -y --force-yes php5.6-xdebug && \
|
||||||
sed -i 's/^/;/g' /etc/php/5.6/cli/conf.d/20-xdebug.ini && \
|
sed -i 's/^;//g' /etc/php/5.6/cli/conf.d/20-xdebug.ini && \
|
||||||
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
# ADD for REMOTE debugging
|
# ADD for REMOTE debugging
|
||||||
@ -151,7 +157,7 @@ ENV BLACKFIRE_CLIENT_TOKEN ${BLACKFIRE_CLIENT_TOKEN}
|
|||||||
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
||||||
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
||||||
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
||||||
apt-get update && \
|
apt-get update -yqq && \
|
||||||
apt-get install blackfire-agent \
|
apt-get install blackfire-agent \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -184,7 +190,8 @@ ENV INSTALL_MONGO ${INSTALL_MONGO}
|
|||||||
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
# Install the mongodb extension
|
# Install the mongodb extension
|
||||||
pecl install mongodb && \
|
pecl install mongodb && \
|
||||||
echo "extension=mongodb.so" >> /etc/php/5.6/cli/conf.d/30-mongodb.ini \
|
echo "extension=mongodb.so" >> /etc/php/5.6/mods-available/mongodb.ini && \
|
||||||
|
ln -s /etc/php/5.6/mods-available/mongodb.ini /etc/php/5.6/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -276,15 +283,15 @@ RUN if [ ${INSTALL_YARN} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=true
|
ARG INSTALL_AEROSPIKE=true
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /etc/php/5.6/cli/conf.d/aerospike.ini
|
COPY ./aerospike.ini /etc/php/5.6/cli/conf.d/aerospike.ini
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -296,27 +303,10 @@ RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
|||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = false ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
||||||
rm /etc/php/5.6/cli/conf.d/aerospike.ini \
|
rm /etc/php/5.6/cli/conf.d/aerospike.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
|
||||||
# PHP V8JS:
|
|
||||||
#####################################
|
|
||||||
USER root
|
|
||||||
|
|
||||||
ARG INSTALL_V8JS_EXTENSION=false
|
|
||||||
ENV INSTALL_V8JS_EXTENSION ${INSTALL_V8JS_EXTENSION}
|
|
||||||
|
|
||||||
RUN if [ ${INSTALL_V8JS_EXTENSION} = true ]; then \
|
|
||||||
# Install the php V8JS extension
|
|
||||||
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
|
||||||
&& apt-get update \
|
|
||||||
&& apt-get install -y php-dev php-pear libv8-5.4 \
|
|
||||||
&& pecl install v8js \
|
|
||||||
&& echo "extension=v8js.so" >> /etc/php/5.6/cli/php.ini \
|
|
||||||
;fi
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Non-root user : PHPUnit path
|
# Non-root user : PHPUnit path
|
||||||
#####################################
|
#####################################
|
||||||
@ -348,6 +338,23 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
|||||||
composer global require "laravel/envoy=~1.0" \
|
composer global require "laravel/envoy=~1.0" \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Installer:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=true
|
||||||
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
|
# Install the Laravel Installer
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
&& composer global require "laravel/installer" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Deployer:
|
# Deployer:
|
||||||
#####################################
|
#####################################
|
||||||
@ -372,7 +379,6 @@ ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
|||||||
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
# Preparation
|
# Preparation
|
||||||
apt-get update && \
|
|
||||||
apt-get upgrade -y && \
|
apt-get upgrade -y && \
|
||||||
apt-get install -y build-essential make cmake scons curl git \
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
ruby autoconf automake autoconf-archive \
|
ruby autoconf automake autoconf-archive \
|
||||||
@ -381,7 +387,7 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
libexpat-dev libncurses-dev && \
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
# Install the Linuxbrew
|
# Install the Linuxbrew
|
||||||
git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
@ -394,6 +400,17 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
apt-get -y install php5.6-sybase freetds-bin freetds-common libsybdb5 \
|
||||||
|
&& echo "extension=pdo_dblib.so" > /etc/php/5.6/cli/conf.d/20-pdo_dblib.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Minio:
|
# Minio:
|
||||||
#####################################
|
#####################################
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.7-70
|
FROM laradock/workspace:1.8-70
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
@ -46,9 +46,13 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
# Add a non-root user to prevent files being created with root permissions on host machine.
|
# Add a non-root user to prevent files being created with root permissions on host machine.
|
||||||
ARG PUID=1000
|
ARG PUID=1000
|
||||||
ARG PGID=1000
|
ARG PGID=1000
|
||||||
RUN groupadd -g $PGID laradock && \
|
|
||||||
useradd -u $PUID -g laradock -m laradock
|
|
||||||
|
|
||||||
|
ENV PUID ${PUID}
|
||||||
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
apt-get update -yqq
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# SOAP:
|
# SOAP:
|
||||||
@ -60,8 +64,8 @@ ENV INSTALL_SOAP ${INSTALL_SOAP}
|
|||||||
|
|
||||||
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
# Install the PHP SOAP extension
|
# Install the PHP SOAP extension
|
||||||
apt-get -y update && \
|
|
||||||
add-apt-repository -y ppa:ondrej/php && \
|
add-apt-repository -y ppa:ondrej/php && \
|
||||||
|
apt-get update -yqq && \
|
||||||
apt-get -y install libxml2-dev php7.0-soap \
|
apt-get -y install libxml2-dev php7.0-soap \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -113,13 +117,17 @@ COPY ./aliases.sh /home/laradock/aliases.sh
|
|||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
USER root
|
USER root
|
||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
echo "" >> ~/.bashrc
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
@ -128,9 +136,8 @@ RUN echo "" >> ~/.bashrc && \
|
|||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
# Load the xdebug extension only with phpunit commands
|
# Load the xdebug extension only with phpunit commands
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y --force-yes php7.0-xdebug && \
|
apt-get install -y --force-yes php7.0-xdebug && \
|
||||||
sed -i 's/^/;/g' /etc/php/7.0/cli/conf.d/20-xdebug.ini && \
|
sed -i 's/^;//g' /etc/php/7.0/cli/conf.d/20-xdebug.ini && \
|
||||||
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
# ADD for REMOTE debugging
|
# ADD for REMOTE debugging
|
||||||
@ -150,7 +157,7 @@ ENV BLACKFIRE_CLIENT_TOKEN ${BLACKFIRE_CLIENT_TOKEN}
|
|||||||
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
||||||
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
||||||
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
||||||
apt-get update && \
|
apt-get update -yqq && \
|
||||||
apt-get install blackfire-agent \
|
apt-get install blackfire-agent \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -183,7 +190,8 @@ ENV INSTALL_MONGO ${INSTALL_MONGO}
|
|||||||
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
# Install the mongodb extension
|
# Install the mongodb extension
|
||||||
pecl install mongodb && \
|
pecl install mongodb && \
|
||||||
echo "extension=mongodb.so" >> /etc/php/7.0/cli/conf.d/30-mongodb.ini \
|
echo "extension=mongodb.so" >> /etc/php/7.0/mods-available/mongodb.ini && \
|
||||||
|
ln -s /etc/php/7.0/mods-available/mongodb.ini /etc/php/7.0/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -275,15 +283,15 @@ RUN if [ ${INSTALL_YARN} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=true
|
ARG INSTALL_AEROSPIKE=true
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /etc/php/7.0/cli/conf.d/aerospike.ini
|
COPY ./aerospike.ini /etc/php/7.0/cli/conf.d/aerospike.ini
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -295,7 +303,7 @@ RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
|||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = false ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
||||||
rm /etc/php/7.0/cli/conf.d/aerospike.ini \
|
rm /etc/php/7.0/cli/conf.d/aerospike.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -304,14 +312,14 @@ RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = false ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_V8JS_EXTENSION=false
|
ARG INSTALL_V8JS=false
|
||||||
ENV INSTALL_V8JS_EXTENSION ${INSTALL_V8JS_EXTENSION}
|
ENV INSTALL_V8JS ${INSTALL_V8JS}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_V8JS_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
# Install the php V8JS extension
|
# Install the php V8JS extension
|
||||||
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
||||||
&& apt-get update \
|
&& apt-get update -yqq \
|
||||||
&& apt-get install -y php-dev php-pear libv8-5.4 \
|
&& apt-get install -y php7.0-xml php7.0-dev php-pear libv8-5.4 \
|
||||||
&& pecl install v8js \
|
&& pecl install v8js \
|
||||||
&& echo "extension=v8js.so" >> /etc/php/7.0/cli/php.ini \
|
&& echo "extension=v8js.so" >> /etc/php/7.0/cli/php.ini \
|
||||||
;fi
|
;fi
|
||||||
@ -347,6 +355,23 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
|||||||
composer global require "laravel/envoy=~1.0" \
|
composer global require "laravel/envoy=~1.0" \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Installer:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=true
|
||||||
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
|
# Install the Laravel Installer
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
&& composer global require "laravel/installer" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Deployer:
|
# Deployer:
|
||||||
#####################################
|
#####################################
|
||||||
@ -371,7 +396,6 @@ ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
|||||||
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
# Preparation
|
# Preparation
|
||||||
apt-get update && \
|
|
||||||
apt-get upgrade -y && \
|
apt-get upgrade -y && \
|
||||||
apt-get install -y build-essential make cmake scons curl git \
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
ruby autoconf automake autoconf-archive \
|
ruby autoconf automake autoconf-archive \
|
||||||
@ -380,7 +404,7 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
libexpat-dev libncurses-dev && \
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
# Install the Linuxbrew
|
# Install the Linuxbrew
|
||||||
git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
@ -393,6 +417,83 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
|||||||
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=true
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# Install Depenencies:
|
||||||
|
#####################################
|
||||||
|
cd / && \
|
||||||
|
apt-get install -y --force-yes wget apt-transport-https curl freetds-common libsybdb5 freetds-bin unixodbc unixodbc-dev && \
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# The following steps were taken from
|
||||||
|
# Microsoft's github account:
|
||||||
|
# https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Add PHP 7 repository
|
||||||
|
# for Debian jessie
|
||||||
|
# And System upgrade
|
||||||
|
cd / && \
|
||||||
|
echo "deb http://packages.dotdeb.org jessie all" \
|
||||||
|
| tee /etc/apt/sources.list.d/dotdeb.list \
|
||||||
|
&& wget -qO- https://www.dotdeb.org/dotdeb.gpg \
|
||||||
|
| apt-key add - \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
&& apt-get upgrade -qq && \
|
||||||
|
|
||||||
|
# Install UnixODBC
|
||||||
|
# Compile odbc_config as it is not part of unixodbc package
|
||||||
|
cd / && \
|
||||||
|
apt-get install -y whiptail \
|
||||||
|
unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \
|
||||||
|
&& dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \
|
||||||
|
&& cd unixodbc-*/ \
|
||||||
|
&& ./configure && make && make install \
|
||||||
|
&& cp -v ./exe/odbc_config /usr/local/bin/ && \
|
||||||
|
|
||||||
|
# Fake uname for install.sh
|
||||||
|
printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \
|
||||||
|
| tee /usr/local/bin/uname \
|
||||||
|
&& chmod +x /usr/local/bin/uname && \
|
||||||
|
|
||||||
|
# Microsoft ODBC Driver 13 for Linux
|
||||||
|
# Note: There's a copy of this tar on my hubiC
|
||||||
|
cd / && \
|
||||||
|
wget -nv -O msodbcsql-13.0.0.0.tar.gz \
|
||||||
|
"https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \
|
||||||
|
&& tar -xf msodbcsql-13.0.0.0.tar.gz \
|
||||||
|
&& cd msodbcsql-*/ \
|
||||||
|
&& ldd lib64/libmsodbcsql-13.0.so.0.0 \
|
||||||
|
&& ./install.sh install --accept-license \
|
||||||
|
&& ls -l /opt/microsoft/msodbcsql/ \
|
||||||
|
&& odbcinst -q -d -n "ODBC Driver 13 for SQL Server" && \
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Install sqlsrv y pdo_sqlsrv
|
||||||
|
# extensions:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
pecl install sqlsrv-4.0.8 && \
|
||||||
|
pecl install pdo_sqlsrv-4.0.8 && \
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Set locales for the container
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
apt-get install -y locales \
|
||||||
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
|
&& locale-gen \
|
||||||
|
&& echo "extension=sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-sqlsrv.ini \
|
||||||
|
&& echo "extension=pdo_sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-pdo_sqlsrv.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Minio:
|
# Minio:
|
||||||
#####################################
|
#####################################
|
||||||
@ -429,8 +530,6 @@ RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
|||||||
|
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
USER laradock
|
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
# Note: Base Image name format {image-tag}-{php-version}
|
# Note: Base Image name format {image-tag}-{php-version}
|
||||||
#
|
#
|
||||||
|
|
||||||
FROM laradock/workspace:1.7-71
|
FROM laradock/workspace:1.8-71
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
@ -46,8 +46,28 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
# Add a non-root user to prevent files being created with root permissions on host machine.
|
# Add a non-root user to prevent files being created with root permissions on host machine.
|
||||||
ARG PUID=1000
|
ARG PUID=1000
|
||||||
ARG PGID=1000
|
ARG PGID=1000
|
||||||
RUN groupadd -g $PGID laradock && \
|
|
||||||
useradd -u $PUID -g laradock -m laradock
|
ENV PUID ${PUID}
|
||||||
|
ENV PGID ${PGID}
|
||||||
|
|
||||||
|
RUN groupadd -g ${PGID} laradock && \
|
||||||
|
useradd -u ${PUID} -g laradock -m laradock && \
|
||||||
|
apt-get update -yqq
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SOAP:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_SOAP=false
|
||||||
|
ENV INSTALL_SOAP ${INSTALL_SOAP}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_SOAP} = true ]; then \
|
||||||
|
# Install the PHP SOAP extension
|
||||||
|
add-apt-repository -y ppa:ondrej/php && \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install libxml2-dev php7.1-soap \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Set Timezone
|
# Set Timezone
|
||||||
@ -81,7 +101,29 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
COPY ./crontab /var/spool/cron/crontabs
|
COPY ./crontab /etc/cron.d
|
||||||
|
RUN chmod -R 644 /etc/cron.d
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# User Aliases
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
COPY ./aliases.sh /home/laradock/aliases.sh
|
||||||
|
RUN echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
|
USER root
|
||||||
|
RUN echo "" >> ~/.bashrc && \
|
||||||
|
echo "# Load Custom Aliases" >> ~/.bashrc && \
|
||||||
|
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
sed -i 's/\r//' /home/laradock/aliases.sh && \
|
||||||
|
sed -i 's/^#! \/bin\/sh/#! \/bin\/bash/' /home/laradock/aliases.sh
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# xDebug:
|
# xDebug:
|
||||||
@ -90,9 +132,8 @@ COPY ./crontab /var/spool/cron/crontabs
|
|||||||
ARG INSTALL_XDEBUG=false
|
ARG INSTALL_XDEBUG=false
|
||||||
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
|
||||||
# Load the xdebug extension only with phpunit commands
|
# Load the xdebug extension only with phpunit commands
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y --force-yes php-xdebug && \
|
apt-get install -y --force-yes php-xdebug && \
|
||||||
sed -i 's/^/;/g' /etc/php/7.1/cli/conf.d/20-xdebug.ini && \
|
sed -i 's/^;//g' /etc/php/7.1/cli/conf.d/20-xdebug.ini && \
|
||||||
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
# ADD for REMOTE debugging
|
# ADD for REMOTE debugging
|
||||||
@ -112,7 +153,7 @@ ENV BLACKFIRE_CLIENT_TOKEN ${BLACKFIRE_CLIENT_TOKEN}
|
|||||||
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
RUN if [ ${INSTALL_XDEBUG} = false -a ${INSTALL_BLACKFIRE} = true ]; then \
|
||||||
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
curl -L https://packagecloud.io/gpg.key | apt-key add - && \
|
||||||
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list && \
|
||||||
apt-get update && \
|
apt-get update -yqq && \
|
||||||
apt-get install blackfire-agent \
|
apt-get install blackfire-agent \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
@ -145,7 +186,8 @@ ENV INSTALL_MONGO ${INSTALL_MONGO}
|
|||||||
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
RUN if [ ${INSTALL_MONGO} = true ]; then \
|
||||||
# Install the mongodb extension
|
# Install the mongodb extension
|
||||||
pecl install mongodb && \
|
pecl install mongodb && \
|
||||||
echo "extension=mongodb.so" >> /etc/php/7.1/cli/conf.d/30-mongodb.ini \
|
echo "extension=mongodb.so" >> /etc/php/7.1/mods-available/mongodb.ini && \
|
||||||
|
ln -s /etc/php/7.1/mods-available/mongodb.ini /etc/php/7.1/cli/conf.d/30-mongodb.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -176,7 +218,7 @@ ENV INSTALL_NODE ${INSTALL_NODE}
|
|||||||
ENV NVM_DIR /home/laradock/.nvm
|
ENV NVM_DIR /home/laradock/.nvm
|
||||||
RUN if [ ${INSTALL_NODE} = true ]; then \
|
RUN if [ ${INSTALL_NODE} = true ]; then \
|
||||||
# Install nvm (A Node Version Manager)
|
# Install nvm (A Node Version Manager)
|
||||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.6/install.sh | bash && \
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash && \
|
||||||
. $NVM_DIR/nvm.sh && \
|
. $NVM_DIR/nvm.sh && \
|
||||||
nvm install ${NODE_VERSION} && \
|
nvm install ${NODE_VERSION} && \
|
||||||
nvm use ${NODE_VERSION} && \
|
nvm use ${NODE_VERSION} && \
|
||||||
@ -209,10 +251,16 @@ USER laradock
|
|||||||
|
|
||||||
ARG INSTALL_YARN=false
|
ARG INSTALL_YARN=false
|
||||||
ENV INSTALL_YARN ${INSTALL_YARN}
|
ENV INSTALL_YARN ${INSTALL_YARN}
|
||||||
|
ARG YARN_VERSION=latest
|
||||||
|
ENV YARN_VERSION ${YARN_VERSION}
|
||||||
|
|
||||||
RUN if [ ${INSTALL_YARN} = true ]; then \
|
RUN if [ ${INSTALL_YARN} = true ]; then \
|
||||||
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \
|
||||||
curl -o- -L https://yarnpkg.com/install.sh | bash && \
|
if [ ${YARN_VERSION} = "latest" ]; then \
|
||||||
|
curl -o- -L https://yarnpkg.com/install.sh | bash; \
|
||||||
|
else \
|
||||||
|
curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version ${YARN_VERSION}; \
|
||||||
|
fi && \
|
||||||
echo "" >> ~/.bashrc && \
|
echo "" >> ~/.bashrc && \
|
||||||
echo 'export PATH="$HOME/.yarn/bin:$PATH"' >> ~/.bashrc \
|
echo 'export PATH="$HOME/.yarn/bin:$PATH"' >> ~/.bashrc \
|
||||||
;fi
|
;fi
|
||||||
@ -231,15 +279,19 @@ RUN if [ ${INSTALL_YARN} = true ]; then \
|
|||||||
#####################################
|
#####################################
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ARG INSTALL_AEROSPIKE_EXTENSION=true
|
ARG INSTALL_AEROSPIKE=false
|
||||||
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
|
ENV INSTALL_AEROSPIKE ${INSTALL_AEROSPIKE}
|
||||||
|
|
||||||
# Copy aerospike configration for remote debugging
|
# Copy aerospike configration for remote debugging
|
||||||
COPY ./aerospike.ini /etc/php/7.1/cli/conf.d/aerospike.ini
|
COPY ./aerospike.ini /etc/php/7.1/cli/conf.d/aerospike.ini
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
|
||||||
|
# Fix dependencies for PHPUnit within aerospike extension
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get -y install sudo wget && \
|
||||||
|
|
||||||
# Install the php aerospike extension
|
# Install the php aerospike extension
|
||||||
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
|
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/aerospike/aerospike-client-php/archive/3.4.14.tar.gz" \
|
||||||
&& mkdir -p aerospike-client-php \
|
&& mkdir -p aerospike-client-php \
|
||||||
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
|
||||||
&& ( \
|
&& ( \
|
||||||
@ -251,10 +303,27 @@ RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
|
|||||||
&& rm /tmp/aerospike-client-php.tar.gz \
|
&& rm /tmp/aerospike-client-php.tar.gz \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = false ]; then \
|
RUN if [ ${INSTALL_AEROSPIKE} = false ]; then \
|
||||||
rm /etc/php/7.1/cli/conf.d/aerospike.ini \
|
rm /etc/php/7.1/cli/conf.d/aerospike.ini \
|
||||||
;fi
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# PHP V8JS:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_V8JS=false
|
||||||
|
ENV INSTALL_V8JS ${INSTALL_V8JS}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_V8JS} = true ]; then \
|
||||||
|
# Install the php V8JS extension
|
||||||
|
add-apt-repository -y ppa:pinepain/libv8-5.4 \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
&& apt-get install -y php-xml php-dev php-pear libv8-5.4 \
|
||||||
|
&& pecl install v8js \
|
||||||
|
&& echo "extension=v8js.so" >> /etc/php/7.1/cli/php.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
# Non-root user : PHPUnit path
|
# Non-root user : PHPUnit path
|
||||||
#####################################
|
#####################################
|
||||||
@ -265,6 +334,206 @@ USER laradock
|
|||||||
RUN echo "" >> ~/.bashrc && \
|
RUN echo "" >> ~/.bashrc && \
|
||||||
echo 'export PATH="/var/www/vendor/bin:$PATH"' >> ~/.bashrc
|
echo 'export PATH="/var/www/vendor/bin:$PATH"' >> ~/.bashrc
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Artisan Alias
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
RUN echo "" >> ~/.bashrc && \
|
||||||
|
echo 'alias art="php artisan"' >> ~/.bashrc
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Envoy:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_ENVOY=false
|
||||||
|
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
|
||||||
|
# Install the Laravel Envoy
|
||||||
|
composer global require "laravel/envoy=~1.0" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Laravel Installer:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_LARAVEL_INSTALLER=false
|
||||||
|
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
|
||||||
|
# Install the Laravel Installer
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc \
|
||||||
|
&& composer global require "laravel/installer" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Deployer:
|
||||||
|
#####################################
|
||||||
|
USER laradock
|
||||||
|
|
||||||
|
ARG INSTALL_DEPLOYER=false
|
||||||
|
ENV INSTALL_DEPLOYER ${INSTALL_DEPLOYER}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
|
||||||
|
# Install the Deployer
|
||||||
|
composer global require "deployer/deployer" \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Linuxbrew:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ARG INSTALL_LINUXBREW=false
|
||||||
|
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
|
||||||
|
|
||||||
|
# Preparation
|
||||||
|
apt-get upgrade -y && \
|
||||||
|
apt-get install -y build-essential make cmake scons curl git \
|
||||||
|
ruby autoconf automake autoconf-archive \
|
||||||
|
gettext libtool flex bison \
|
||||||
|
libbz2-dev libcurl4-openssl-dev \
|
||||||
|
libexpat-dev libncurses-dev && \
|
||||||
|
|
||||||
|
# Install the Linuxbrew
|
||||||
|
git clone --depth=1 https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
|
||||||
|
|
||||||
|
echo "" >> ~/.bashrc && \
|
||||||
|
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
|
||||||
|
# Setup linuxbrew
|
||||||
|
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
|
||||||
|
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export MANPATH="$LINUXBREWHOME/man:$MANPATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export PKG_CONFIG_PATH="$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
|
||||||
|
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# SQL SERVER:
|
||||||
|
#####################################
|
||||||
|
ARG INSTALL_MSSQL=false
|
||||||
|
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||||
|
#####################################
|
||||||
|
# Install Depenencies:
|
||||||
|
#####################################
|
||||||
|
cd / && \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y --force-yes wget apt-transport-https curl freetds-common libsybdb5 freetds-bin unixodbc unixodbc-dev && \
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# The following steps were taken from
|
||||||
|
# Microsoft's github account:
|
||||||
|
# https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
# Add PHP 7 repository
|
||||||
|
# for Debian jessie
|
||||||
|
# And System upgrade
|
||||||
|
cd / && \
|
||||||
|
echo "deb http://packages.dotdeb.org jessie all" \
|
||||||
|
| tee /etc/apt/sources.list.d/dotdeb.list \
|
||||||
|
&& wget -qO- https://www.dotdeb.org/dotdeb.gpg \
|
||||||
|
| apt-key add - \
|
||||||
|
&& apt-get update -yqq \
|
||||||
|
&& apt-get upgrade -qq && \
|
||||||
|
|
||||||
|
# Install UnixODBC
|
||||||
|
# Compile odbc_config as it is not part of unixodbc package
|
||||||
|
cd / && \
|
||||||
|
apt-get update -yqq && \
|
||||||
|
apt-get install -y whiptail \
|
||||||
|
unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \
|
||||||
|
&& dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \
|
||||||
|
&& cd unixodbc-*/ \
|
||||||
|
&& ./configure && make && make install \
|
||||||
|
&& cp -v ./exe/odbc_config /usr/local/bin/ && \
|
||||||
|
|
||||||
|
# Fake uname for install.sh
|
||||||
|
printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \
|
||||||
|
| tee /usr/local/bin/uname \
|
||||||
|
&& chmod +x /usr/local/bin/uname && \
|
||||||
|
|
||||||
|
# Microsoft ODBC Driver 13 for Linux
|
||||||
|
# Note: There's a copy of this tar on my hubiC
|
||||||
|
cd / && \
|
||||||
|
wget -nv -O msodbcsql-13.0.0.0.tar.gz \
|
||||||
|
"https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \
|
||||||
|
&& tar -xf msodbcsql-13.0.0.0.tar.gz \
|
||||||
|
&& cd msodbcsql-*/ \
|
||||||
|
&& ldd lib64/libmsodbcsql-13.0.so.0.0 \
|
||||||
|
&& ./install.sh install --accept-license \
|
||||||
|
&& ls -l /opt/microsoft/msodbcsql/ \
|
||||||
|
&& odbcinst -q -d -n "ODBC Driver 13 for SQL Server" && \
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Install sqlsrv y pdo_sqlsrv
|
||||||
|
# extensions:
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
pecl install sqlsrv-4.0.8 && \
|
||||||
|
pecl install pdo_sqlsrv-4.0.8 && \
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Set locales for the container
|
||||||
|
#####################################
|
||||||
|
|
||||||
|
apt-get install -y locales \
|
||||||
|
&& echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \
|
||||||
|
&& locale-gen \
|
||||||
|
&& echo "extension=sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-sqlsrv.ini \
|
||||||
|
&& echo "extension=pdo_sqlsrv.so" > /etc/php/7.1/cli/conf.d/20-pdo_sqlsrv.ini \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Minio:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_MC=false
|
||||||
|
ENV INSTALL_MC ${INSTALL_MC}
|
||||||
|
|
||||||
|
COPY mc/config.json /root/.mc/config.json
|
||||||
|
|
||||||
|
RUN if [ ${INSTALL_MC} = true ]; then\
|
||||||
|
curl -fsSL -o /usr/local/bin/mc https://dl.minio.io/client/mc/release/linux-amd64/mc && \
|
||||||
|
chmod +x /usr/local/bin/mc \
|
||||||
|
;fi
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Symfony:
|
||||||
|
#####################################
|
||||||
|
USER root
|
||||||
|
ARG INSTALL_SYMFONY=false
|
||||||
|
ENV INSTALL_SYMFONY ${INSTALL_SYMFONY}
|
||||||
|
RUN if [ ${INSTALL_SYMFONY} = true ]; then \
|
||||||
|
|
||||||
|
mkdir -p /usr/local/bin \
|
||||||
|
&& curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony \
|
||||||
|
&& chmod a+x /usr/local/bin/symfony \
|
||||||
|
|
||||||
|
# Symfony 3 alias
|
||||||
|
&& echo 'alias dev="php bin/console -e=dev"' >> ~/.bashrc \
|
||||||
|
&& echo 'alias prod="php bin/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
|
# Symfony 2 alias
|
||||||
|
# && echo 'alias dev="php app/console -e=dev"' >> ~/.bashrc \
|
||||||
|
# && echo 'alias prod="php app/console -e=prod"' >> ~/.bashrc \
|
||||||
|
|
||||||
|
;fi
|
||||||
|
|
||||||
|
USER laradock
|
||||||
|
|
||||||
#
|
#
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# Final Touch
|
# Final Touch
|
||||||
|
Reference in New Issue
Block a user