Compare commits

..

14 Commits

Author SHA1 Message Date
0d8ff4771d 修改本地服务 2023-08-04 10:32:07 +08:00
82a135ab58 Merge pull request #3408 from makowskid/npm-check-updates
npm-check-updates CLI functionality added
2023-07-16 16:11:52 +08:00
1c2f07ca06 Merge pull request #3415 from abordage/update-minio-docs
Update Minio docs
2023-07-13 23:06:04 +08:00
7f7e921c4e Update Minio docs 2023-07-12 19:58:30 +03:00
f0f73ca34f Update Minio docs 2023-07-12 19:41:28 +03:00
d6c9cc27dd add missing png icon 2023-07-11 17:04:21 +02:00
457a25fb40 refresh sponsors list 2023-07-11 16:58:17 +02:00
920cf66240 Adding support for npm-check-updates within Workspace container. 2023-06-29 17:43:50 +05:00
e680ad7361 Adding support for npm-check-updates within Workspace container. 2023-06-29 17:13:44 +05:00
66b86963ae Merge pull request #5 from laradock/master
fork sync
2023-06-29 11:23:22 +00:00
7b1eee549f Merge pull request #3397 from reishou/master
feat: add mailpit
2023-06-21 08:54:20 +08:00
30265fd5e8 Merge pull request #3400 from andrekutianski/fix-oci8-php81
fix: oci8 fails install on PHP 8.1
2023-06-21 08:54:03 +08:00
2cc022b112 fix: oci8 fails install on PHP 8.1
Oracle OCI8 fails to install on PHP 8.1 due the new release available, created conditional to check compatibility.
2023-06-10 19:01:44 -03:00
f661694a81 feat: add mailpit 2023-06-04 22:12:34 +07:00
17 changed files with 187 additions and 47 deletions

View File

