docker ready for api (no app yet)
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
COMPOSE_PROJECT_NAME=enfrancais
|
COMPOSE_PROJECT_NAME=enfrancais
|
||||||
|
|
||||||
API_ROOT=./api
|
API_ROOT=./api
|
||||||
CLIENT_ROOT=./client
|
APP_ROOT=./app
|
||||||
LOG_ROOT=./log
|
LOG_ROOT=./log
|
||||||
|
|
||||||
DB_IMPORTE_FILE=./ressources/enfrancais.sql
|
DB_IMPORTE_FILE=./ressources/enfrancais.sql
|
||||||
|
|||||||
+2
-5
@@ -1,7 +1,4 @@
|
|||||||
public_html/*
|
app/*
|
||||||
public_html_legacy/*
|
api/*
|
||||||
drupal7/*
|
|
||||||
log/*
|
log/*
|
||||||
*.sql
|
*.sql
|
||||||
bin/syncfiles.sh
|
|
||||||
solr_cores/*
|
|
||||||
|
|||||||
+6
-9
@@ -1,9 +1,6 @@
|
|||||||
[submodule "public_html_legacy"]
|
[submodule "api"]
|
||||||
path = public_html_legacy
|
path = api
|
||||||
url = https://figureslibres.io/gogs/bachir/materio-base-d7.git
|
url = https://figureslibres.io/gogs/bachir/D9-enfrancais.git
|
||||||
[submodule "public_html"]
|
[submodule "app"]
|
||||||
path = public_html
|
path = app
|
||||||
url = https://figureslibres.io/gogs/bachir/materio-d8.git
|
url = https://figureslibres.io/gogs/bachir/enfrancais-app.git
|
||||||
[submodule "solr_cores"]
|
|
||||||
path = solr_cores
|
|
||||||
url = https://figureslibres.io/gogs/bachir/solr-materio-d8.git
|
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
cat /etc/passwd|grep 1000
|
||||||
|
|
||||||
|
cd /app
|
||||||
|
|
||||||
|
echo "Cleaning node_modules"
|
||||||
|
rm -rf node_modules
|
||||||
|
|
||||||
|
echo "Cleaning npm cache"
|
||||||
|
npm cache clean --f
|
||||||
|
|
||||||
|
echo "Npm install"
|
||||||
|
npm install
|
||||||
|
|
||||||
|
# echo "Run npm dev"
|
||||||
|
# npm run dev
|
||||||
|
echo "APP_ENV $APP_ENV"
|
||||||
|
|
||||||
|
if [ "$APP_ENV" = "prod" ]; then
|
||||||
|
echo "Run npm prod"
|
||||||
|
npm run prod
|
||||||
|
else
|
||||||
|
echo "Run npm dev"
|
||||||
|
npm run dev
|
||||||
|
fi
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
server {
|
server {
|
||||||
listen 80 default_server;
|
listen 80 default_server;
|
||||||
root /var/www/html/d8.materio.com/public_html/web;
|
root /var/www/html/api/src/web;
|
||||||
index index.html index.php;
|
index index.html index.php;
|
||||||
server_name *.materio.com;
|
server_name *.enfrancais.fr;
|
||||||
|
|
||||||
charset utf-8;
|
charset utf-8;
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# cat /etc/passwd|grep 1000
|
|
||||||
cd /app
|
|
||||||
|
|
||||||
echo "Cleaning node_modules"
|
|
||||||
rm -rf node_modules
|
|
||||||
|
|
||||||
echo "Cleaning npm cache"
|
|
||||||
npm cache clean --f
|
|
||||||
|
|
||||||
echo "Npm install"
|
|
||||||
npm install
|
|
||||||
|
|
||||||
echo "Run npm dev"
|
|
||||||
npm run dev
|
|
||||||
@@ -12,6 +12,9 @@ export USER_UNAME
|
|||||||
export USER_GID
|
export USER_GID
|
||||||
export USER_GNAME
|
export USER_GNAME
|
||||||
|
|
||||||
|
pull:
|
||||||
|
docker-compose pull
|
||||||
|
|
||||||
build:
|
build:
|
||||||
docker-compose build --build-arg USER_UID=$(USER_UID) --build-arg USER_UNAME=$(USER_UNAME) --build-arg USER_GID=$(USER_GID) --build-arg USER_GNAME=$(USER_GNAME)
|
docker-compose build --build-arg USER_UID=$(USER_UID) --build-arg USER_UNAME=$(USER_UNAME) --build-arg USER_GID=$(USER_GID) --build-arg USER_GNAME=$(USER_GNAME)
|
||||||
|
|
||||||
@@ -36,8 +39,8 @@ down:
|
|||||||
exec_php:
|
exec_php:
|
||||||
docker exec -it enfrancais_php_1 bash
|
docker exec -it enfrancais_php_1 bash
|
||||||
|
|
||||||
exec_npm:
|
exec_app:
|
||||||
docker exec -it enfrancais_npm_1 sh
|
docker exec -it enfrancais_app_1 sh
|
||||||
|
|
||||||
exec_mysql:
|
exec_mysql:
|
||||||
docker exec -it enfrancais_mysql_1 bash
|
docker exec -it enfrancais_mysql_1 bash
|
||||||
|
|||||||
@@ -33,12 +33,13 @@ add to your /etc/hosts :
|
|||||||
127.0.0.1 dev.enfrancais.fr
|
127.0.0.1 dev.enfrancais.fr
|
||||||
127.0.0.1 dev.phpmyadmin.enfrancais.fr
|
127.0.0.1 dev.phpmyadmin.enfrancais.fr
|
||||||
```
|
```
|
||||||
configure your apache vhosts to add a reverse proxy that will redirect the dev.enfrancais.fr to our container
|
configure your vhosts to add a reverse proxy that will redirect the dev.enfrancais.fr to our container
|
||||||
|
Apache
|
||||||
```
|
```
|
||||||
<Virtualhost *:80>
|
<Virtualhost *:80>
|
||||||
ServerName dev.enfrancais.fr
|
ServerName dev.enfrancais.fr
|
||||||
ProxyPass / http://127.0.0.1:8880/
|
ProxyPass / http://127.0.0.1:8990/
|
||||||
ProxyPassReverse / http://127.0.0.1:8880/
|
ProxyPassReverse / http://127.0.0.1:8990/
|
||||||
ProxyRequests Off
|
ProxyRequests Off
|
||||||
ProxyPreserveHost On
|
ProxyPreserveHost On
|
||||||
proxy_buffer_size 128k;
|
proxy_buffer_size 128k;
|
||||||
@@ -49,8 +50,8 @@ configure your apache vhosts to add a reverse proxy that will redirect the dev.e
|
|||||||
```
|
```
|
||||||
<Virtualhost *:80>
|
<Virtualhost *:80>
|
||||||
ServerName dev.phpmyadmin.enfrancais.fr
|
ServerName dev.phpmyadmin.enfrancais.fr
|
||||||
ProxyPass / http://127.0.0.1:8881/
|
ProxyPass / http://127.0.0.1:8991/
|
||||||
ProxyPassReverse / http://127.0.0.1:8881/
|
ProxyPassReverse / http://127.0.0.1:8991/
|
||||||
ProxyRequests Off
|
ProxyRequests Off
|
||||||
ProxyPreserveHost On
|
ProxyPreserveHost On
|
||||||
proxy_buffer_size 128k;
|
proxy_buffer_size 128k;
|
||||||
@@ -58,8 +59,53 @@ configure your apache vhosts to add a reverse proxy that will redirect the dev.e
|
|||||||
proxy_busy_buffers_size 256k;
|
proxy_busy_buffers_size 256k;
|
||||||
</Virtualhost>
|
</Virtualhost>
|
||||||
```
|
```
|
||||||
|
nginx
|
||||||
|
```
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name dev.enfrancais.fr;
|
||||||
|
|
||||||
|
access_log off;
|
||||||
|
error_log /var/log/nginx/enfrancais/error.log error;
|
||||||
|
|
||||||
|
client_max_body_size 100m;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:8990;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_buffer_size 128k;
|
||||||
|
proxy_buffers 4 256k;
|
||||||
|
proxy_busy_buffers_size 256k;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name dev.phpmyadmin.enfrancais.com;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:8991;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_buffer_size 128k;
|
||||||
|
proxy_buffers 4 256k;
|
||||||
|
proxy_busy_buffers_size 256k;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
## Docker
|
## Docker
|
||||||
|
|
||||||
|
### docker-compose pull
|
||||||
|
pull the latest image of services
|
||||||
|
```
|
||||||
|
make pull
|
||||||
|
```
|
||||||
|
|
||||||
### build
|
### build
|
||||||
only before the first run (may take some time)
|
only before the first run (may take some time)
|
||||||
```
|
```
|
||||||
@@ -107,6 +153,9 @@ do not use directly docker or docker-compose to run this instance
|
|||||||
use make instead like ```make up```
|
use make instead like ```make up```
|
||||||
|
|
||||||
```makefile
|
```makefile
|
||||||
|
pull:
|
||||||
|
docker-compose pull
|
||||||
|
|
||||||
build:
|
build:
|
||||||
docker-compose build --build-arg USER_UID=$(USER_UID) --build-arg USER_UNAME=$(USER_UNAME) --build-arg USER_GID=$(USER_GID) --build-arg USER_GNAME=$(USER_GNAME)
|
docker-compose build --build-arg USER_UID=$(USER_UID) --build-arg USER_UNAME=$(USER_UNAME) --build-arg USER_GID=$(USER_GID) --build-arg USER_GNAME=$(USER_GNAME)
|
||||||
|
|
||||||
|
|||||||
Submodule
+1
Submodule api added at 0e3daa3c49
Submodule
+1
Submodule app added at 6636ca21c2
+22
-25
@@ -1,4 +1,4 @@
|
|||||||
version: "3.5"
|
version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
mysql:
|
mysql:
|
||||||
@@ -7,7 +7,7 @@ services:
|
|||||||
- db-data:/var/lib/mysql
|
- db-data:/var/lib/mysql
|
||||||
- ./Docker/mysql/mysql.cnf:/etc/mysql/conf.d/custom.cnf:ro
|
- ./Docker/mysql/mysql.cnf:/etc/mysql/conf.d/custom.cnf:ro
|
||||||
- ./Docker/mysql/bashrc:/root/.bashrc:ro
|
- ./Docker/mysql/bashrc:/root/.bashrc:ro
|
||||||
- "${DB_IMPORTE_FILE_D8}:/docker-entrypoint-initdb.d/enfrancais.sql"
|
- "${DB_IMPORTE_FILE}:/docker-entrypoint-initdb.d/enfrancais.sql"
|
||||||
networks:
|
networks:
|
||||||
- database
|
- database
|
||||||
hostname: mysql
|
hostname: mysql
|
||||||
@@ -34,63 +34,60 @@ services:
|
|||||||
user: ${USER_UID}:${USER_GID}
|
user: ${USER_UID}:${USER_GID}
|
||||||
volumes:
|
volumes:
|
||||||
- php-user-data:/home/${USER_UNAME}
|
- php-user-data:/home/${USER_UNAME}
|
||||||
- "${PROJECT_ROOT}:/var/www/html/d8.materio.com/public_html"
|
- "${API_ROOT}:/var/www/html/api"
|
||||||
- "${LEGACY_ROOT}:/var/www/html/d7.materio.com/public_html"
|
|
||||||
- "${LOG_ROOT}/php:/var/log:rw"
|
- "${LOG_ROOT}/php:/var/log:rw"
|
||||||
working_dir: "/var/www/html/d8.materio.com/public_html"
|
working_dir: "/var/www/html/api"
|
||||||
networks:
|
networks:
|
||||||
- database
|
- database
|
||||||
- redis
|
- redis
|
||||||
- server
|
- server
|
||||||
- solr
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- mysql
|
- mysql
|
||||||
- mysql-legacy
|
|
||||||
- redis
|
- redis
|
||||||
- solr-new
|
|
||||||
|
|
||||||
phpmyadmin:
|
phpmyadmin:
|
||||||
image: phpmyadmin/phpmyadmin
|
image: phpmyadmin/phpmyadmin
|
||||||
ports:
|
ports:
|
||||||
- 8891:80
|
- 8991:80
|
||||||
networks:
|
networks:
|
||||||
- database
|
- database
|
||||||
depends_on:
|
depends_on:
|
||||||
- mysql
|
- mysql
|
||||||
- mysql-legacy
|
|
||||||
environment:
|
environment:
|
||||||
PMA_HOSTS: mysql,mysql-legacy
|
PMA_HOSTS: mysql,mysql-legacy
|
||||||
|
|
||||||
nginx:
|
nginx:
|
||||||
build: ./Docker/nginx/
|
build: ./Docker/nginx/
|
||||||
ports:
|
ports:
|
||||||
- 8890:80
|
- 8990:80
|
||||||
volumes:
|
volumes:
|
||||||
- "${PROJECT_ROOT}:/var/www/html/d8.materio.com/public_html"
|
- "${API_ROOT}:/var/www/html/api"
|
||||||
- "${LEGACY_ROOT}:/var/www/html/d7.materio.com/public_html"
|
- "${APP_ROOT}:/var/www/html/app"
|
||||||
- "${LOG_ROOT}:/var/log:rw"
|
- "${LOG_ROOT}:/var/log:rw"
|
||||||
working_dir: "/var/www/html/d8.materio.com/public_html"
|
working_dir: "/var/www/html/api/"
|
||||||
networks:
|
networks:
|
||||||
- server
|
- server
|
||||||
- solr
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- php
|
- php
|
||||||
|
|
||||||
npm:
|
# app:
|
||||||
build: ./Docker/npm
|
# build: ./Docker/app
|
||||||
user: ${USER_UID}:${USER_GID}
|
# user: ${USER_UID}:${USER_GID}
|
||||||
volumes:
|
# volumes:
|
||||||
- "${PROJECT_ROOT}:/app"
|
# - "${APP_ROOT}:/app"
|
||||||
- npm-user-data:/home/${USER_UNAME}
|
# - npm-user-data:/home/${USER_UNAME}
|
||||||
ports:
|
# ports:
|
||||||
- 8788:8788
|
# - 8988:8988
|
||||||
working_dir: "/app"
|
# working_dir: "/app"
|
||||||
|
# environment:
|
||||||
|
# - APP_ENV=dev
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
php-user-data:
|
php-user-data:
|
||||||
db-data:
|
db-data:
|
||||||
redis-data:
|
redis-data:
|
||||||
npm-user-data:
|
# npm-user-data:
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
database:
|
database:
|
||||||
|
|||||||
Reference in New Issue
Block a user