update
This commit is contained in:
parent
6826883110
commit
b4d115173a
22
.env
22
.env
|
|
@ -1,11 +1,23 @@
|
||||||
COMPOSE_PROJECT_NAME=testa
|
COMPOSE_PROJECT_NAME=mobile
|
||||||
NETWORK=testa
|
NETWORK=mobile
|
||||||
|
|
||||||
FRONT_TAG=test-nuxt
|
FRONT_TAG=master
|
||||||
DOTDOT_TAG=test-nuxt
|
DOTDOT_TAG=master
|
||||||
|
LMS_TAG=master
|
||||||
|
DASHBORD_TAG=master
|
||||||
|
SIGNER_TAG=TD-322
|
||||||
|
ADMIN_TAG=master
|
||||||
|
CABINET_TAG=master
|
||||||
|
LANDINGTTL_TAG=DD-4160-STORY
|
||||||
|
|
||||||
MYSQL_PORT=0.0.0.0:3306
|
MYSQL_PORT=0.0.0.0:33066
|
||||||
MYSQL_ROOT_PASSWORD=root
|
MYSQL_ROOT_PASSWORD=root
|
||||||
MYSQL_DATABASE=dot
|
MYSQL_DATABASE=dot
|
||||||
MYSQL_USER=dot
|
MYSQL_USER=dot
|
||||||
MYSQL_PASSWORD=dot
|
MYSQL_PASSWORD=dot
|
||||||
|
|
||||||
|
RABBITMQ_USERNAME=ddadmin
|
||||||
|
RABBITMQ_PASSWORD=Utahth9aeshahgh3saik
|
||||||
|
|
||||||
|
REDIS_USERNAME=ddadmin
|
||||||
|
REDIS_PASSWORD=Utahth9aeshahgh3saik
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,177 @@
|
||||||
|
DIRECTORY=`dirname $0`
|
||||||
|
|
||||||
|
#MYSQL_ROOT_PASSWORD=$(grep MYSQL_ROOT_PASSWORD $DIRECTORY"/.env" | xargs)
|
||||||
|
#MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD#*=}
|
||||||
|
source $DIRECTORY"/.env"
|
||||||
|
help() {
|
||||||
|
echo "run $0 [COMMAND] "
|
||||||
|
echo '
|
||||||
|
"init" - run init flow
|
||||||
|
"up" - up -d all services
|
||||||
|
"down" - down all services without volumes
|
||||||
|
"composer" - run composer ${@:2}
|
||||||
|
"psalm" - run composer analyse
|
||||||
|
"php-fixer" - run composer cs
|
||||||
|
"deptrac" - run composer deptrac
|
||||||
|
"tests" - run composer tests
|
||||||
|
"console" - run docker compose exec php ./bin/console ${@:2}
|
||||||
|
"db" - run mysql shell
|
||||||
|
"db-create" - crate database
|
||||||
|
"backup-dev" -
|
||||||
|
"backup-create" -
|
||||||
|
"backup-exec" -
|
||||||
|
"restore-dev" -
|
||||||
|
"purge-db" - purge database
|
||||||
|
"restore-db" - restore database from s3 backup
|
||||||
|
"front" - exec front container
|
||||||
|
|
||||||
|
'
|
||||||
|
}
|
||||||
|
|
||||||
|
log() {
|
||||||
|
RED='\e[31m'
|
||||||
|
GREEN='\e[32m'
|
||||||
|
|
||||||
|
case $2 in
|
||||||
|
info)
|
||||||
|
printf "${GREEN}${1}\e[0m\n"
|
||||||
|
;;
|
||||||
|
error)
|
||||||
|
printf "${RED}${1}\e[0m\n"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
printf "${1}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
## restore last backup from s3 storage
|
||||||
|
restoredb() {
|
||||||
|
log "run restore database"
|
||||||
|
sudo rclone copy --verbose selectel:backup_db/dot/prod/dot.$(date +%a).sql.gz backups/
|
||||||
|
zcat backups/dot.$(date +%a).sql.gz | docker compose exec -T db mysql -uroot -p${MYSQL_ROOT_PASSWORD} dot
|
||||||
|
}
|
||||||
|
|
||||||
|
checkDockerCompose() {
|
||||||
|
if ! [ -f "docker-compose.yml" ]; then
|
||||||
|
log "docker-compose.yml not exist. Run init command" "error"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
init() {
|
||||||
|
dumpfile=$(ls backups/ | sort | tail -1)
|
||||||
|
if ! [ -f backups/${dumpfile} ]; then
|
||||||
|
log "put dot.sql to backups directory" "error"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -f ".env" ]; then
|
||||||
|
log ".env not exist. Run init command" "error"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
up
|
||||||
|
|
||||||
|
docker compose exec php composer install
|
||||||
|
# docker compose exec front npm i
|
||||||
|
|
||||||
|
# docker compose exec front npm run build
|
||||||
|
|
||||||
|
if ! docker compose exec db mysql -uroot -proot -e "show databases" | grep "dot "; then
|
||||||
|
createDatabase "dot"
|
||||||
|
execBackup "dot" ${dumpfile}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
up() {
|
||||||
|
checkDockerCompose
|
||||||
|
docker compose up -d
|
||||||
|
}
|
||||||
|
|
||||||
|
down() {
|
||||||
|
checkDockerCompose
|
||||||
|
docker compose down
|
||||||
|
}
|
||||||
|
|
||||||
|
createDatabase() {
|
||||||
|
docker compose exec -T db mysql -uroot -p${MYSQL_ROOT_PASSWORD} -e "create database $1"
|
||||||
|
log "create database $1" "info"
|
||||||
|
}
|
||||||
|
|
||||||
|
createBackup() {
|
||||||
|
docker compose exec db mysqldump -uroot -p${MYSQL_ROOT_PASSWORD} $1 > backups/$2.sql
|
||||||
|
}
|
||||||
|
|
||||||
|
createBackupWithExceptions() {
|
||||||
|
docker compose exec db mysqldump -uroot -p${MYSQL_ROOT_PASSWORD} --ignore-table=dot.ml_calculator_log dot > backups/dot_develop.sql
|
||||||
|
docker compose exec db mysqldump -uroot -p${MYSQL_ROOT_PASSWORD} --no-data dot ml_calculator_log >> backups/dot_develop.sql
|
||||||
|
}
|
||||||
|
|
||||||
|
execBackup() {
|
||||||
|
zcat backups/$2 | docker compose exec -T db mysql -uroot -p${MYSQL_ROOT_PASSWORD} $1
|
||||||
|
log "exec $2.sql backup" "info"
|
||||||
|
}
|
||||||
|
|
||||||
|
execDevBackup() {
|
||||||
|
docker compose exec -T db mysql -uroot -p${MYSQL_ROOT_PASSWORD} dot < backups/dot_develop.sql
|
||||||
|
log "exec dot_develop.sql backup" "info"
|
||||||
|
}
|
||||||
|
|
||||||
|
purgeDb() {
|
||||||
|
docker compose exec db mysql -uroot -p${MYSQL_ROOT_PASSWORD} -e "drop database dot"
|
||||||
|
log "dropped database dot" "info"
|
||||||
|
docker compose exec db mysql -uroot -p${MYSQL_ROOT_PASSWORD} -e "create database dot"
|
||||||
|
log "created database dot" "info"
|
||||||
|
}
|
||||||
|
|
||||||
|
composer() {
|
||||||
|
docker compose exec php php -d memory_limit=-1 /usr/local/bin/composer ${@:1}
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
"help")
|
||||||
|
help;;
|
||||||
|
"init")
|
||||||
|
init;;
|
||||||
|
"up")
|
||||||
|
up;;
|
||||||
|
"down")
|
||||||
|
down;;
|
||||||
|
"composer"*)
|
||||||
|
composer ${@:2};;
|
||||||
|
"psalm"*)
|
||||||
|
composer analyse;;
|
||||||
|
"php-fixer")
|
||||||
|
composer cs;;
|
||||||
|
"deptrac")
|
||||||
|
composer deptrac;;
|
||||||
|
"tests")
|
||||||
|
composer tests;;
|
||||||
|
"console"*)
|
||||||
|
docker compose exec php ./bin/console ${@:2};;
|
||||||
|
"db")
|
||||||
|
docker compose exec db mysql -uroot -p${MYSQL_ROOT_PASSWORD};;
|
||||||
|
"db-create")
|
||||||
|
createDatabase $2;;
|
||||||
|
"backup-dev"*)
|
||||||
|
createBackupWithExceptions $2;;
|
||||||
|
"backup-create"*)
|
||||||
|
createBackup $2 $3;;
|
||||||
|
"backup-exec"*)
|
||||||
|
execBackup $2 $3;;
|
||||||
|
"restore-dev"*)
|
||||||
|
execDevBackup;;
|
||||||
|
"purge-db"*)
|
||||||
|
purgeDb;;
|
||||||
|
"restore-db")
|
||||||
|
restoredb;;
|
||||||
|
"front"*)
|
||||||
|
case $2 in
|
||||||
|
*)
|
||||||
|
docker compose exec landing-ttl ${@:2};;
|
||||||
|
esac;;
|
||||||
|
*)
|
||||||
|
help
|
||||||
|
#docker compose exec php ./bin/console ${@:1};;
|
||||||
|
esac
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
NUXT_HOST=0.0.0.0
|
||||||
|
NUXT_PORT=3000
|
||||||
|
DOMAIN=stagingadmin.dot-dot.ru
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
DOMAIN="${DOMAIN:-lmsadmin.dot-dot.ru}"
|
||||||
|
|
||||||
|
for x in $(grep -lrw "lmsadmin.dot-dot.ru" .nuxt/);do
|
||||||
|
echo "replace lmsadmin.dot-dot.ru to https://${DOMAIN} in $x"
|
||||||
|
sed -i -e "s/lmsadmin.dot-dot.ru/${DOMAIN}/g" $x;
|
||||||
|
done
|
||||||
|
|
||||||
|
"$@"
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
NUXT_HOST=0.0.0.0
|
||||||
|
NUXT_PORT=3000
|
||||||
|
NUXT_ENV_DEVALUE_LOG_LEVEL=silent
|
||||||
|
WS_PROTOCOL=wss
|
||||||
|
BASE_URL=https://mobilelms.dot-dot.ru/
|
||||||
|
API_URL=https://mobilelms.dot-dot.ru/
|
||||||
|
DOMAIN=mobilelms.dot-dot.ru
|
||||||
|
|
||||||
|
APP_HOST=mobilelms.dot-dot.ru
|
||||||
|
APP_SCHEME=https
|
||||||
|
APP_ENVIRONMENT=development
|
||||||
|
DADATA_API_TOKEN=c9aa5fdc338a746e23ce91ceb6fdb9e635749833
|
||||||
|
YANDEX_METRIKA_ID=5015695
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
server {
|
||||||
|
server_name testeadmin.dot-dot.ru;
|
||||||
|
client_max_body_size 10m;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://dashboard:80;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection 'upgrade';
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
chunked_transfer_encoding off;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_cache off;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,10 +1,14 @@
|
||||||
server {
|
server {
|
||||||
server_name testa.dot-dot.ru;
|
listen 80;
|
||||||
|
server_name mobile.dot-dot.ru;
|
||||||
|
|
||||||
root /application/public;
|
root /application/public;
|
||||||
|
|
||||||
|
client_max_body_size 10m;
|
||||||
|
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
proxy_pass http://nuxt:3000;
|
proxy_pass http://landing-ttl;
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
proxy_set_header Connection 'upgrade';
|
proxy_set_header Connection 'upgrade';
|
||||||
|
|
@ -19,25 +23,17 @@ server {
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
proxy_set_header Connection "Upgrade";
|
proxy_set_header Connection "Upgrade";
|
||||||
proxy_pass http://php:9000;
|
proxy_pass http://php:8080;
|
||||||
}
|
}
|
||||||
|
|
||||||
location @rewriteapp {
|
location @rewriteapp {
|
||||||
rewrite ^(.*)$ /index.php/$1 last;
|
rewrite ^(.*)$ /index.php/$1 last;
|
||||||
}
|
}
|
||||||
|
|
||||||
# location /storybook {
|
|
||||||
# alias /application/nuxt/storybook-static;
|
|
||||||
# }
|
|
||||||
|
|
||||||
location /logout {
|
location /logout {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /help {
|
|
||||||
alias /application/help-platform/src/.vuepress/dist;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /api {
|
location /api {
|
||||||
rewrite ^(.*)$ /index.php/$1 last;
|
rewrite ^(.*)$ /index.php/$1 last;
|
||||||
}
|
}
|
||||||
|
|
@ -66,6 +62,10 @@ server {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location ~* \/admin\/.*(js|jpg|png|css|woff|woff2)$ {
|
||||||
|
proxy_pass http://static;
|
||||||
|
}
|
||||||
|
|
||||||
location /media {
|
location /media {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
}
|
||||||
|
|
@ -89,7 +89,8 @@ server {
|
||||||
return 204;
|
return 204;
|
||||||
}
|
}
|
||||||
|
|
||||||
add_header 'Access-Control-Allow-Origin' $http_origin;
|
#add_header 'Access-Control-Allow-Origin' $http_origin;
|
||||||
|
add_header 'Access-Control-Allow-Origin' *;
|
||||||
add_header 'Access-Control-Allow-Credentials' 'true';
|
add_header 'Access-Control-Allow-Credentials' 'true';
|
||||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
||||||
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,20 @@
|
||||||
|
# server {
|
||||||
|
# listen 80;
|
||||||
|
# server_name mobilelms.dot-dot.ru;
|
||||||
|
# return 301 https://$server_name$request_uri;
|
||||||
|
# }
|
||||||
|
|
||||||
server {
|
server {
|
||||||
server_name testa.dot-dot.ru;
|
listen 80;
|
||||||
|
server_name mobilelms.dot-dot.ru;
|
||||||
|
|
||||||
root /application/public;
|
root /application/public;
|
||||||
|
|
||||||
|
client_max_body_size 10m;
|
||||||
|
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
proxy_pass http://nuxt:3000;
|
proxy_pass http://lms:3000;
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
proxy_set_header Connection 'upgrade';
|
proxy_set_header Connection 'upgrade';
|
||||||
|
|
@ -16,26 +26,22 @@ server {
|
||||||
}
|
}
|
||||||
|
|
||||||
location /socket.io/auctionreload {
|
location /socket.io/auctionreload {
|
||||||
|
access_log /var/log/nginx/ws_access.log json;
|
||||||
|
error_log /var/log/nginx/ws_error.log;
|
||||||
|
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
proxy_set_header Connection "Upgrade";
|
proxy_set_header Connection $connection_upgrade;
|
||||||
proxy_pass http://php:${PHP_SOCKET_PORT}/;
|
proxy_set_header Host $host;
|
||||||
|
proxy_pass http://php:8080/;
|
||||||
}
|
}
|
||||||
|
|
||||||
location @rewriteapp {
|
location @rewriteapp {
|
||||||
rewrite ^(.*)$ /index.php/$1 last;
|
rewrite ^(.*)$ /index.php/$1 last;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /storybook {
|
|
||||||
alias /application/nuxt/storybook-static;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /logout {
|
location /logout {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
|
||||||
|
|
||||||
location /help {
|
|
||||||
alias /application/help-platform/src/.vuepress/dist;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
location /api {
|
location /api {
|
||||||
|
|
@ -66,27 +72,39 @@ server {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location ~* \/admin\/.*(js|jpg|png|css|woff|woff2)$ {
|
||||||
|
proxy_pass http://static;
|
||||||
|
}
|
||||||
|
|
||||||
location /media {
|
location /media {
|
||||||
try_files $uri @rewriteapp;
|
try_files $uri @rewriteapp;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /img {
|
location /img {
|
||||||
alias /application/public/img;
|
proxy_pass http://static;
|
||||||
}
|
# alias /application/public/img;
|
||||||
|
# try_files $uri /index.php$request_uri;
|
||||||
|
# expires 6M;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /robots.txt {
|
||||||
|
proxy_pass http://static;
|
||||||
|
}
|
||||||
|
|
||||||
location ~ ^/index\.php(/|$) {
|
location ~ ^/index\.php(/|$) {
|
||||||
if ($request_method = 'OPTIONS') {
|
if ($request_method = 'OPTIONS') {
|
||||||
add_header 'Access-Control-Allow-Origin' $http_origin;
|
add_header 'Access-Control-Allow-Origin' $http_origin;
|
||||||
add_header 'Access-Control-Allow-Credentials' 'true';
|
add_header 'Access-Control-Allow-Credentials' 'true';
|
||||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
||||||
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
||||||
add_header 'Access-Control-Max-Age' 1728000;
|
add_header 'Access-Control-Max-Age' 1728000;
|
||||||
add_header 'Content-Type' 'text/plain charset=UTF-8';
|
add_header 'Content-Type' 'text/plain charset=UTF-8';
|
||||||
add_header 'Content-Length' 0;
|
add_header 'Content-Length' 0;
|
||||||
return 204;
|
return 204;
|
||||||
}
|
}
|
||||||
|
|
||||||
add_header 'Access-Control-Allow-Origin' $http_origin;
|
#add_header 'Access-Control-Allow-Origin' $http_origin;
|
||||||
|
add_header 'Access-Control-Allow-Origin' *;
|
||||||
add_header 'Access-Control-Allow-Credentials' 'true';
|
add_header 'Access-Control-Allow-Credentials' 'true';
|
||||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE';
|
||||||
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Expeditor-Domain,Authorization';
|
||||||
|
|
@ -96,7 +114,4 @@ server {
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_log /var/log/nginx/dot_dot_error.log;
|
|
||||||
access_log /var/log/nginx/dot_dot_access.log;
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
NUXT_HOST=0.0.0.0
|
|
||||||
NUXT_PORT=3000
|
|
||||||
NUXT_ENV_DEVALUE_LOG_LEVEL=silent
|
|
||||||
WS_PROTOCOL=ws
|
|
||||||
BASE_URL=http://testa.dot-dot.ru
|
|
||||||
API_URL=http://testa.dot-dot.ru
|
|
||||||
|
|
||||||
APP_HOST=dot-dot.local
|
|
||||||
APP_SCHEME=http
|
|
||||||
APP_ENVIRONMENT=development
|
|
||||||
DADATA_API_TOKEN=c9aa5fdc338a746e23ce91ceb6fdb9e635749833
|
|
||||||
YANDEX_METRIKA_ID=50156956
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
APP_ENV=dev
|
APP_ENV=prod
|
||||||
APP_SECRET=c35a0abba25a5396d74ec17fca238d9a
|
APP_SECRET=c35a0abba25a5396d74ec17fca238d9a
|
||||||
|
|
||||||
LOCK_DSN=flock
|
LOCK_DSN=flock
|
||||||
|
|
@ -8,8 +8,8 @@ DATABASE_URL_DOT=mysql://root:root@db:3306/dot?serverVersion=mariadb-10.3.25
|
||||||
DATABASE_URL_DOT_STATISTIC=mysql://root:root@db:3306/dot_statistic?serverVersion=mariadb-10.3.25
|
DATABASE_URL_DOT_STATISTIC=mysql://root:root@db:3306/dot_statistic?serverVersion=mariadb-10.3.25
|
||||||
|
|
||||||
DOCUMENT_ROOT=/application
|
DOCUMENT_ROOT=/application
|
||||||
APP_HOST=dot-dot.local
|
APP_HOST=mobile.dot-dot.ru
|
||||||
APP_SCHEME=http
|
APP_SCHEME=https
|
||||||
|
|
||||||
MAILER_DSN=null://null
|
MAILER_DSN=null://null
|
||||||
|
|
||||||
|
|
@ -52,11 +52,16 @@ FNS_ACCESS_TOKEN=secret
|
||||||
GOOGLE_MAPS_ACCESS_KEY=secret
|
GOOGLE_MAPS_ACCESS_KEY=secret
|
||||||
GOOGLE_MAPS_BASE_URL=https://maps.google.com
|
GOOGLE_MAPS_BASE_URL=https://maps.google.com
|
||||||
|
|
||||||
ML_CALCULATOR_URL=https://calc.dev.dot-dot.ru/v1/calculate
|
ML_CALCULATOR_URL=https://ml.dot-dot.ru/v2/classification/order/relevance
|
||||||
|
|
||||||
|
ML_REGULAR_DIRECTION_URL=https://ml.dot-dot.ru/v2/schedule/transport
|
||||||
|
ML_REGULAR_DIRECTION_RELEVANCE_CARRIERS_URL=https://ml.dot-dot.ru/v1/schedule/carrier/scoring
|
||||||
|
ML_UNCERTAIN_DIRECTIONS_URL=https://ml.dot-dot.ru/v1/classification/direction/uncertain
|
||||||
|
|
||||||
|
ML_CARRIER_SCORING=https://ml.dot-dot.ru/v2/classification/carrier/scoring
|
||||||
|
|
||||||
|
ML_DIRECTION_RECALCULATE_URL=https://ml.dot-dot.ru/v2/schedule/calculate
|
||||||
|
|
||||||
ML_REGULAR_DIRECTION_URL=https://calc.dev.dot-dot.ru/v1/schedule/transport
|
|
||||||
ML_REGULAR_DIRECTION_RELEVANCE_CARRIERS_URL=https://calc.dev.dot-dot.ru/v1/schedule/carrier/scoring
|
|
||||||
ML_UNCERTAIN_DIRECTIONS_URL=https://calc.dev.dot-dot.ru/v1/classification/direction/uncertain
|
|
||||||
|
|
||||||
YANDEX_MAPS_ACCESS_KEY=secret
|
YANDEX_MAPS_ACCESS_KEY=secret
|
||||||
YANDEX_MAPS_BASE_URL=https://api.routing.yandex.net
|
YANDEX_MAPS_BASE_URL=https://api.routing.yandex.net
|
||||||
|
|
@ -130,3 +135,13 @@ SOVKOM_API_URL=secret
|
||||||
MAGIC_API_URL=https://magic-trans.ru/
|
MAGIC_API_URL=https://magic-trans.ru/
|
||||||
|
|
||||||
MAGIC_API_URL=https://magic-trans.ru/
|
MAGIC_API_URL=https://magic-trans.ru/
|
||||||
|
|
||||||
|
###> YandexTracker ###
|
||||||
|
YTRACKER_API_TOKEN="y0_AgAEA7qkKFmeAAjF8AAAAADXovQd6htdkt7LTDW_sNHCz7qV9zdVHaQ"
|
||||||
|
YTRACKER_ORGANISATION_ID=355207
|
||||||
|
###< YandexTracker ###
|
||||||
|
|
||||||
|
SMS_PROVIDER=prostor-sms
|
||||||
|
PROSTOR_SMS_END_POINT_URL=http://api.prostor-sms.ru/
|
||||||
|
PROSTOR_SMS_LOGIN=secret
|
||||||
|
PROSTOR_SMS_PASSWORD=secret
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ FNS_ACCESS_TOKEN=a5639b93fe4e7c9a3f1dd85537e066d36439c352
|
||||||
|
|
||||||
GOOGLE_MAPS_ACCESS_KEY=AIzaSyBCPl2LcpRvplzLUNVMVLhA3b7k46lTCTg
|
GOOGLE_MAPS_ACCESS_KEY=AIzaSyBCPl2LcpRvplzLUNVMVLhA3b7k46lTCTg
|
||||||
|
|
||||||
NUXT_BASE_URL=testa.dot-dot.ru
|
NUXT_BASE_URL=mobile.dot-dot.ru
|
||||||
|
|
||||||
ATISU_API_TOKEN=a9698671a68441c7b3959e43995d1506
|
ATISU_API_TOKEN=a9698671a68441c7b3959e43995d1506
|
||||||
|
|
||||||
|
|
@ -31,11 +31,12 @@ TELEGRAM_CHAT_ID=-875661421
|
||||||
###< telegramm ###
|
###< telegramm ###
|
||||||
|
|
||||||
###> voicia ###
|
###> voicia ###
|
||||||
VOICIA_CALL_ID=1949
|
VOICIA_API_KEY=7589ed2721e50e299eb3baf2e3100a6b
|
||||||
|
VOICIA_CALL_ID=8788
|
||||||
###< voicia ###
|
###< voicia ###
|
||||||
|
|
||||||
###> ml_calculator ###
|
###> ml_calculator ###
|
||||||
ML_CALCULATOR_URL=https://ml.dot-dot.ru/v1/classification/order/relevance
|
ML_CALCULATOR_URL=https://ml.dot-dot.ru/v2/classification/order/relevance
|
||||||
###< ml_calculator ###
|
###< ml_calculator ###
|
||||||
|
|
||||||
###> comagic ###
|
###> comagic ###
|
||||||
|
|
@ -44,15 +45,15 @@ COMAGIC_KEY=j769gveux0brdq7wb6insegwtczvz7nsqmuntkqv
|
||||||
###< comagic ###
|
###< comagic ###
|
||||||
|
|
||||||
###> carrier_scoring ###
|
###> carrier_scoring ###
|
||||||
ML_CARRIER_SCORING=https://ml.dot-dot.ru/v1/classification/carrier/scoring
|
ML_CARRIER_SCORING=https://ml.dot-dot.ru/v2/classification/carrier/scoring
|
||||||
###< carrier_scoring ###
|
###< carrier_scoring ###
|
||||||
|
|
||||||
###> direction_scoring ###
|
###> direction_scoring ###
|
||||||
ML_DIRECTION_SCORING_URL=https://ml.dot-dot.ru/v1/classification/direction/confidence
|
ML_DIRECTION_SCORING_URL=https://ml.dot-dot.ru/v2/classification/direction/confidence
|
||||||
###< direction_scoring ###
|
###< direction_scoring ###
|
||||||
|
|
||||||
###> direction_recalculate ###
|
###> direction_recalculate ###
|
||||||
ML_DIRECTION_RECALCULATE_URL=https://calc.dev.dot-dot.ru/v1/schedule/calculate
|
ML_DIRECTION_RECALCULATE_URL=https://ml.dot-dot.ru/v2/schedule/calculate
|
||||||
###< direction_recalculate ###
|
###< direction_recalculate ###
|
||||||
|
|
||||||
###< Vozovoz ###
|
###< Vozovoz ###
|
||||||
|
|
@ -111,3 +112,42 @@ PAPA_FINANCE_API_URL=DotDotAPI
|
||||||
SOVKOM_API_KEY=AAk6UcV88xCCC26654rM
|
SOVKOM_API_KEY=AAk6UcV88xCCC26654rM
|
||||||
SOVKOM_API_URL=https://testout.sovcomins.ru
|
SOVKOM_API_URL=https://testout.sovcomins.ru
|
||||||
###< SOVKOMTEST###
|
###< SOVKOMTEST###
|
||||||
|
|
||||||
|
ML_REGULAR_DIRECTION_URL=https://ml.dot-dot.ru/v2/schedule/transport
|
||||||
|
|
||||||
|
###> YandexTracker ###
|
||||||
|
YTRACKER_API_TOKEN="y0_AgAEA7qkKFmeAAjF8AAAAADXovQd6htdkt7LTDW_sNHCz7qV9zdVHaQ"
|
||||||
|
YTRACKER_ORGANISATION_ID=355207
|
||||||
|
###< YandexTracker ###
|
||||||
|
|
||||||
|
###>capcha ###
|
||||||
|
SMARTCAPTCHA_SERVER_KEY=ysc2_GLQZ8QPaFh0eXqZ5KaRMuRRZOX7qNNMy7P9Mq82V6c4e7b81
|
||||||
|
###<capcha ###
|
||||||
|
|
||||||
|
|
||||||
|
###> sentry/sentry-symfony ###
|
||||||
|
SENTRY_DSN="https://1127a3ada375b040486c3ab0d86cbcab@sentry.dot-dot.ru/5"
|
||||||
|
SENTRY_SERVER_NAME=test
|
||||||
|
SENTRY_SERVER_USER_NAME=mobile
|
||||||
|
###< sentry/sentry-symfony ###
|
||||||
|
|
||||||
|
CRYPTOPRO_PATH='/opt/cprocsp/bin/amd64/cryptcp -sign -dn '"ООО ""ТОЧКА-ТОЧКА ЛОГИСТИКА"""' -der'
|
||||||
|
SIGNED_DOC_PATH="/application/var/documents/signeddocs"
|
||||||
|
ABSOLUTE_SIGNED_DOC_PATH="/home/ddadmin/demolms/signeddocs"
|
||||||
|
|
||||||
|
QUEUE_DSN_OC_CARRIER_OFFERS=amqp://ddadmin:Utahth9aeshahgh3saik@rabbitmq:5672/%2f/OC_CARRIER_OFFERS
|
||||||
|
QUEUE_DSN_STATISTIC_EXPORT=amqp://ddadmin:Utahth9aeshahgh3saik@rabbitmq:5672/%2f/STATISTIC_EXPORT
|
||||||
|
|
||||||
|
CHROMIUM_BROWSER_SYS_PATH="/usr/bin/chromium-browser"
|
||||||
|
|
||||||
|
###> API_KONTUR_FOCUS###
|
||||||
|
USER_TRUST_API_KONTUR_FOCUS_END_POINT_URL=https://focus-api.kontur.ru/
|
||||||
|
USER_TRUST_API_KONTUR_FOCUS_API_TOKEN=3208d29d15c507395db770d0e65f3711e40374df
|
||||||
|
USER_TRUST_CHECK_BACKEND=true
|
||||||
|
###< API_KONTUR_FOCUS###
|
||||||
|
QUEUE_DSN_USER_TRUST=amqp://ddadmin:Utahth9aeshahgh3saik@rabbitmq:5672/%2f/USER_TRUST
|
||||||
|
|
||||||
|
CONTAINER_NAME=php
|
||||||
|
|
||||||
|
PROSTOR_SMS_LOGIN=ap142656
|
||||||
|
PROSTOR_SMS_PASSWORD=808350
|
||||||
|
|
|
||||||
|
|
@ -7,9 +7,8 @@ PHP_SOCKET_PORT=8080
|
||||||
DATABASE_URL_DOT=mysql://root:root@db:3306/dot?serverVersion=mariadb-10.3.25
|
DATABASE_URL_DOT=mysql://root:root@db:3306/dot?serverVersion=mariadb-10.3.25
|
||||||
DATABASE_URL_DOT_STATISTIC=mysql://root:root@db:3306/dot_statistic?serverVersion=mariadb-10.3.25
|
DATABASE_URL_DOT_STATISTIC=mysql://root:root@db:3306/dot_statistic?serverVersion=mariadb-10.3.25
|
||||||
|
|
||||||
NUXT_BASE_URL=testa.dot-dot.ru
|
|
||||||
DOCUMENT_ROOT=/application
|
DOCUMENT_ROOT=/application
|
||||||
APP_HOST=dot-dot.local
|
APP_HOST=mobile.dot-dot.ru
|
||||||
APP_SCHEME=http
|
APP_SCHEME=http
|
||||||
|
|
||||||
MAILER_DSN=null://null
|
MAILER_DSN=null://null
|
||||||
|
|
@ -22,6 +21,9 @@ SP_PASSWORD=xmlweb
|
||||||
SP_KEY=secret
|
SP_KEY=secret
|
||||||
SP_TEST=true
|
SP_TEST=true
|
||||||
|
|
||||||
|
SP_V3_URL=https://spasskievorota.ru/services/test/cargo_3.php
|
||||||
|
SP_V3_KEY=secret
|
||||||
|
|
||||||
DEFAULT_EMAIL=no_reply@dot-dot.ru
|
DEFAULT_EMAIL=no_reply@dot-dot.ru
|
||||||
ADMIN_EMAIL=change.this@dot-dot.ru
|
ADMIN_EMAIL=change.this@dot-dot.ru
|
||||||
ACCOUNTANT_EMAIL=noreplay@dot-dot.ru
|
ACCOUNTANT_EMAIL=noreplay@dot-dot.ru
|
||||||
|
|
@ -50,10 +52,13 @@ FNS_ACCESS_TOKEN=secret
|
||||||
GOOGLE_MAPS_ACCESS_KEY=secret
|
GOOGLE_MAPS_ACCESS_KEY=secret
|
||||||
GOOGLE_MAPS_BASE_URL=https://maps.google.com
|
GOOGLE_MAPS_BASE_URL=https://maps.google.com
|
||||||
|
|
||||||
ML_CALCULATOR_URL=https://calc.dev.dot-dot.ru/v1/calculate
|
https://ml.dot-dot.ru/v2/classification/order/relevance
|
||||||
|
|
||||||
ML_REGULAR_DIRECTION_URL=https://calc.dev.dot-dot.ru/v1/schedule/transport
|
ML_REGULAR_DIRECTION_URL=https://calc.dev.dot-dot.ru/v2/schedule/transport
|
||||||
|
ML_REGULAR_DIRECTION_CHAIN_URL=https://calc.dev.dot-dot.ru/v1/schedule/chains
|
||||||
ML_REGULAR_DIRECTION_RELEVANCE_CARRIERS_URL=https://calc.dev.dot-dot.ru/v1/schedule/carrier/scoring
|
ML_REGULAR_DIRECTION_RELEVANCE_CARRIERS_URL=https://calc.dev.dot-dot.ru/v1/schedule/carrier/scoring
|
||||||
|
ML_REGULAR_DIRECTION_CHAIN_RELEVANCE_CARRIERS_URL=https://calc.dev.dot-dot.ru/v1/schedule/chains/carrier/scoring
|
||||||
|
ML_UNCERTAIN_DIRECTIONS_URL=https://calc.dev.dot-dot.ru/v1/classification/direction/uncertain
|
||||||
|
|
||||||
YANDEX_MAPS_ACCESS_KEY=secret
|
YANDEX_MAPS_ACCESS_KEY=secret
|
||||||
YANDEX_MAPS_BASE_URL=https://api.routing.yandex.net
|
YANDEX_MAPS_BASE_URL=https://api.routing.yandex.net
|
||||||
|
|
@ -124,4 +129,6 @@ SOVKOM_API_KEY=secret
|
||||||
SOVKOM_API_URL=secret
|
SOVKOM_API_URL=secret
|
||||||
###< SOVKOM###
|
###< SOVKOM###
|
||||||
|
|
||||||
MAGIC_API_URL=https://magic-trans.ru/
|
MAGIC_API_URL=https://magic-trans.ru/
|
||||||
|
|
||||||
|
MAGIC_API_URL=https://magic-trans.ru/
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
"type": "service_account",
|
||||||
|
"project_id": "t-t-logistics",
|
||||||
|
"private_key_id": "d43ca447a200d75f02886d06689212e27f0fd823",
|
||||||
|
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCeqg8yH6kQp+eL\nJqjrwkgDHyw6xnKUqjidAV7C259tZD6BXzxcqzaqKc3DdCWyB8Eu0EpTfBsp6M+6\n3KACXXZ++Pd3bgzp3KOFRV16eDLr/xkvGUlMIKwb3saDjnPSdvrU0TqwCURQ+PEi\nPm6s4UTZ/bPp/h62q/oTxB3bQVwoOUcCljPynjAYUG49OXVbUW1yCMbgo1QUIXbU\n/b7mcNwjNyUnUX3mTjarjEVislqkO0j5XB06Hdnnb0z7OED0nJSV6ZRA0933Y4hL\nS+JFer1IuQGP3B8NpMdmOdCDpZPb4odcgt2Zw4gwqEV3iCE7OmXJtAQq/Nmd3luh\n6Sls4FVPAgMBAAECggEAPimZl4VA+0YVWPbWErxE83gon4R1itpgIN9TDZv3S+gM\n9ynlX9cyrRuAwtWEGUqhfOJdZHUIvXQ5wtfClvqgPOH1LqT+yTdJF6NUGvHx3XVO\nHB5XkcxxMeAnvY43wZsc7flleWfADMtjygtU2EXP8GpOLVyDEwWxDkJ1ghwK67Ta\ndpQWWbSnqo1alEWdELJ8y39xJrB/JSnFGc2sstfD5tx4fJ+1jI0ZvnCz3G1d42Rr\nnLaHfRoGSt5TddyvqejAXOhtL/Rhnki1XKhrl9/v1d25kUFPc+dK8z4yUXpWAHWs\nQfhPkRCaEYdTy9wbQ3T2tRATamuxYdGRGPVh47BSHQKBgQDeVHtk1MZVW0mohTCm\n+dto4QPGe0CVomQ1M6DGLv8fLpCTCpb2vdeftVjWXghZrWWaYBK3nZcyTP5+ii/g\nDW94TFWzB3a0M+tE1BGwc8Y9fifGqgcTeIxDbZzrDjmhOlebSvygX4uclmplPznl\ncaRpva3W6XJYGnCqMJf/XSaRTQKBgQC2sVHSA9X58Wy3ZTrbtTC1xGDx/2yGvoAw\n8w5pSj2w8f6wXvBV32uGWdf74s7XLS3g4I/y9nUGAJRJfzbBMwaAzjGHGX5UC6kp\nNJ5ZCfyRFOJ2hllIcsksj96RyDATry4fTc210XwXHHauz4tsqSfP6JomWggh6fj6\nTf4oq3zzCwKBgD1doiVlmUysArux74jXBBmBqhIZqOzkQrZwhprNE/veVWdQj/SQ\n17gsTNX2ZGWkN5wRknj91WK73667o5U7AB57K1hb4gbBIdoAktVaT0hfzsjF22gj\naMufsKUsavm2acHiQ7JcTOOunLVPa0KKSHArO5VLIBVzTs+a1AlXA7MtAoGAGRaw\nzc6JDBIDhAv60UFIty2IwrL5DGgM4qv+RqdTYYFaII5pIuHTuleMOaMkFJi3vDIa\nkpsV5wUdWBqIQm/nbLjkRFFT7+bKDEaVmFSuwp3Dm9NHX5Oj3OLFBfAf6hQcmV/t\n6BIkoGfgRJFr7Dgup3ah9LJYe4/OCVG8nYkvV5ECgYBFfQlhYv24M4RHQ/EbOIJY\nmZgZzcGz7nA0AWS8zeSoTizAtPwnoPElOs/+drJ+CKaAnfr8+BZ1spP2I8Sj6l9g\nXeDBlZvX7Q1baz6vdQr1KscjmWnHUbaDCrGWK+95umAVpyrabopynQt7T0GrBWKz\n+nixrt/C57fjiE2OHM8big==\n-----END PRIVATE KEY-----\n",
|
||||||
|
"client_email": "firebase-push-auth-dd@t-t-logistics.iam.gserviceaccount.com",
|
||||||
|
"client_id": "117030561604837789287",
|
||||||
|
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
|
||||||
|
"token_uri": "https://oauth2.googleapis.com/token",
|
||||||
|
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
|
||||||
|
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-push-auth-dd%40t-t-logistics.iam.gserviceaccount.com",
|
||||||
|
"universe_domain": "googleapis.com"
|
||||||
|
}
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
version: "3.3"
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
certbot_volume:
|
certbot_volume:
|
||||||
nginx_log_volume:
|
nginx_log_volume:
|
||||||
mysql_data_volume:
|
mysql_data_volume:
|
||||||
mysql_backup_volume:
|
mysql_backup_volume:
|
||||||
|
php_var_volume:
|
||||||
|
rabbitmq_volume:
|
||||||
|
redis_volume:
|
||||||
|
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
|
|
@ -20,8 +21,10 @@ services:
|
||||||
environment:
|
environment:
|
||||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||||||
MYSQL_USER: ${MYSQL_USER}
|
MYSQL_USER: ${MYSQL_USER}
|
||||||
MYSQL_DAABASE: ${MYSQL_DATABASE}
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
||||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||||||
|
ports:
|
||||||
|
- ${MYSQL_PORT}:3306
|
||||||
volumes:
|
volumes:
|
||||||
- mysql_data_volume:/var/lib/mysql
|
- mysql_data_volume:/var/lib/mysql
|
||||||
- mysql_backup_volume:/backups
|
- mysql_backup_volume:/backups
|
||||||
|
|
@ -35,6 +38,8 @@ services:
|
||||||
volumes:
|
volumes:
|
||||||
- ./configs/php/.env:/application/.env
|
- ./configs/php/.env:/application/.env
|
||||||
- ./configs/php/.env.local:/application/.env.local
|
- ./configs/php/.env.local:/application/.env.local
|
||||||
|
- ./configs/php/firebase-fcm-dotdot-key.json:/application/config/firebase-fcm-dotdot-key.json
|
||||||
|
- php_var_volume:/application/var
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
networks:
|
networks:
|
||||||
|
|
@ -46,12 +51,14 @@ services:
|
||||||
networks:
|
networks:
|
||||||
- dd
|
- dd
|
||||||
|
|
||||||
nuxt:
|
lms:
|
||||||
image: registry.dot-dot.ru/front:${FRONT_TAG}
|
image: registry.dot-dot.ru/lms:${LMS_TAG}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
command: npm run start
|
command: npm run start
|
||||||
volumes:
|
volumes:
|
||||||
- ./configs/nuxt/.env:/app/.env
|
- ./configs/lms/.env:/app/.env
|
||||||
|
env_file:
|
||||||
|
- ./configs/lms/.env
|
||||||
networks:
|
networks:
|
||||||
- dd
|
- dd
|
||||||
|
|
||||||
|
|
@ -62,18 +69,72 @@ services:
|
||||||
- ./configs/nginx/conf.d:/etc/nginx/conf.d
|
- ./configs/nginx/conf.d:/etc/nginx/conf.d
|
||||||
- ./configs/nginx/nginx.conf:/etc/nginx/nginx.conf
|
- ./configs/nginx/nginx.conf:/etc/nginx/nginx.conf
|
||||||
- ./configs/nginx/www:/var/www
|
- ./configs/nginx/www:/var/www
|
||||||
- ./configs/nginx/ssl:/etc/nginx/ssl
|
- /home/ddadmin/dotdot/configs/nginx/ssl:/etc/nginx/ssl
|
||||||
- ./configs/nginx/other:/etc/nginx/other
|
- ./configs/nginx/other:/etc/nginx/other
|
||||||
- certbot_volume:/etc/letsencrypt
|
- certbot_volume:/etc/letsencrypt
|
||||||
- nginx_log_volume:/var/log/nginx
|
- nginx_log_volume:/var/log/nginx
|
||||||
labels:
|
labels:
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
- "traefik.http.routers.nginx.rule=Host(`testa.dot-dot.ru`)"
|
- "traefik.http.routers.nginx${NETWORK}.rule=Host(`${NETWORK}.dot-dot.ru`)"
|
||||||
- "traefik.http.services.nginx.loadbalancer.server.port=80"
|
- "traefik.http.services.nginx${NETWORK}.loadbalancer.server.port=80"
|
||||||
depends_on:
|
depends_on:
|
||||||
- nuxt
|
|
||||||
- php
|
- php
|
||||||
- static
|
- static
|
||||||
|
networks:
|
||||||
|
dd:
|
||||||
|
ingress:
|
||||||
|
aliases:
|
||||||
|
- ${NETWORK}-nginx
|
||||||
|
|
||||||
|
rabbitmq:
|
||||||
|
image: rabbitmq:3.12.1-management-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
hostname: ${COMPOSE_PROJECT_NAME}
|
||||||
|
volumes:
|
||||||
|
- rabbitmq_volume:/var/lib/rabbitmq
|
||||||
|
- ./configs/rabbitmq/enabled_plugins:/etc/rabbitmq/enabled_plugins
|
||||||
|
environment:
|
||||||
|
- RABBITMQ_DEFAULT_USER=${RABBITMQ_USERNAME}
|
||||||
|
- RABBITMQ_DEFAULT_PASS=${RABBITMQ_PASSWORD}
|
||||||
|
- RABBITMQ_CONFIG_FILE=/etc/rabbitmq/rabbitmq.conf
|
||||||
|
networks:
|
||||||
|
dd: {}
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:7.2.4-alpine3.19
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- redis_volume:/data
|
||||||
|
- ./configs/redis:/usr/local/etc/redis
|
||||||
|
environment:
|
||||||
|
- REDIS_PASSWORD=${REDIS_PASSWORD}
|
||||||
|
- REDIS_PORT=6379
|
||||||
|
networks:
|
||||||
|
dd: {}
|
||||||
|
|
||||||
|
redis-exporter:
|
||||||
|
image: oliver006/redis_exporter:v1.59.0
|
||||||
|
command:
|
||||||
|
- "--redis.addr=redis://redis:6379"
|
||||||
|
- "--redis.password=${REDIS_PASSWORD}"
|
||||||
|
networks:
|
||||||
|
dd: {}
|
||||||
|
|
||||||
|
centrifugo:
|
||||||
|
image: centrifugo/centrifugo:v5
|
||||||
|
volumes:
|
||||||
|
- ./configs/centrifugo/config.json:/centrifugo/config.json
|
||||||
|
command: centrifugo -c config.json
|
||||||
|
ulimits:
|
||||||
|
nofile:
|
||||||
|
soft: 65535
|
||||||
|
hard: 65535
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- dd
|
||||||
|
|
||||||
|
landing-ttl:
|
||||||
|
image: registry.dot-dot.ru/landing-ttl:${LANDINGTTL_TAG}
|
||||||
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- dd
|
- dd
|
||||||
- ingress
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue