update
This commit is contained in:
parent
6826883110
commit
b4d115173a
22
.env
22
.env
|
|
@ -1,11 +1,23 @@
|
|||
COMPOSE_PROJECT_NAME=testa
|
||||
NETWORK=testa
|
||||
COMPOSE_PROJECT_NAME=mobile
|
||||
NETWORK=mobile
|
||||
|
||||
FRONT_TAG=test-nuxt
|
||||
DOTDOT_TAG=test-nuxt
|
||||
FRONT_TAG=master
|
||||
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_DATABASE=dot
|
||||
MYSQL_USER=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_name testa.dot-dot.ru;
|
||||
listen 80;
|
||||
server_name mobile.dot-dot.ru;
|
||||
|
||||
root /application/public;
|
||||
|
||||
client_max_body_size 10m;
|
||||
|
||||
|
||||
location / {
|
||||
proxy_pass http://nuxt:3000;
|
||||
proxy_pass http://landing-ttl;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
|
|
@ -19,25 +23,17 @@ server {
|
|||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "Upgrade";
|
||||
proxy_pass http://php:9000;
|
||||
proxy_pass http://php:8080;
|
||||
}
|
||||
|
||||
location @rewriteapp {
|
||||
rewrite ^(.*)$ /index.php/$1 last;
|
||||
}
|
||||
|
||||
# location /storybook {
|
||||
# alias /application/nuxt/storybook-static;
|
||||
# }
|
||||
|
||||
location /logout {
|
||||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
location /help {
|
||||
alias /application/help-platform/src/.vuepress/dist;
|
||||
}
|
||||
|
||||
location /api {
|
||||
rewrite ^(.*)$ /index.php/$1 last;
|
||||
}
|
||||
|
|
@ -66,6 +62,10 @@ server {
|
|||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
location ~* \/admin\/.*(js|jpg|png|css|woff|woff2)$ {
|
||||
proxy_pass http://static;
|
||||
}
|
||||
|
||||
location /media {
|
||||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
|
@ -89,7 +89,8 @@ server {
|
|||
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-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';
|
||||
|
|
|
|||
|
|
@ -1,10 +1,20 @@
|
|||
# server {
|
||||
# listen 80;
|
||||
# server_name mobilelms.dot-dot.ru;
|
||||
# return 301 https://$server_name$request_uri;
|
||||
# }
|
||||
|
||||
server {
|
||||
server_name testa.dot-dot.ru;
|
||||
listen 80;
|
||||
server_name mobilelms.dot-dot.ru;
|
||||
|
||||
root /application/public;
|
||||
|
||||
client_max_body_size 10m;
|
||||
|
||||
|
||||
location / {
|
||||
proxy_pass http://nuxt:3000;
|
||||
proxy_pass http://lms:3000;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
|
|
@ -16,26 +26,22 @@ server {
|
|||
}
|
||||
|
||||
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_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "Upgrade";
|
||||
proxy_pass http://php:${PHP_SOCKET_PORT}/;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
proxy_set_header Host $host;
|
||||
proxy_pass http://php:8080/;
|
||||
}
|
||||
|
||||
location @rewriteapp {
|
||||
rewrite ^(.*)$ /index.php/$1 last;
|
||||
}
|
||||
|
||||
location /storybook {
|
||||
alias /application/nuxt/storybook-static;
|
||||
}
|
||||
|
||||
location /logout {
|
||||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
location /help {
|
||||
alias /application/help-platform/src/.vuepress/dist;
|
||||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
location /api {
|
||||
|
|
@ -66,27 +72,39 @@ server {
|
|||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
location ~* \/admin\/.*(js|jpg|png|css|woff|woff2)$ {
|
||||
proxy_pass http://static;
|
||||
}
|
||||
|
||||
location /media {
|
||||
try_files $uri @rewriteapp;
|
||||
}
|
||||
|
||||
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(/|$) {
|
||||
if ($request_method = 'OPTIONS') {
|
||||
add_header 'Access-Control-Allow-Origin' $http_origin;
|
||||
add_header 'Access-Control-Allow-Credentials' 'true';
|
||||
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-Max-Age' 1728000;
|
||||
add_header 'Content-Type' 'text/plain charset=UTF-8';
|
||||
add_header 'Content-Length' 0;
|
||||
return 204;
|
||||
add_header 'Access-Control-Allow-Origin' $http_origin;
|
||||
add_header 'Access-Control-Allow-Credentials' 'true';
|
||||
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-Max-Age' 1728000;
|
||||
add_header 'Content-Type' 'text/plain charset=UTF-8';
|
||||
add_header 'Content-Length' 0;
|
||||
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-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';
|
||||
|
|
@ -96,7 +114,4 @@ server {
|
|||
include fastcgi_params;
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
DOCUMENT_ROOT=/application
|
||||
APP_HOST=dot-dot.local
|
||||
APP_SCHEME=http
|
||||
APP_HOST=mobile.dot-dot.ru
|
||||
APP_SCHEME=https
|
||||
|
||||
MAILER_DSN=null://null
|
||||
|
||||
|
|
@ -52,11 +52,16 @@ FNS_ACCESS_TOKEN=secret
|
|||
GOOGLE_MAPS_ACCESS_KEY=secret
|
||||
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_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/
|
||||
|
||||
###> 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
|
||||
|
||||
NUXT_BASE_URL=testa.dot-dot.ru
|
||||
NUXT_BASE_URL=mobile.dot-dot.ru
|
||||
|
||||
ATISU_API_TOKEN=a9698671a68441c7b3959e43995d1506
|
||||
|
||||
|
|
@ -31,11 +31,12 @@ TELEGRAM_CHAT_ID=-875661421
|
|||
###< telegramm ###
|
||||
|
||||
###> voicia ###
|
||||
VOICIA_CALL_ID=1949
|
||||
VOICIA_API_KEY=7589ed2721e50e299eb3baf2e3100a6b
|
||||
VOICIA_CALL_ID=8788
|
||||
###< voicia ###
|
||||
|
||||
###> 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 ###
|
||||
|
||||
###> comagic ###
|
||||
|
|
@ -44,15 +45,15 @@ COMAGIC_KEY=j769gveux0brdq7wb6insegwtczvz7nsqmuntkqv
|
|||
###< comagic ###
|
||||
|
||||
###> 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 ###
|
||||
|
||||
###> 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_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 ###
|
||||
|
||||
###< Vozovoz ###
|
||||
|
|
@ -111,3 +112,42 @@ PAPA_FINANCE_API_URL=DotDotAPI
|
|||
SOVKOM_API_KEY=AAk6UcV88xCCC26654rM
|
||||
SOVKOM_API_URL=https://testout.sovcomins.ru
|
||||
###< 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_STATISTIC=mysql://root:root@db:3306/dot_statistic?serverVersion=mariadb-10.3.25
|
||||
|
||||
NUXT_BASE_URL=testa.dot-dot.ru
|
||||
DOCUMENT_ROOT=/application
|
||||
APP_HOST=dot-dot.local
|
||||
APP_HOST=mobile.dot-dot.ru
|
||||
APP_SCHEME=http
|
||||
|
||||
MAILER_DSN=null://null
|
||||
|
|
@ -22,6 +21,9 @@ SP_PASSWORD=xmlweb
|
|||
SP_KEY=secret
|
||||
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
|
||||
ADMIN_EMAIL=change.this@dot-dot.ru
|
||||
ACCOUNTANT_EMAIL=noreplay@dot-dot.ru
|
||||
|
|
@ -50,10 +52,13 @@ FNS_ACCESS_TOKEN=secret
|
|||
GOOGLE_MAPS_ACCESS_KEY=secret
|
||||
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_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_BASE_URL=https://api.routing.yandex.net
|
||||
|
|
@ -124,4 +129,6 @@ SOVKOM_API_KEY=secret
|
|||
SOVKOM_API_URL=secret
|
||||
###< 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:
|
||||
certbot_volume:
|
||||
nginx_log_volume:
|
||||
mysql_data_volume:
|
||||
mysql_backup_volume:
|
||||
php_var_volume:
|
||||
rabbitmq_volume:
|
||||
redis_volume:
|
||||
|
||||
|
||||
networks:
|
||||
|
|
@ -20,8 +21,10 @@ services:
|
|||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||||
MYSQL_USER: ${MYSQL_USER}
|
||||
MYSQL_DAABASE: ${MYSQL_DATABASE}
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||||
ports:
|
||||
- ${MYSQL_PORT}:3306
|
||||
volumes:
|
||||
- mysql_data_volume:/var/lib/mysql
|
||||
- mysql_backup_volume:/backups
|
||||
|
|
@ -35,6 +38,8 @@ services:
|
|||
volumes:
|
||||
- ./configs/php/.env:/application/.env
|
||||
- ./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:
|
||||
- db
|
||||
networks:
|
||||
|
|
@ -46,12 +51,14 @@ services:
|
|||
networks:
|
||||
- dd
|
||||
|
||||
nuxt:
|
||||
image: registry.dot-dot.ru/front:${FRONT_TAG}
|
||||
lms:
|
||||
image: registry.dot-dot.ru/lms:${LMS_TAG}
|
||||
restart: unless-stopped
|
||||
command: npm run start
|
||||
volumes:
|
||||
- ./configs/nuxt/.env:/app/.env
|
||||
- ./configs/lms/.env:/app/.env
|
||||
env_file:
|
||||
- ./configs/lms/.env
|
||||
networks:
|
||||
- dd
|
||||
|
||||
|
|
@ -62,18 +69,72 @@ services:
|
|||
- ./configs/nginx/conf.d:/etc/nginx/conf.d
|
||||
- ./configs/nginx/nginx.conf:/etc/nginx/nginx.conf
|
||||
- ./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
|
||||
- certbot_volume:/etc/letsencrypt
|
||||
- nginx_log_volume:/var/log/nginx
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.nginx.rule=Host(`testa.dot-dot.ru`)"
|
||||
- "traefik.http.services.nginx.loadbalancer.server.port=80"
|
||||
- "traefik.http.routers.nginx${NETWORK}.rule=Host(`${NETWORK}.dot-dot.ru`)"
|
||||
- "traefik.http.services.nginx${NETWORK}.loadbalancer.server.port=80"
|
||||
depends_on:
|
||||
- nuxt
|
||||
- php
|
||||
- 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:
|
||||
- dd
|
||||
- ingress
|
||||
|
|
|
|||
Loading…
Reference in New Issue