Исправлены ошибки, выявленные на тесте инфраструктуры
This commit is contained in:
+55
-5
@@ -1,5 +1,6 @@
|
||||
# usefull commands
|
||||
- Убрать переносы строк: sed -i 's/\r$//' name-file.sh
|
||||
- find . -type f \( -name '*.sh' -o -name 'validate-env' \) -exec dos2unix {} +
|
||||
- docker compose stop # мягко останавливает контейнеры (не удаляет)
|
||||
- sudo shutdown -h now # выглючить ВМ
|
||||
- Генерация паролей
|
||||
@@ -55,6 +56,7 @@ chmod +x scripts/validate-env deployment/scripts/*.sh redis/scripts/*.sh nginx/s
|
||||
|
||||
## Создаем БД
|
||||
В базе подключаем pgcrypto
|
||||
Чтобы корректно работал PgBouncer выбираем session pooling
|
||||
|
||||
### Копируем СА сертификат
|
||||
|
||||
@@ -80,6 +82,8 @@ psql "host=master.ef54e3e4-ad3d-4b80-a6af-d63269e0895a.c.dbaas.selcloud.ru \
|
||||
user=dbAdmin \
|
||||
sslmode=verify-ca"
|
||||
|
||||
(psql "host=master.ef54e3e4-ad3d-4b80-a6af-d63269e0895a.c.dbaas.selcloud.ru port=5432 dbname=han_chat user=dbAdmin sslmode=verify-ca")
|
||||
|
||||
### Заводим пользователей и схемы
|
||||
|
||||
Пользователей создаем через интерфейс селектела.
|
||||
@@ -94,18 +98,40 @@ psql "host=master.ef54e3e4-ad3d-4b80-a6af-d63269e0895a.c.dbaas.selcloud.ru \
|
||||
+ Запрещаем всем посторонним входить в схему han_app и др.
|
||||
CREATE SCHEMA IF NOT EXISTS han_app;
|
||||
REVOKE ALL ON SCHEMA han_app FROM PUBLIC;
|
||||
ALTER ROLE CURRENT_USER IN DATABASE han_chat SET search_path TO han_app;
|
||||
SHOW search_path; --чтобы заработало надо переподключиться (должно быть han_app)
|
||||
|
||||
CREATE SCHEMA IF NOT EXISTS bitrix_local;
|
||||
REVOKE ALL ON SCHEMA bitrix_local FROM PUBLIC;
|
||||
ALTER ROLE CURRENT_USER IN DATABASE han_chat SET search_path TO bitrix_local;
|
||||
SHOW search_path; --чтобы заработало надо переподключиться
|
||||
|
||||
CREATE SCHEMA IF NOT EXISTS bitrix_sync;
|
||||
REVOKE ALL ON SCHEMA bitrix_sync FROM PUBLIC;
|
||||
ALTER ROLE CURRENT_USER IN DATABASE han_chat SET search_path TO bitrix_sync;
|
||||
SHOW search_path; --чтобы заработало надо переподключиться
|
||||
|
||||
CREATE SCHEMA IF NOT EXISTS message_safety;
|
||||
REVOKE ALL ON SCHEMA message_safety FROM PUBLIC;
|
||||
ALTER ROLE CURRENT_USER IN DATABASE han_chat SET search_path TO message_safety;
|
||||
SHOW search_path; --чтобы заработало надо переподключиться
|
||||
|
||||
CREATE SCHEMA IF NOT EXISTS keycloak;
|
||||
REVOKE ALL ON SCHEMA keycloak FROM PUBLIC;
|
||||
ALTER ROLE CURRENT_USER IN DATABASE han_chat SET search_path TO keycloak;
|
||||
SHOW search_path; --чтобы заработало надо переподключиться
|
||||
|
||||
Проверка search_path
|
||||
SELECT r.rolname, d.datname, s.setconfig
|
||||
FROM pg_db_role_setting s
|
||||
JOIN pg_roles r ON r.oid = s.setrole
|
||||
JOIN pg_database d ON d.oid = s.setdatabase
|
||||
WHERE r.rolname in ('han_app',
|
||||
'bitrix_local_app',
|
||||
'bitrix_sync_user',
|
||||
'message_safety_app',
|
||||
'keycloak_user');
|
||||
|
||||
|
||||
|
||||
После реализации bitrix_sync (проверить, вероятно не на все таблицы права нужны):
|
||||
@@ -146,8 +172,32 @@ R:
|
||||
ListBucketMultipartUploads
|
||||
ListMultipartUploadParts
|
||||
|
||||
Политика CORS:
|
||||
Allowed origin: https://chat.example.ru
|
||||
Methods: POST, PUT, GET, HEAD
|
||||
Headers: Content-Type, x-amz-*
|
||||
Expose headers: ETag
|
||||
Политика CORS (бакет han-chat-quarantine, vHosted обязателен):
|
||||
Allowed origin: https://chat.han0107.ru
|
||||
Methods: POST, PUT, GET, HEAD
|
||||
Headers: * (или явно content-type; wildcard x-amz-* в Selectel не работает)
|
||||
Expose headers: ETag
|
||||
|
||||
# Тест инфраструктуры
|
||||
|
||||
mkdir -p /opt/han-chat/infratest
|
||||
cd /opt/han-chat/infratest
|
||||
|
||||
scp -i C:\Users\MI\.ssh\hansel -r "C:\Users\MI\Documents\Assistent\HAN_chat_specification\infratest\*" root@135.106.164.58:/opt/han-chat/infratest
|
||||
|
||||
--настраиваю env на локальной машине и копирую на диск
|
||||
scp -i C:\Users\MI\.ssh\hansel -r "C:\Users\MI\Documents\job\HAN_new_life\HANapp\Production\.env" root@135.106.164.58:/opt/han-chat/infratest/
|
||||
|
||||
|
||||
Создаем изолированное окружение:
|
||||
python3 -m venv .venv
|
||||
. .venv/bin/activate
|
||||
python3 -m pip install --upgrade pip
|
||||
python3 -m pip install -r requirements.txt
|
||||
|
||||
Если не работает, то надо DNS переправить на eth0
|
||||
resolvectl dns eth0 1.1.1.1 8.8.8.8
|
||||
resolvectl domain eth0 '~.'
|
||||
resolvectl flush-caches
|
||||
resolvectl query pypi.org
|
||||
|
||||
|
||||
Reference in New Issue
Block a user