@ -122,6 +122,7 @@ WORKSPACE_INSTALL_NPM_GULP=true
WORKSPACE_INSTALL_NPM_BOWER=false
WORKSPACE_INSTALL_NPM_VUE_CLI=true
WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false
WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI=false
WORKSPACE_INSTALL_PHPREDIS=true
WORKSPACE_INSTALL_WORKSPACE_SSH=false
WORKSPACE_INSTALL_SUBVERSION=false
@ -1079,3 +1080,7 @@ KEYCLOAK_POSTGRES_HOST=postgres
KEYCLOAK_POSTGRES_USER=laradock_keycloak
KEYCLOAK_POSTGRES_PASSWORD=laradock_keycloak
KEYCLOAK_POSTGRES_DB=laradock_keycloak
### Mailpit #################################################
MAILPIT_HTTP_PORT=8125
MAILPIT_SMTP_PORT=1125

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1232,39 +1232,43 @@ A package ([Laravel RethinkDB](https://github.com/duxet/laravel-rethinkdb)) is b
## Use Minio
1. Configure Minio:
- On the workspace container, change `INSTALL_MC` to true to get the client
- Set `MINIO_ACCESS_KEY` and `MINIO_ACCESS_SECRET` if you wish to set proper keys
- You can change some settings in the `.env` file (`MINIO_*`)
- You can install Minio Client on the workspace container: `WORKSPACE_INSTALL_MC=true`
2. Run the Minio Container (`minio`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d minio
```
3. Open your browser and visit the localhost on port **9000** at the following URL: `http://localhost:9000`
4. Create a bucket either through the webui or using the mc client:
4. Create a bucket either through the webui or using the Minio Client:
```bash
mc mb minio/bucket
```
5 - When configuring your other clients use the following details:
```
AWS_URL=http://minio:9000
AWS_ACCESS_KEY_ID=access
AWS_SECRET_ACCESS_KEY=secretkey
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=test
AWS_PATH_STYLE=true
```
6 - In `filesystems.php` you shoud use the following details (s3):
```
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'endpoint' => env('AWS_URL'),
'use_path_style_endpoint' => env('AWS_PATH_STYLE', false)
],
```
`'AWS_PATH_STYLE'` shout set to true only for local purpouse
5. When configuring your other clients use the following details:
```
AWS_URL=http://minio:9000
AWS_ACCESS_KEY_ID=access
AWS_SECRET_ACCESS_KEY=secretkey
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=test
AWS_USE_PATH_STYLE_ENDPOINT=true
```
6. In `filesystems.php` you should use the following details (s3):
```php
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'endpoint' => env('AWS_URL'),
'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false)
],
```
`AWS_USE_PATH_STYLE_ENDPOINT` should set to true only for local purpose
@ -1507,6 +1511,29 @@ docker-compose up -d keycloak
- Username: `admin`
- Password: `secret`
<br>
<a name="use Mailpit"></a>
## Use Mailpit
1. Run the Mailpit Container (`mailpit`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d mailpit
```
2. Open your browser and visit the localhost on port 8125: `http://localhost:8125`
3. Setup config in your Laravel projects .env file
```text
MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1125
MAIL_USERNAME=null
MAIL_PASSWORD=null
```
<br>
<a name="CodeIgniter"></a>
@ -1958,7 +1985,19 @@ To install NPM ANGULAR CLI in the Workspace container
3 - Re-build the container `docker-compose build workspace`
<br>
<a name="Install-npm-check-updates"></a>
## Install npm-check-updates CLI
To install npm-check-updates CLI [here](https://www.npmjs.com/package/npm-check-updates) in the Workspace container
1 - Open the `.env` file
2 - Make sure Node is also being installed (`WORKSPACE_INSTALL_NODE` set to `true`)
3 - Search for the `WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI` argument under the Workspace Container and set it to `true`
4 - Re-build the container `docker-compose build workspace`

View File

@ -386,10 +386,11 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a>
<a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a>
<a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://sista.ai/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/sista-ai-icon.png" height="75px" alt="Sista AI - Unlock Your Full Potential With a Personal AI Coach. (www.sista.ai)"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato - Build PHP API's faster!"></a>
<!-- <a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a> -->
<!-- <a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a> -->
<!-- <a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a> -->
<!-- <a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a> -->
<!-- <a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti"></a> -->

View File

@ -192,10 +192,11 @@ Sponsoring is an act of giving in a different fashion. 🌱
<p align="center">
<a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a>
<a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a>
<a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato Build PHP API's faster"></a>
<a href="https://sista.ai/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/sista-ai-icon.png" height="75px" alt="Sista AI - Unlock Your Full Potential With a Personal AI Coach. (www.sista.ai)"></a>
<a href="http://apiato.io/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/apiato.png" height="75px" alt="Apiato - Build PHP API's faster!"></a>
<!-- <a href="https://kasynohex.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/PLD.png" height="75px" alt="KasynoHEX.com Polska"></a> -->
<!-- <a href="https://onlinecasinohex.ca/online-casinos/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/CA.png" height="75px" alt="Online casino list in Canada by OnlineCasinoHEX.ca"></a> -->
<!-- <a href="https://aussiecasinohex.com/online-pokies/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/AU.png" height="75px" alt="Online pokies by AussieCasinoHEX.com"></a> -->
<!-- <a href="https://www.bestonlinecasino.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/bestonlinecasino.jpg" height="75px" alt="We thank bestonlinecasino.com for their support"></a> -->
<!-- <a href="https://casinopilotti.com/" target="_blank" style="margin-right: 4em"><img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/custom-sponsors/casinopilotti.png" height="75px" alt="CasinoPilotti"></a> -->

View File

@ -3,6 +3,8 @@ networks:
driver: ${NETWORKS_DRIVER}
backend:
driver: ${NETWORKS_DRIVER}
custom_network:
driver: bridge
volumes:
mysql:
driver: ${VOLUMES_DRIVER}
@ -102,6 +104,7 @@ services:
- INSTALL_NPM_BOWER=${WORKSPACE_INSTALL_NPM_BOWER}
- INSTALL_NPM_VUE_CLI=${WORKSPACE_INSTALL_NPM_VUE_CLI}
- INSTALL_NPM_ANGULAR_CLI=${WORKSPACE_INSTALL_NPM_ANGULAR_CLI}
- INSTALL_NPM_CHECK_UPDATES_CLI=${WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI}
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
- INSTALL_WP_CLI=${WORKSPACE_INSTALL_WP_CLI}
- INSTALL_DRUPAL_CONSOLE=${WORKSPACE_INSTALL_DRUPAL_CONSOLE}
@ -193,6 +196,8 @@ services:
- "${WORKSPACE_VUE_CLI_UI_HOST_PORT}:8000"
- "${WORKSPACE_ANGULAR_CLI_SERVE_HOST_PORT}:4200"
- "${WORKSPACE_VITE_PORT}:5173"
- "${TCP_HOST_PORT}:5291"
- "${UDP_HOST_PORT}:5292"
tty: true
environment:
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
@ -202,8 +207,8 @@ services:
- DOCKER_CERT_PATH=/certs/client
- CHOKIDAR_USEPOLLING=true
networks:
- frontend
- backend
- custom_network
container_name: workspace
links:
- docker-in-docker
@ -315,7 +320,7 @@ services:
depends_on:
- workspace
networks:
- backend
- custom_network
links:
- docker-in-docker
@ -370,7 +375,7 @@ services:
extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}"
networks:
- backend
- custom_network
### Laravel Horizon ############################################
laravel-horizon:
build:
@ -442,8 +447,7 @@ services:
depends_on:
- php-fpm
networks:
- frontend
- backend
- custom_network
### OpenResty Server #########################################
openresty:
@ -554,7 +558,7 @@ services:
ports:
- "${MYSQL_PORT}:3306"
networks:
- backend
- custom_network
### Percona ################################################
percona:
@ -755,7 +759,8 @@ services:
ports:
- "${REDIS_PORT}:6379"
networks:
- backend
- custom_network
container_name: redis
### Redis Cluster ##########################################
redis-cluster:
@ -857,7 +862,8 @@ services:
depends_on:
- php-fpm
networks:
- backend
- custom_network
container_name: rabbitmq
### Mercure #############################################
mercure:
@ -1156,6 +1162,16 @@ services:
- frontend
- backend
### Mailpit ##############################################
mailpit:
build: ./mailpit
ports:
- "${MAILPIT_HTTP_PORT}:8025"
- "${MAILPIT_SMTP_PORT}:1025"
networks:
- frontend
- backend
### Selenium ###############################################
selenium:
build: ./selenium
@ -1444,7 +1460,8 @@ services:
ports:
- 9010:9000
networks:
- backend
- custom_network
container_name: portainer
### Gitlab ################################################
gitlab:
@ -1476,7 +1493,8 @@ services:
- "${GITLAB_HOST_HTTPS_PORT}:443"
- "${GITLAB_HOST_SSH_PORT}:22"
networks:
- backend
- custom_network
container_name: gitlab
depends_on:
- redis
- postgres
@ -2125,3 +2143,20 @@ services:
networks:
- frontend
- backend
### gitea ##################################################
gitea:
build: ./gitea
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
networks:
- custom_network
container_name: gitea
ports:
- "4300:3000"
- "2221:2222"

2
gitea/Dockerfile Normal file
View File

@ -0,0 +1,2 @@
FROM gitea/gitea:latest-rootless
LABEL maintainer="ykxiao <yk_9001@icloud.com>"

3
mailpit/Dockerfile Normal file
View File

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

View File

@ -0,0 +1,45 @@
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name mes.api.com;
root /var/www/mes-admin-api/public;
index index.php;
location = /index.php {
# Ensure that there is no such file named "not_exists"
# in your "public" directory.
try_files /not_exists @swoole;
}
# any php files must not be accessed
#location ~* \.php$ {
# return 404;
#}
location / {
try_files $uri $uri/ @swoole;
}
location @swoole {
set $suffix "";
if ($uri = /index.php) {
set $suffix ?$query_string;
}
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header Scheme $scheme;
proxy_set_header SERVER_PORT $server_port;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
# IF https
# proxy_set_header HTTPS "on";
proxy_pass http://workspace:4200$suffix;
}
}

View File

@ -637,6 +637,8 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
echo 'instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.2.0; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.0.1; \
elif [ $(php -r "echo PHP_MAJOR_VERSION . PHP_MINOR_VERSION;") = "81" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.2.1; \
else \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8; \
fi \

View File

@ -1,8 +1,9 @@
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/artisan queue:work --sleep=3 --tries=3
command=php /var/www/mes-admin-api/artisan queue:work --tries=3
autostart=true
autorestart=true
numprocs=8
user=laradock
numprocs=3
user=root
redirect_stderr=true
stdout_logfile=/var/www/mes-admin-api/storage/logs/laravel-worker.log

View File

@ -738,6 +738,7 @@ ARG INSTALL_NPM_GULP=false
ARG INSTALL_NPM_BOWER=false
ARG INSTALL_NPM_VUE_CLI=false
ARG INSTALL_NPM_ANGULAR_CLI=false
ARG INSTALL_NPM_CHECK_UPDATES_CLI=false
ARG NPM_REGISTRY
ENV NPM_REGISTRY ${NPM_REGISTRY}
ARG NPM_FETCH_RETRIES
@ -780,6 +781,9 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
&& if [ ${INSTALL_NPM_ANGULAR_CLI} = true ]; then \
npm install -g @angular/cli \
;fi \
&& if [ ${INSTALL_NPM_CHECK_UPDATES_CLI} = true ]; then \
npm install -g npm-check-updates \
;fi \
;fi
# Wouldn't execute when added to the RUN statement in the above block
@ -962,6 +966,8 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \
echo 'instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/' | pecl install oci8-2.2.0; \
elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;") = "80000" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.0.1; \
elif [ $(php -r "echo PHP_MAJOR_VERSION . PHP_MINOR_VERSION;") = "81" ]; then \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8-3.2.1; \
else \
echo "instantclient,/opt/oracle/instantclient_${ORACLE_INSTANT_CLIENT_VERSION}/" | pecl install oci8; \
fi \