From 7f7852ad2409b1d4ea5f522216d0ffcbba070664 Mon Sep 17 00:00:00 2001 From: ddadmin Date: Fri, 12 Sep 2025 16:40:55 +0300 Subject: [PATCH] update --- .env | 13 +- app.sh | 10 +- configs/admin/.env | 80 ++++++++ configs/admin/default | 24 +++ configs/firebase-fcm-dotdot-key.json | 13 -- configs/lms/.env | 8 +- configs/lms/entrypoint.sh | 10 + .../{wiki.dot-dot.ru.conf => admin.conf} | 17 +- ...ms.dot-dot.ru.conf => c2d.dot-dot.ru.conf} | 10 +- configs/nginx/conf.d/default.conf | 192 ------------------ configs/nginx/conf.d/demolms.dot-dot.ru.conf | 25 --- configs/nginx/conf.d/rabbitmq.conf | 48 ----- configs/nginx/other/dot-dot.ru/robots.txt | 32 +++ configs/nginx/other/lms.dot-dot.ru/robots.txt | 2 + configs/nginx/ssl/dot2025.crt | 107 ++++++++++ configs/nginx/ssl/dot2025.key | 51 +++++ configs/nuxt/.env | 16 -- configs/nuxt/entrypoint.sh | 55 ----- configs/php/.env | 16 +- configs/php/.env.local | 19 +- configs/php/.env.local.save | 180 ---------------- configs/redis/redis.conf | 0 docker-compose.yml | 101 ++------- scripts/chowner.sh | 7 - scripts/make_backup_mysql.sh | 16 -- 25 files changed, 390 insertions(+), 662 deletions(-) create mode 100644 configs/admin/.env create mode 100644 configs/admin/default delete mode 100644 configs/firebase-fcm-dotdot-key.json create mode 100755 configs/lms/entrypoint.sh rename configs/nginx/conf.d/{wiki.dot-dot.ru.conf => admin.conf} (51%) rename configs/nginx/conf.d/{lms.dot-dot.ru.conf => c2d.dot-dot.ru.conf} (94%) delete mode 100644 configs/nginx/conf.d/default.conf delete mode 100644 configs/nginx/conf.d/demolms.dot-dot.ru.conf delete mode 100644 configs/nginx/conf.d/rabbitmq.conf create mode 100644 configs/nginx/other/dot-dot.ru/robots.txt create mode 100644 configs/nginx/other/lms.dot-dot.ru/robots.txt create mode 100644 configs/nginx/ssl/dot2025.crt create mode 100644 configs/nginx/ssl/dot2025.key delete mode 100644 configs/nuxt/.env delete mode 100755 configs/nuxt/entrypoint.sh delete mode 100644 configs/php/.env.local.save delete mode 100644 configs/redis/redis.conf delete mode 100755 scripts/chowner.sh delete mode 100755 scripts/make_backup_mysql.sh diff --git a/.env b/.env index dab18ef..9828c32 100644 --- a/.env +++ b/.env @@ -1,15 +1,16 @@ -COMPOSE_PROJECT_NAME=prod -NETWORK=prod +COMPOSE_PROJECT_NAME=c2d +NETWORK=c2d -FRONT_TAG=master -DOTDOT_TAG=master -LMS_TAG=master +FRONT_TAG=134 +DOTDOT_TAG=134 +LMS_TAG=134 HELP_TAG=master +ADMIN_TAG=master PHP_SOCKER_HOST=ws PHP_SOCKET_PORT=8080 -MYSQL_PORT=0.0.0.0:3306 +MYSQL_PORT=0.0.0.0:33062 MYSQL_ROOT_PASSWORD=ahwaireiNeebeeW9keiZ MYSQL_DATABASE=dot MYSQL_USER=dot diff --git a/app.sh b/app.sh index 86c2dea..9f009f8 100755 --- a/app.sh +++ b/app.sh @@ -87,6 +87,7 @@ init() { up() { checkDockerCompose docker compose up -d + docker compose exec nginx nginx -t && docker compose exec nginx nginx -s reload } down() { @@ -125,6 +126,11 @@ purgeDb() { log "created database dot" "info" } +chown() { + docker compose exec php bash -c 'mkdir -p /application/var/cache/prod/profiler' + docker compose exec php bash -c 'chown -R www-data:www-data /application/var/cache/prod/*' +} + composer() { docker compose exec php php -d memory_limit=-1 /usr/local/bin/composer ${@:1} } @@ -149,7 +155,7 @@ case "$1" in "tests") composer tests;; "console"*) - docker compose exec php ./bin/console ${@:2};; + docker compose exec --user www-data php ./bin/console ${@:2};; "db") docker compose exec db mysql -uroot -p${MYSQL_ROOT_PASSWORD};; "db-create") @@ -166,6 +172,8 @@ case "$1" in purgeDb;; "restore-db") restoredb;; + "chown") + chown;; "front"*) case $2 in *) diff --git a/configs/admin/.env b/configs/admin/.env new file mode 100644 index 0000000..4181b4d --- /dev/null +++ b/configs/admin/.env @@ -0,0 +1,80 @@ +APP_NAME="DOT-DOT admin" +APP_ENV=production +APP_KEY=base64:tt8hr1y+cfNtEPQfWtFi9OXEDgko6Qw6uxeNK7ka3YU= +APP_DEBUG=true +APP_TIMEZONE=UTC +APP_URL=https://c2dadmin.dot-dot.ru +FRONTEND_URL=https://c2dadmin.dot-dot.ru +ASSET_URL=https://c2dadmin.dot-dot.ru +APP_EMAIL_DOMAIN="dot-dot.ru" + +APP_LOCALE=ru +APP_FALLBACK_LOCALE=ru +APP_FAKER_LOCALE=ru_RU + +APP_MAINTENANCE_DRIVER=file +# APP_MAINTENANCE_STORE=database + +BCRYPT_ROUNDS=12 + +LOG_CHANNEL=stack +LOG_STACK=single +LOG_DEPRECATIONS_CHANNEL=null +LOG_LEVEL=debug + +DEFAULT_DB_CONNECTION=dashboard + +#Параметры подключения к базе панели управления + +DASHBOARD_DB_HOST=db +DASHBOARD_DB_PORT=3306 +DASHBOARD_DB_DATABASE=dashboard +DASHBOARD_DB_USERNAME=root +DASHBOARD_DB_PASSWORD=ahwaireiNeebeeW9keiZ + +#Параметры подключения к базе dot-dot + +DOT_DOT_DB_HOST=db +DOT_DOT_DB_PORT=3306 +DOT_DOT_DB_DATABASE=dot +DOT_DOT_DB_USERNAME=root +DOT_DOT_DB_PASSWORD=ahwaireiNeebeeW9keiZ + +SESSION_DRIVER=database +SESSION_LIFETIME=120 +SESSION_ENCRYPT=false +SESSION_PATH=/ +SESSION_DOMAIN=null + +BROADCAST_CONNECTION=log +FILESYSTEM_DISK=local +QUEUE_CONNECTION=database + +CACHE_STORE=database +CACHE_PREFIX= + +MEMCACHED_HOST=127.0.0.1 + +REDIS_CLIENT=phpredis +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_MAILER=log +MAIL_HOST=127.0.0.1 +MAIL_PORT=2525 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null +MAIL_FROM_ADDRESS="hello@example.com" +MAIL_FROM_NAME="${APP_NAME}" + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= +AWS_USE_PATH_STYLE_ENDPOINT=false + +VITE_APP_NAME="${APP_NAME}" + +DOT_DOT_HOST=https://.dot-dot.ru diff --git a/configs/admin/default b/configs/admin/default new file mode 100644 index 0000000..e3557f7 --- /dev/null +++ b/configs/admin/default @@ -0,0 +1,24 @@ +server { + server_name admin.dot-dot.ru; + listen 443 ssl; + + ssl_certificate /etc/nginx/ssl/dot2024.crt; + ssl_certificate_key /etc/nginx/ssl/dot2024.key; + + + index index.php index.html index.htm; + root /application/public; + + + location / { + try_files $uri $uri/ /index.php?$args; + } + + location ~ \.php$ { + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; + fastcgi_pass localhost:9000; + try_files $uri =404; + fastcgi_index index.php; + } +} diff --git a/configs/firebase-fcm-dotdot-key.json b/configs/firebase-fcm-dotdot-key.json deleted file mode 100644 index d5d7878..0000000 --- a/configs/firebase-fcm-dotdot-key.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "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" -} diff --git a/configs/lms/.env b/configs/lms/.env index 374d74a..b9264f0 100644 --- a/configs/lms/.env +++ b/configs/lms/.env @@ -2,11 +2,11 @@ NUXT_HOST=0.0.0.0 NUXT_PORT=3000 NUXT_ENV_DEVALUE_LOG_LEVEL=silent WS_PROTOCOL=wss -BASE_URL=https://lms.dot-dot.ru/ -API_URL=https://lms.dot-dot.ru/ -DOMAIN=lms.dot-dot.ru +BASE_URL=https://c2d.dot-dot.ru/ +API_URL=https://c2d.dot-dot.ru/ +DOMAIN=c2d.dot-dot.ru -APP_HOST=lms.dot-dot.ru +APP_HOST=c2d.dot-dot.ru APP_SCHEME=https APP_ENVIRONMENT=production DADATA_API_TOKEN=c9aa5fdc338a746e23ce91ceb6fdb9e635749833 diff --git a/configs/lms/entrypoint.sh b/configs/lms/entrypoint.sh new file mode 100755 index 0000000..228fdbc --- /dev/null +++ b/configs/lms/entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/sh -x + +DOMAIN="${DOMAIN:-lms.dot-dot.ru}" + +for x in $(grep -lrw "lms.dot-dot.ru" .nuxt/);do + echo "replace lms.dot-dot.ru to https://${DOMAIN} in $x" + sed -i -e "s/lms.dot-dot.ru/${DOMAIN}/g" $x; +done + +"$@" diff --git a/configs/nginx/conf.d/wiki.dot-dot.ru.conf b/configs/nginx/conf.d/admin.conf similarity index 51% rename from configs/nginx/conf.d/wiki.dot-dot.ru.conf rename to configs/nginx/conf.d/admin.conf index 3b8f7fd..2026b9b 100644 --- a/configs/nginx/conf.d/wiki.dot-dot.ru.conf +++ b/configs/nginx/conf.d/admin.conf @@ -1,18 +1,23 @@ server { listen 80; - server_name wiki.dot-dot.ru; + server_name c2dadmin.dot-dot.ru; return 301 https://$server_name$request_uri; } server { - listen 443 ssl; - server_name wiki.dot-dot.ru; + listen 443 ssl ; + server_name c2dadmin.dot-dot.ru; - ssl_certificate /etc/nginx/ssl/dot2024.crt; - ssl_certificate_key /etc/nginx/ssl/dot2024.key; + ssl_certificate /etc/nginx/ssl/dot2025.crt; + ssl_certificate_key /etc/nginx/ssl/dot2025.key; + + client_max_body_size 10m; + + access_log /var/log/nginx/c2dadmin.dot-dot.ru_access.log json; + error_log /var/log/nginx/c2dadmin.dot-dot.ru_error.log; location / { - proxy_pass http://bookstack:80; + proxy_pass https://admin:443; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; diff --git a/configs/nginx/conf.d/lms.dot-dot.ru.conf b/configs/nginx/conf.d/c2d.dot-dot.ru.conf similarity index 94% rename from configs/nginx/conf.d/lms.dot-dot.ru.conf rename to configs/nginx/conf.d/c2d.dot-dot.ru.conf index a4618a1..38e6b13 100644 --- a/configs/nginx/conf.d/lms.dot-dot.ru.conf +++ b/configs/nginx/conf.d/c2d.dot-dot.ru.conf @@ -1,15 +1,15 @@ server { listen 80; - server_name lms.dot-dot.ru; + server_name c2d.dot-dot.ru; return 301 https://$server_name$request_uri; } server { listen 443 ssl; - server_name lms.dot-dot.ru; + server_name c2d.dot-dot.ru; - ssl_certificate /etc/nginx/ssl/dot2024.crt; - ssl_certificate_key /etc/nginx/ssl/dot2024.key; + ssl_certificate /etc/nginx/ssl/dot2025.crt; + ssl_certificate_key /etc/nginx/ssl/dot2025.key; access_log /var/log/nginx/lms.wwater.ru_access.log json; error_log /var/log/nginx/lms.wwater.ru_error.log; @@ -98,7 +98,7 @@ server { } location /robots.txt { - proxy_pass http://static; + root /etc/nginx/other/lms.dot-dot.ru; } location ~ ^/index\.php(/|$) { diff --git a/configs/nginx/conf.d/default.conf b/configs/nginx/conf.d/default.conf deleted file mode 100644 index da33fe3..0000000 --- a/configs/nginx/conf.d/default.conf +++ /dev/null @@ -1,192 +0,0 @@ -server { - listen 80; - server_name dot-dot.ru; - return 301 https://$server_name$request_uri; -} - -server { - listen 443 ssl; - server_name dot-dot.ru; - - ssl_certificate /etc/nginx/ssl/dot2024.crt; - ssl_certificate_key /etc/nginx/ssl/dot2024.key; - - root /application/public; - - client_max_body_size 30m; - - location / { - proxy_pass http://nuxt:3000; - 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; - } - - 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 $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 { - # proxy_pass http://help-platform; - #} - - location /api { - rewrite ^(.*)$ /index.php/$1 last; - } - - location /clockwork { - rewrite ^(.*)$ /index.php/$1 last; - } - - location /__clockwork { - rewrite ^(.*)$ /index.php/$1 last; - } - - location /pdf { - rewrite ^(.*)$ /index.php/$1 last; - } - - location /1c { - rewrite ^(.*)$ /index.php/$1 last; - } - - location /socket { - try_files $uri @rewriteapp; - } - - location /admin { - try_files $uri @rewriteapp; - } - - location ~* \/admin\/.*(js|jpg|png|css|woff|woff2)$ { - proxy_pass http://static; - } - - location /media { - try_files $uri @rewriteapp; - } - - location /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-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'; - - fastcgi_pass backend:9001; - fastcgi_split_path_info ^(.+\.php)(/.*)$; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - } - - location /metrics { - access_log /var/log/nginx/node_exporter_access.log json; - error_log /var/log/nginx/node_exporter_error.log; - - #if ($allow = 0) { - # return 403; - #} - - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_http_version 1.1; - proxy_pass http://node-exporter:9100/metrics; - } - - location /cadvisor { - access_log /var/log/nginx/cadvisor_access.log json; - error_log /var/log/nginx/cadvisor_error.log; - - #if ($allow = 0) { - # return 403; - #} - - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_http_version 1.1; - proxy_pass http://cadvisor:8080/metrics; - } - - location /mysql_exporter { - access_log /var/log/nginx/mysql_exporter_access.log json; - error_log /var/log/nginx/mysql_exporter_error.log; - - #if ($allow = 0) { - # return 403; - #} - - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_http_version 1.1; - proxy_pass http://mysqld-exporter:9104/metrics; - } - - location /redis_exporter { - access_log /var/log/nginx/mysql_exporter_access.log json; - error_log /var/log/nginx/mysql_exporter_error.log; - - #if ($allow = 0) { - # return 403; - #} - - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_http_version 1.1; - proxy_pass http://redis-exporter:9121/metrics; - } - -} diff --git a/configs/nginx/conf.d/demolms.dot-dot.ru.conf b/configs/nginx/conf.d/demolms.dot-dot.ru.conf deleted file mode 100644 index 34dfc93..0000000 --- a/configs/nginx/conf.d/demolms.dot-dot.ru.conf +++ /dev/null @@ -1,25 +0,0 @@ -server { - listen 80; - server_name demolms.dot-dot.ru demo.dot-dot.ru; - return 301 https://$server_name$request_uri; -} - -server { - listen 443 ssl; - server_name demolms.dot-dot.ru demo.dot-dot.ru; - - ssl_certificate /etc/nginx/ssl/dot2024.crt; - ssl_certificate_key /etc/nginx/ssl/dot2024.key; - - location ~ /.* { - proxy_pass http://demolms-nginx; - 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; - } -} diff --git a/configs/nginx/conf.d/rabbitmq.conf b/configs/nginx/conf.d/rabbitmq.conf deleted file mode 100644 index c7e369a..0000000 --- a/configs/nginx/conf.d/rabbitmq.conf +++ /dev/null @@ -1,48 +0,0 @@ -server { - listen 80; - server_name rabbitmq.dot-dot.ru; - return 301 https://$server_name$request_uri; -} - -server { - listen 443 ssl; - server_name rabbitmq.dot-dot.ru; - - access_log /var/log/nginx/rabbitmq.wwater.ru_access.log json; - error_log /var/log/nginx/rabbitmq.wwater.ru_error.log; - - ssl_certificate /etc/nginx/ssl/dot2024.crt; - ssl_certificate_key /etc/nginx/ssl/dot2024.key; - - proxy_buffer_size 128k; - proxy_buffers 4 128k; - client_body_buffer_size 32k; - client_header_buffer_size 256k; - large_client_header_buffers 4 256k; - - location / { - client_max_body_size 600m; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_pass http://rabbitmq:15672; - proxy_connect_timeout 600; - proxy_send_timeout 600; - proxy_read_timeout 600; - send_timeout 600; - } - - location /metrics { - client_max_body_size 600m; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - proxy_set_header Host $http_host; - proxy_redirect off; - proxy_pass http://rabbitmq:15692/metrics; - proxy_connect_timeout 600; - proxy_send_timeout 600; - proxy_read_timeout 600; - send_timeout 600; - } -} diff --git a/configs/nginx/other/dot-dot.ru/robots.txt b/configs/nginx/other/dot-dot.ru/robots.txt new file mode 100644 index 0000000..d3e53ba --- /dev/null +++ b/configs/nginx/other/dot-dot.ru/robots.txt @@ -0,0 +1,32 @@ +User-agent: * +Disallow: / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/configs/nginx/other/lms.dot-dot.ru/robots.txt b/configs/nginx/other/lms.dot-dot.ru/robots.txt new file mode 100644 index 0000000..1f53798 --- /dev/null +++ b/configs/nginx/other/lms.dot-dot.ru/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / diff --git a/configs/nginx/ssl/dot2025.crt b/configs/nginx/ssl/dot2025.crt new file mode 100644 index 0000000..b3ef97a --- /dev/null +++ b/configs/nginx/ssl/dot2025.crt @@ -0,0 +1,107 @@ +-----BEGIN CERTIFICATE----- +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 +DIQhj8h1rzW2eyc= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFjTCCA3WgAwIBAgIRAIN9TriekS/nLK07x2kt3CAwDQYJKoZIhvcNAQELBQAw +TDEgMB4GA1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkds +b2JhbFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMjUwNTIxMDIzNjUyWhcN +MjcwNTIxMDAwMDAwWjBVMQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2ln +biBudi1zYTErMCkGA1UEAxMiR2xvYmFsU2lnbiBHQ0MgUjYgQWxwaGFTU0wgQ0Eg +MjAyNTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ/oiu0Bviq52UUE +ADbFWmgu3rC7KDSMoorLN1Wd03McG3Z1aP71DlPCE33838r72Dfuj5M9LXfiQLJp +Au6MwNExmKOzothw4x0zGf5oBYyrCMGm3fBpLPafwYQ3MchBOWMTbf83rKUPLH48 +KCJ0MnU8GUl8oA/J81wIvbbKPuNrFf6hvJDccjzc4NyxLz3A89zjV2g5whCg5O0u +9YX4Zxk9JHuc/LvllOJO4waAYLjbWBJkz3rV3ts1SmSYnJqmyRTIjXwQgRvhEYqt +DbRskt0W7M6cPwCze3GTBN2UHNpHkMs3YmVxku68I0aOQn5+uz//fDROP3z1Z/7I +APteRtECAwEAAaOCAV8wggFbMA4GA1UdDwEB/wQEAwIBhjAdBgNVHSUEFjAUBggr +BgEFBQcDAQYIKwYBBQUHAwIwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU +xbSTj28r3B5Iv7cQMIXO0bK7SC0wHwYDVR0jBBgwFoAUrmwFo5MT4qLn4tcc1sfw +f8hnU6AwewYIKwYBBQUHAQEEbzBtMC4GCCsGAQUFBzABhiJodHRwOi8vb2NzcDIu +Z2xvYmFsc2lnbi5jb20vcm9vdHI2MDsGCCsGAQUFBzAChi9odHRwOi8vc2VjdXJl +Lmdsb2JhbHNpZ24uY29tL2NhY2VydC9yb290LXI2LmNydDA2BgNVHR8ELzAtMCug +KaAnhiVodHRwOi8vY3JsLmdsb2JhbHNpZ24uY29tL3Jvb3QtcjYuY3JsMCEGA1Ud +IAQaMBgwCAYGZ4EMAQIBMAwGCisGAQQBoDIKAQMwDQYJKoZIhvcNAQELBQADggIB +AB/uvBuZf4CiuSahwiXn4geF52roAH+6jxsEPTXTfb7bbeMDXsYgRRsOTNA70ruZ +Tnz5DfFMuBhNoFhIFb0qR1izdy6VkdKOqFPNF2dOFI1EcnY9l2ory9mrzHqVbrL4 +vzUd17FLUVyjTVU7PAv4nxyhnO1GTeT83YlrdRF31NyR6bvZVTEERHmpbWSgeveJ +LRtaMzlGWiLZ8IwkH7o6GH3jp/KPtDW4Npu8w64HrRZdN2pqQhi7+YKwfHM7H+2U +dM1BGN0sjOWMVbMSB9MtCsleS2Mb7TRZEbOHxECJLLIluQypZr7Pol3+hAqrhyKI +k+6y+Da0NeDuWxW59Ku4NvClqW1UFX1SpfNGhzVfp/CH+vPM1tySomx2jE0EnYZu +GwVucXPBsp5nUWqUV9+143glVuS7GTg9hFPjNBInn17HbCoIIQIOzj5Vd9bK3A9U +GxXNpwenDHEalCsD/4eQYDHPhFE7sNe0D/OXu+FAM02VZkARx37Jp4bDdujvgL9P +vZPR3wThvDN1CTU8Bc3xea3yKFAraKcPZLkhReQUAm2VpR+HSJRPlUpYizlF9WkL +h3KcAVCBJWvnOkVwxyU5QJMcnwW95JlOtx+9100GL99jHE5rs3gXp7F4bg8H01QT +9jVOhBBmQ7nQoXuwI0tqal2QUqZz3eeu62CU7xBwtfYR +-----END CERTIFICATE----- + +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIORea7A4Mzw4VlSOb/RVEwDQYJKoZIhvcNAQEMBQAwTDEg +MB4GA1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2Jh +bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTQxMjEwMDAwMDAwWhcNMzQx +MjEwMDAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjET +MBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJUH6HPKZvnsFMp7PPcNCPG0RQssgrRI +xutbPK6DuEGSMxSkb3/pKszGsIhrxbaJ0cay/xTOURQh7ErdG1rG1ofuTToVBu1k +ZguSgMpE3nOUTvOniX9PeGMIyBJQbUJmL025eShNUhqKGoC3GYEOfsSKvGRMIRxD +aNc9PIrFsmbVkJq3MQbFvuJtMgamHvm566qjuL++gmNQ0PAYid/kD3n16qIfKtJw +LnvnvJO7bVPiSHyMEAc4/2ayd2F+4OqMPKq0pPbzlUoSB239jLKJz9CgYXfIWHSw +1CM69106yqLbnQneXUQtkPGBzVeS+n68UARjNN9rkxi+azayOeSsJDa38O+2HBNX +k7besvjihbdzorg1qkXy4J02oW9UivFyVm4uiMVRQkQVlO6jxTiWm05OWgtH8wY2 +SXcwvHE35absIQh1/OZhFj931dmRl4QKbNQCTXTAFO39OfuD8l4UoQSwC+n+7o/h +bguyCLNhZglqsQY6ZZZZwPA1/cnaKI0aEYdwgQqomnUdnjqGBQCe24DWJfncBZ4n +WUx2OVvq+aWh2IMP0f/fMBH5hc8zSPXKbWQULHpYT9NLCEnFlWQaYw55PfWzjMpY +rZxCRXluDocZXFSxZba/jJvcE+kNb7gu3GduyYsRtYQUigAZcIN5kZeR1Bonvzce +MgfYFGM8KEyvAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBSubAWjkxPioufi1xzWx/B/yGdToDAfBgNVHSMEGDAWgBSu +bAWjkxPioufi1xzWx/B/yGdToDANBgkqhkiG9w0BAQwFAAOCAgEAgyXt6NH9lVLN +nsAEoJFp5lzQhN7craJP6Ed41mWYqVuoPId8AorRbrcWc+ZfwFSY1XS+wc3iEZGt +Ixg93eFyRJa0lV7Ae46ZeBZDE1ZXs6KzO7V33EByrKPrmzU+sQghoefEQzd5Mr61 +55wsTLxDKZmOMNOsIeDjHfrYBzN2VAAiKrlNIC5waNrlU/yDXNOd8v9EDERm8tLj +vUYAGm0CuiVdjaExUd1URhxN25mW7xocBFymFe944Hn+Xds+qkxV/ZoVqW/hpvvf +cDDpw+5CRu3CkwWJ+n1jez/QcYF8AOiYrg54NMMl+68KnyBr3TsTjxKM4kEaSHpz +oHdpx7Zcf4LIHv5YGygrqGytXm3ABdJ7t+uA/iU3/gKbaKxCXcPu9czc8FB10jZp +nOZ7BN9uBmm23goJSFmH63sUYHpkqmlD75HHTOwY3WzvUy2MmeFe8nI+z1TIvWfs +pA9MRf/TuTAjB0yPEL+GltmZWrSZVxykzLsViVO6LAUP5MSeGbEYNNVMnbrt9x+v +JJUEeKgDu+6B5dpffItKoZB0JaezPkvILFa9x8jvOOJckvB595yEunQtYQEgfn7R +8k8HWV+LLUNS60YMlOH1Zkd5d9VUWx+tJDfLRVpOoERIyNiwmcUVhAn21klJwGW4 +5hpxbqCo8YLoRT5s1gLXCmeDBVrJpBA= +-----END CERTIFICATE----- diff --git a/configs/nginx/ssl/dot2025.key b/configs/nginx/ssl/dot2025.key new file mode 100644 index 0000000..a8fd5ac --- /dev/null +++ b/configs/nginx/ssl/dot2025.key @@ -0,0 +1,51 @@ +-----BEGIN RSA PRIVATE KEY----- +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 +-----END RSA PRIVATE KEY----- diff --git a/configs/nuxt/.env b/configs/nuxt/.env deleted file mode 100644 index 35ac3c4..0000000 --- a/configs/nuxt/.env +++ /dev/null @@ -1,16 +0,0 @@ -NUXT_HOST=0.0.0.0 -NUXT_PORT=3000 -NUXT_ENV_DEVALUE_LOG_LEVEL=silent -WS_PROTOCOL=wss -BASE_URL=dot-dot.ru -API_URL=https://dot-dot.ru/ -DOMAIN=dot-dot.ru - -APP_HOST=dot-dot.ru -APP_SCHEME=https -APP_ENVIRONMENT=production -DADATA_API_TOKEN=c9aa5fdc338a746e23ce91ceb6fdb9e635749833 -YANDEX_METRIKA_ID=50156956 -PHONE_KEY=qwefghzcx - -SMARTCAPTCHA_CLIENT_KEY=ysc1_GLQZ8QPaFh0eXqZ5KaRM0WJYqoP9vL0uqhujfcw75c1487df diff --git a/configs/nuxt/entrypoint.sh b/configs/nuxt/entrypoint.sh deleted file mode 100755 index ede5ebd..0000000 --- a/configs/nuxt/entrypoint.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh - -DOMAIN="${DOMAIN:-dot-dot.local}" -APP_HOST="${APP_HOST:-dot-dot.local}" -API_URL="{API_URL:-${DOMAIN}}" -APP_SCHEME="${APP_SCHEME:-http}" -API_URL="${APP_SCHEME}://${DOMAIN}/" -BASE_URL="${APP_SCHEME}://${DOMAIN}" -APP_ENVIRONMENT="${APP_ENVIRONMENT:-development}" -WS_PROTOCOL=${WS_PROTOCOL:-ws} - -for x in $(grep -lr baseURL .nuxt/);do - sed -i -e "s#\"baseURL\":\"http://dot-dot.local\"#\"baseURL\":\"${BASE_URL}\"#g" $x -done - -for x in $(grep -lr APP_SCHEME .nuxt/);do - sed -i -e "s#\"APP_SCHEME\":\"http\"#\"APP_SCHEME\":\"${APP_SCHEME}\"#g" $x - sed -i -e "s#APP_SCHEME:\"http\"#\"APP_SCHEME\":\"${APP_SCHEME}\"#g" $x -done - -for x in $(grep -lr APP_HOST .nuxt/);do - sed -i -e "s#\"APP_HOST\":\"dot-dot.local\"#\"APP_HOST\":\"${APP_HOST}\"#g" $x -done - -for x in $(grep -lr BASE_URL .nuxt/);do - sed -i -e "s#\"BASE_URL\":\"http://dot-dot.local\"#\"BASE_URL\":\"${BASE_URL}\"#g" $x -done - -for x in $(grep -lr API_URL .nuxt/);do - sed -i -e "s#\"API_URL\":\"http://dot-dot.local/\"#\"API_URL\":\"${API_URL}\"#g" $x -done - -for x in $(grep -lr APP_ENVIRONMENT .nuxt/);do - sed -i -e "s#\"APP_ENVIRONMENT\":\"development\"#\"APP_ENVIRONMENT\":\"${APP_ENVIRONMENT}\"#g" $x - sed -i -e "s#\"APP_ENVIRONMENT\": \"development\"#\"APP_ENVIRONMENT\":\"${APP_ENVIRONMENT}\"#g" $x - sed -i -e "s#APP_ENVIRONMENT:\"development\"#\"APP_ENVIRONMENT\":\"${APP_ENVIRONMENT}\"#g" $x -done - -for x in $(grep -lr WS_PROTOCOL .nuxt/);do - sed -i -e "s#\"WS_PROTOCOL\":\"ws\"#\"WS_PROTOCOL\":\"${WS_PROTOCOL}\"#g" $x - sed -i -e "s#WS_PROTOCOL:\"ws\"#\"WS_PROTOCOL\":\"${WS_PROTOCOL}\"#g" $x - sed -i -e "s#\"WS_PROTOCOL\": \"ws\"#\"WS_PROTOCOL\": \"${WS_PROTOCOL}\"#g" $x -done - -for x in $(grep -lr dot-dot.local .nuxt/);do - echo "replace dot-dot.local to ${DOMAIN} in $x" - sed -i -e "s#dot-dot.local#${DOMAIN}#g" $x; -done - -for x in $(grep -lr http://${DOMAIN} .nuxt/);do - echo "replace http://${DOMAIN} to ${APP_SCHEME}://${DOMAIN} in $x" - sed -i -e "s#http://${DOMAIN}#${APP_SCHEME}://${DOMAIN}#g" $x; -done - -"$@" diff --git a/configs/php/.env b/configs/php/.env index bced672..c7b34bb 100644 --- a/configs/php/.env +++ b/configs/php/.env @@ -10,7 +10,7 @@ DATABASE_URL_DOT=mysql://root:ahwaireiNeebeeW9keiZ@db:3306/dot?serverVersion=mar DATABASE_URL_DOT_STATISTIC=mysql://root:ahwaireiNeebeeW9keiZ@db:3306/dot_statistic?serverVersion=mariadb-10.3.25 DOCUMENT_ROOT=/application -APP_HOST=dot-dot.ru +APP_HOST=c2d.dot-dot.ru APP_SCHEME=https MAILER_DSN=null://null @@ -132,3 +132,17 @@ SOVKOM_API_URL=secret ###< SOVKOM### MAGIC_API_URL=https://magic-trans.ru/ + +SMS_PROVIDER=prostor-sms +PROSTOR_SMS_END_POINT_URL=http://api.prostor-sms.ru +PROSTOR_SMS_LOGIN=secret +PROSTOR_SMS_PASSWORD=secret + +###> OTK ### +OTK_API_END_POINT_URL="https://test-api.otk.su" +OTK_API_TOKEN="Q5vBE9jusg38Rk7wHt2bzycT4K6pePFZ" +###< OTK ### + +ACCOUNTING_AUDIT_URL=https://crm.dot-dot.ru +ACCOUNTING_AUDIT_LOGIN=secret +ACCOUNTING_AUDIT_PASSWORD=secret diff --git a/configs/php/.env.local b/configs/php/.env.local index 5b40181..ddf079e 100644 --- a/configs/php/.env.local +++ b/configs/php/.env.local @@ -1,4 +1,5 @@ -APP_ENV=prod + +APP_ENV=dev DATABASE_URL=mysql://root:ahwaireiNeebeeW9keiZ@db:3306/dot?serverVersion=mariadb-10.3.25 @@ -139,9 +140,6 @@ DPD_CLIENT_NUMBER=1001066989 DPD_CLIENT_KEY=8D52BF0F4D272FA91AF7B8EFC64C74EA31B89C4D ###< DPD ### - -ACCOUNTING_AUDIT_URL="https://crm.dot-dot.ru/TTLBuhreport/hs/TT/reconciliationreport" - PAPA_FINANCE_API_URL=https://prod.papafinance.ru/api/ttn PAPA_FINANCE_PASSWORD='4sw$!cN#2j$tvcm2' PAPA_FINANCE_LOGIN=tochka-tochka-logistika @@ -193,3 +191,16 @@ USER_TRUST_CHECK_BACKEND=true ###< API_KONTUR_FOCUS### QUEUE_DSN_USER_TRUST=amqp://ddadmin:Utahth9aeshahgh3saik@rabbitmq:5672/%2f/USER_TRUST + +PROSTOR_SMS_LOGIN=ap142656 +PROSTOR_SMS_PASSWORD=808350 + +###> OTK ### +OTK_API_END_POINT_URL="https://api.otk.su" +OTK_API_TOKEN="wSMxTp3ye9mtPcNG7CbQszq6VLK38jaQ" +###< OTK ### + +ACCOUNTING_AUDIT_LOGIN=ReportServis +ACCOUNTING_AUDIT_PASSWORD=fE7mubiv + +ML_CALCULATOR_SPOT_URL=https://ml.dot-dot.ru/v1/price_calculator/spot diff --git a/configs/php/.env.local.save b/configs/php/.env.local.save deleted file mode 100644 index 86c96d4..0000000 --- a/configs/php/.env.local.save +++ /dev/null @@ -1,180 +0,0 @@ -APP_ENV=prod - -DATABASE_URL=mysql://root:ahwaireiNeebeeW9keiZ@db:3306/dot?serverVersion=mariadb-10.3.25 - -DOCUMENT_ROOT=/application -APP_HOST=dot-dot.ru -APP_SCHEME=https -TEST_HOST=https://dot-dot.ru - -MAILER_DSN_YANDEX=smtp://no_reply@dot-dot.ru:gqwaofmeyvxefrqk@smtp.yandex.ru:587 -MAILER_DSN=smtp://no_reply@dot-dot.ru:NRTk7rXhesHQpi3YWB92@smtp.mail.ru:465 - -SP_KEY=16e93b225c730920ac5741a8d8df788f -SP_TEST=false - -SBERBANK_LOGIN=dot-dot_1-api -SBERBANK_PASSWORD=kepwir-2gocfi-Mudpet -SBERBANK_TESTMODE=false - -DEFAULT_EMAIL=no_reply@dot-dot.ru -ADMIN_EMAIL=orders@dot-dot.ru -ACCOUNTANT_EMAIL=ksg@dot-dot.ru -SALES_EMAIL=sale.ftl@dot-dot.ru -LOGIST_EMAIL=nd@dot-dot.ru -LEAD_EMAIL=lead.hunter@dot-dot.ru - -APP_SEND_REAL_SMS=true -SMSC_LOGIN=Dot-Dot -SMSC_PASS=OY4loBiCYTHjMoadyfru - -DADATA_API_TOKEN=c9aa5fdc338a746e23ce91ceb6fdb9e635749833 -DADATA_API_SECRET=1ea37a4d310e7a6ac64211ffe5686363f04d4e68 - -ROISTAT_API_KEY=c63a71dd721df7f1b1d7b5803a84ccc7 -ROISTAT_PROJECT_ID=154928 - -UNISENDER_API_KEY=6ugo1c6yqfux9wrs8pbaom3izz9pc9huetqbdo9y - -GTD_ACCESS_TOKEN=5fgNQ_gZ95OmyOLl7nKJhtJ4LcWVQNbl - -FNS_ACCESS_TOKEN=a5639b93fe4e7c9a3f1dd85537e066d36439c352 - -GOOGLE_MAPS_ACCESS_KEY=AIzaSyCLqawvvNm0Oj1Nt8yaQ-CdvQ1190oPaug - -GRAFANA_ADMIN_PASSWORD=uyt>bE8AZ2ctthyx -GRAFANA_API_URL=https://grafana.dev.dot-dot.ru -GRAFANA_PUBLIC_URL=https://grafana.dev.dot-dot.ru - -YANDEX_MAPS_ACCESS_KEY=f706092a-d705-4665-a16a-0811bd2a2c89 - -THREESELLER_USERNAME=tk@dot-dot.ru -THREESELLER_PASSWORD=Logistika01 - -NUXT_BASE_URL=dot-dot.ru - -ATISU_API_TOKEN_OLD=a9698671a68441c7b3959e43995d1506 -ATISU_API_TOKEN=46b599c3ab7f4574b560f48ea005d9f3 - -###> google/apiclient ### -ANALITIC_GOOGLE_CLIENT_ID=672035500859-32f85hchubthu9givkdtgkqhvjg00c8e.apps.googleusercontent.com -ANALITIC_GOOGLE_CLIENT_SECRET=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 -ANALITIC_GOOGLE_CLIENT_REDIRECT_URI=https://dot-dot.ru/admin/analitic/google-callback -###< google/apiclient ### - -###> telegramm ### -TELEGRAM_BOT_TOKEN=5807192360:AAHSUZcWeY1bC7aqdmcYXOfb1CYyK0xx0Cc -TELEGRAM_CHAT_ID=-875661421 -TELEGRAM_CHAT_BOT_ACCESS_TOKEN=88c53d63aa87b39e1c27c8db2764e5b7 -###< telegramm ### - -VOICIA_API_KEY=7589ed2721e50e299eb3baf2e3100a6b - -###> voicia ### -VOICIA_CALL_ID=8788 -###< voicia ### - -###> ml_calculator ### -ML_CALCULATOR_URL=https://ml.dot-dot.ru/v2/classification/order/relevance -###< ml_calculator ### - -UAT_1C_API_URL=http://1c.nwtlk.ru/UAT/hs -UAT_1C_USER=ТТ_Запросы -UAT_1C_PASSWORD=9421354 - -###> 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/v3/classification/direction/confidence -###< direction_scoring ### - -###< Vozovoz ### -VOZOVOZ_API_KEY=5Thue256i0n5jXpB8vQfzng0VNJKGDar7ol5x0iD -VOZOVOZ_API_URL=https://vozovoz.ru/ -###> Vozovoz ### - -###< Pek ### -PECOM_API_LOGIN=TochkaTochka -PECOM_API_PASSWORD=EB77132653DD37BCD4EF591968F504CFB04BDFC4 -PECOM_API_URL=https://kabinet.pecom.ru/ -###> Pek ### - -###< TkKit ### -TKKIT_API_TOKEN=FKIICpqz25v10RuFcNorHACFdhEtkQK8 -TKKIT_API_URL=https://capi.tk-kit.com/ -###> TkKit ### - -###> Baikal ### -BAIKAL_API_KEY=NjJiZjdiMjU0N2Y4ZTk5OTY3OTY3OGUxM2VjZjA3N2M6 -BAIKAL_API_URL=https://api.baikalsr.ru/v2 -BAIKAL_API_PARTNER_GUID=PROVERKA -###< Baikal ### - -###> DelovieLinii ### -DELLIN_API_KEY=BE38996C-F722-4691-BCF3-640B76DAB18B -DELLIN_API_URL=https://api.dellin.ru/ -DELLIN_PASSWORD=Logistika01 -DELLIN_LOGIN=km@dot-dot.ru -###< DelovieLinii ### - -###> JelDorEksp ### -JDE_API_USER=2252131242955194 -JDE_API_TOKEN=159687460352596660 -###< JelDorEksp ### - -###> Nordweel ### -NORDWHEEL_API_URL=https://nordw.ru/ -###< Nordweel ### - -###> SKIF ### -SKIF_API_URL=http://api.skif-cargo.ru/integrations/ws/orders.1cws -SKIF_API_LOGIN=DotDotAPI -SKIF_API_PASSWORD=H*GYU#7g8YG*#! -###< SKIF ### - -###> DPD ### -DPD_CLIENT_NUMBER=1001066989 -DPD_CLIENT_KEY=8D52BF0F4D272FA91AF7B8EFC64C74EA31B89C4D -###< DPD ### - - -ACCOUNTING_AUDIT_URL="https://crm.dot-dot.ru/TTLBuhreport/hs/TT/reconciliationreport" - -PAPA_FINANCE_API_URL=https://prod.papafinance.ru/api/ttn -PAPA_FINANCE_PASSWORD='4sw$!cN#2j$tvcm2' -PAPA_FINANCE_LOGIN=tochka-tochka-logistika - -ML_REGULAR_DIRECTION_URL=https://ml.dot-dot.ru/v2/schedule/transport - -###> SP_V3 ### -SP_V3_KEY=16e93b225c730920ac5741a8d8df788f -SP_V3_URL=https://spasskievorota.ru/services/work/cargo_3.php -###< SP_V3 ### - -ML_DIRECTION_RECALCULATE_URL=https://ml.dot-dot.ru/v2/schedule/calculate -ML_REGULAR_DIRECTION_CHAIN_URL=https://ml.dot-dot.ru/v1/schedule/chains - -###> YandexTracker ### -YTRACKER_API_TOKEN="y0_AgAEA7qkKFmeAAjF8AAAAADXovQd6htdkt7LTDW_sNHCz7qV9zdVHaQ" -YTRACKER_ORGANISATION_ID=355207 -###< YandexTracker ### - -SMARTCAPTCHA_SERVER_KEY=ysc2_GLQZ8QPaFh0eXqZ5KaRMuRRZOX7qNNMy7P9Mq82V6c4e7b81 - -ML_REGULAR_DIRECTION_RELEVANCE_CARRIERS_URL=https://ml.dot-dot.ru/v2/schedule/carrier/scoring - -ML_UNCERTAIN_DIRECTIONS_URL=https://ml.dot-dot.ru/v1/classification/direction/uncertain - -###> sentry/sentry-symfony ### -SENTRY_DSN="https://eedc2e8b1310ec9b04c2b0da8490dc01@sentry.dot-dot.ru/3" -SENTRY_SERVER_NAME=prod -SENTRY_SERVER_USER_NAME=admin -###< sentry/sentry-symfony ### - -ML_CALCULATOR_TRADE_ONLY_URL=https://ml.dot-dot.ru/v1/tender/price - -ML_REGULAR_DIRECTION_HISTORY_ORDER_URL=https://ml.dot-dot.ru/v1/schedule/transport/orders - -QUEUE_DSN_OC_CARRIER_OFFERS=amqp://ddadmin:Utahth9aeshahgh3saik@rabbitmq:4369/%2f/OC_CARRIER_OFFERS diff --git a/configs/redis/redis.conf b/configs/redis/redis.conf deleted file mode 100644 index e69de29..0000000 diff --git a/docker-compose.yml b/docker-compose.yml index 59b5a8f..755a6a2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,18 +1,14 @@ -version: "3.3" - volumes: certbot_volume: nginx_log_volume: mysql_data_volume: mysql_backup_volume: php_var_volume: - bookstack_data_volume: rabbitmq_volume: redis_volume: php_support_volume: - x-defaults-php: &defaults-php image: registry.dot-dot.ru/dot-dot:${DOTDOT_TAG} restart: unless-stopped @@ -26,7 +22,6 @@ x-defaults-php: &defaults-php - ./configs/php/firebase-fcm-dotdot-key.json:/application/config/firebase-fcm-dotdot-key.json depends_on: - db - - rabbitmq networks: - dd @@ -95,8 +90,10 @@ services: command: npm run start volumes: - ./configs/lms/.env:/app/.env + - ./configs/lms/entrypoint.sh:/entrypoint.sh env_file: - ./configs/lms/.env + entrypoint: /entrypoint.sh networks: - dd @@ -106,18 +103,6 @@ services: networks: - dd - nuxt: - image: registry.dot-dot.ru/front:${FRONT_TAG} - restart: unless-stopped - command: npm run start - volumes: - - ./configs/nuxt/.env:/application/nuxt/.env - - ./configs/nuxt/entrypoint.sh:/entrypoint.sh - env_file: - - ./configs/nuxt/.env - networks: - - dd - nginx: image: nginx:1.25.3-alpine3.18 restart: unless-stopped @@ -129,78 +114,15 @@ services: - ./configs/nginx/other:/etc/nginx/other - certbot_volume:/etc/letsencrypt - nginx_log_volume:/var/log/nginx - ports: - - 80:80 - - 443:443 - labels: - - "traefik.enable=true" - - "traefik.http.routers.nginx${NETWORK}.rule=Host(`${NETWORK}.dot-dot.ru`)" - - "traefik.http.services.nginx${NETWORK}.loadbalancer.server.port=80" depends_on: - - nuxt + - lms - php - static networks: - ingress: dd: + ingress: aliases: - - nginx - - node-exporter: - image: prom/node-exporter:v1.7.0 - container_name: node-exporter - restart: unless-stopped - volumes: - - /proc:/host/proc:ro - - /sys:/host/sys:ro - - /:/rootfs:ro - command: - - '--path.procfs=/host/proc' - - '--path.rootfs=/rootfs' - - '--path.sysfs=/host/sys' - - '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)' - networks: - - dd - - cadvisor: - image: gcr.io/cadvisor/cadvisor:v0.47.2 - restart: unless-stopped - container_name: cadvisor - volumes: - - /:/rootfs:ro - - /var/run:/var/run:ro - - /sys:/sys:ro - - /var/lib/docker/:/var/lib/docker:ro - - /dev/disk:/dev/disk:ro - devices: - - /dev/kmsg:/dev/kmsg - networks: - - dd - - bookstack: - image: ghcr.io/linuxserver/bookstack:24.02.3 - restart: unless-stopped - container_name: bookstack - environment: - - PUID=1000 - - PGID=1000 - - APP_URL="https://wiki.dot-dot.ru" - - DB_HOST=db - - DB_USER=root - - DB_PASS=${MYSQL_ROOT_PASSWORD} - - DB_DATABASE=bookstack - - MAIL_DRIVER=${MAIL_DRIVER} - - MAIL_HOST=${MAIL_HOST} - - MAIL_PORT=${MAIL_PORT} - - MAIL_USERNAME=${MAIL_USERNAME} - - MAIL_PASSWORD=${MAIL_PASSWORD} - - MAIL_ENCRYPTION=${MAIL_ENCRYPTION} - - MAIL_FROM=${MAIL_FROM} - - MAIL_FROM_NAME=${MAIL_FROM_NAME} - volumes: - - ./configs/bookstack:/config #- bookstack_data_volume: - networks: - - dd + - c2d-nginx rabbitmq: image: rabbitmq:3.12.1-management-alpine @@ -235,3 +157,16 @@ services: - "--redis.password=${REDIS_PASSWORD}" networks: dd: {} + + admin: + image: registry.dot-dot.ru/admin:${ADMIN_TAG} + restart: unless-stopped + command: sh -c 'php-fpm -D; nginx' + volumes: + - ./configs/admin/default:/etc/nginx/sites-enabled/default + - ./configs/admin/.env:/application/.env + - ./configs/nginx/ssl:/etc/nginx/ssl + depends_on: + - db + networks: + dd: diff --git a/scripts/chowner.sh b/scripts/chowner.sh deleted file mode 100755 index 286b742..0000000 --- a/scripts/chowner.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - - -volume='/var/lib/docker/volumes/prod_php_var_volume/_data/log' -for x in $(sudo ls -l $volume | grep root | awk -F' ' '{print $9}');do - sudo chown 82:82 $volume/$x; -done diff --git a/scripts/make_backup_mysql.sh b/scripts/make_backup_mysql.sh deleted file mode 100755 index 1dc21e5..0000000 --- a/scripts/make_backup_mysql.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -SS_CONTAINER='backup_db' -BACK_DIR='/var/tmp/db/backups' - -# Remote backup -MYSQL_CRED='-uroot -pahwaireiNeebeeW9keiZ' - -HOST=$(hostname -s) -DATABASES=$(docker exec -i -u root prod-db-1 mysql ${MYSQL_CRED} -s -AN -e 'show databases' | grep -vE "information_schema|analytics|performance_schema|trash|sys") -for database in ${DATABASES}; do - DUMPFILE="${database}.$(date +%a).sql.gz" - docker exec -i -u root prod-db-1 mysqldump ${MYSQL_CRED} --max_allowed_packet=1G --add-drop-table --single-transaction --extended-insert ${database} | gzip -c > $BACK_DIR/${DUMPFILE} 2>&1 - rclone move $BACK_DIR/${DUMPFILE} selectel:backup_db/dot/${DUMPFILE} - #rm -vf $BACK_DIR/${DUMPFILE} 2>&1 -done