1- # Relation Database { #database }
1+ # Реляционная база данных { #database }
22
3- SyncMaster requires relational database for storing internal data .
3+ Для хранения внутренних данных SyncMaster требуется реляционная база данных .
44
5- Currently, SyncMaster supports only [ PostgreSQL] ( https://www.postgresql.org/ ) .
5+ В настоящее время SyncMaster поддерживает только [ PostgreSQL] ( https://www.postgresql.org/ ) .
66
7- ## Migrations
7+ ## Миграции
88
9- After a database is started, it is required to run migration script .
10- For empty database, it creates all the required tables and indexes .
11- For non-empty database, it will perform database structure upgrade, using [ Alembic] ( https://alembic.sqlalchemy.org/ ) .
9+ После создания базы данных необходимо выполнить скрипт миграции .
10+ Для пустой базы данных он создает все необходимые таблицы и индексы .
11+ Для непустой базы данных он выполнит обновление структуры базы данных, используя [ Alembic] ( https://alembic.sqlalchemy.org/ ) .
1212
13- ### WARNING
13+ ### ПРЕДУПРЕЖДЕНИЕ
1414
15- Other containers (server, scheduler, worker) should be stopped while running migrations, to prevent interference .
15+ Другие контейнеры (server, scheduler, worker) должны быть остановлены во время выполнения миграций, чтобы предотвратить вмешательство .
1616
17- ## Requirements
17+ ## Требования
1818
19- - PostgreSQL 12 or higher. It is recommended to use latest Postgres version .
19+ - PostgreSQL 12 или выше. Рекомендуется использовать последнюю версию Postgres.
2020
21- ## Install & run
21+ ## Установка и запуск
2222
23- ### With Docker
23+ ### С Docker
2424
25- - Install [ Docker] ( https://docs.docker.com/engine/install/ )
25+ - Установите [ Docker] ( https://docs.docker.com/engine/install/ )
2626
27- - Install [ docker-compose] ( https://github.com/docker/compose/releases/ )
27+ - Установите [ docker-compose] ( https://github.com/docker/compose/releases/ )
2828
29- - Run the following command :
29+ - Выполните следующую команду :
3030
3131 ``` console
3232 $ docker compose up -d db db-migrations
3333 ...
3434 ```
3535
36- ` docker-compose ` will download PostgreSQL image, create container and volume, and then start container .
37- Image entrypoint will create database if volume is empty .
36+ ` docker-compose ` загрузит образ PostgreSQL, создаст контейнер и том, а затем запустит контейнер .
37+ Точка входа образа создаст базу данных, если том пуст .
3838
39- After that, one-off container with migrations script will run .
39+ После этого будет запущен одноразовый контейнер со скриптом миграций .
4040
41- Options can be set via ` .env ` file or ` environment ` section in ` docker-compose.yml `
41+ Параметры можно установить через файл ` .env ` или раздел ` environment ` в ` docker-compose.yml `
4242
4343### ` docker-compose.yml `
4444
@@ -99,12 +99,12 @@ Other containers (server, scheduler, worker) should be stopped while running mig
9999 ports:
100100 - 8000:8000
101101 environment:
102- # list here usernames which should be assigned SUPERUSER role on application start
102+ # список имен пользователей, которым должна быть назначена роль SUPERUSER при запуске приложения
103103 SYNCMASTER__ENTRYPOINT__SUPERUSERS: admin
104- # PROMETHEUS_MULTIPROC_DIR is required for multiple workers, see :
104+ # PROMETHEUS_MULTIPROC_DIR требуется для нескольких рабочих процессов, см. :
105105 # https://prometheus.github.io/client_python/multiprocess/
106106 PROMETHEUS_MULTIPROC_DIR: /tmp/prometheus-metrics
107- # tmpfs dir is cleaned up each container restart
107+ # каталог tmpfs очищается при каждом перезапуске контейнера
108108 tmpfs:
109109 - /tmp/prometheus-metrics:mode=1777
110110 env_file: .env.docker
@@ -183,26 +183,26 @@ Other containers (server, scheduler, worker) should be stopped while running mig
183183 TZ=UTC
184184 ENV=LOCAL
185185
186- # Logging options
186+ # Параметры логирования
187187 SYNCMASTER__LOGGING__SETUP=True
188188 SYNCMASTER__LOGGING__PRESET=colored
189189
190- # Common DB options
190+ # Общие параметры БД
191191 SYNCMASTER__DATABASE__URL=postgresql+asyncpg://syncmaster:changeme@db:5432/syncmaster
192192
193- # Encrypt / Decrypt credentials data using this Fernet key .
194- # !!! GENERATE YOUR OWN COPY FOR PRODUCTION USAGE !!!
193+ # Шифрование/дешифрование данных учетных записей с использованием этого ключа Fernet .
194+ # !!! СГЕНЕРИРУЙТЕ СВОЮ СОБСТВЕННУЮ КОПИЮ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОДАКШЕНЕ !!!
195195 SYNCMASTER__ENCRYPTION__SECRET_KEY=UBgPTioFrtH2unlC4XFDiGf5sYfzbdSf_VgiUSaQc94=
196196
197- # Common RabbitMQ options
197+ # Общие параметры RabbitMQ
198198 SYNCMASTER__BROKER__URL=amqp://guest:guest@rabbitmq:5672
199199
200- # Server options
200+ # Параметры сервера
201201 SYNCMASTER__SERVER__SESSION__SECRET_KEY=generate_some_random_string
202- # !!! NEVER USE ON PRODUCTION !!!
202+ # !!! НИКОГДА НЕ ИСПОЛЬЗУЙТЕ В ПРОДАКШЕНЕ !!!
203203 SYNCMASTER__SERVER__DEBUG=true
204204
205- # Keycloak Auth
205+ # Аутентификация Keycloak
206206 #SYNCMASTER__AUTH__PROVIDER=syncmaster.server.providers.auth.keycloak_provider.KeycloakAuthProvider
207207 SYNCMASTER__AUTH__KEYCLOAK__SERVER_URL=http://keycloak:8080
208208 SYNCMASTER__AUTH__KEYCLOAK__REALM_NAME=manually_created
@@ -212,14 +212,14 @@ Other containers (server, scheduler, worker) should be stopped while running mig
212212 SYNCMASTER__AUTH__KEYCLOAK__SCOPE=email
213213 SYNCMASTER__AUTH__KEYCLOAK__VERIFY_SSL=False
214214
215- # Dummy Auth
215+ # Фиктивная аутентификация
216216 SYNCMASTER__AUTH__PROVIDER=syncmaster.server.providers.auth.dummy_provider.DummyAuthProvider
217217 SYNCMASTER__AUTH__ACCESS_TOKEN__SECRET_KEY=generate_another_random_string
218218
219- # Scheduler options
219+ # Параметры планировщика
220220 SYNCMASTER__SCHEDULER__TRANSFER_FETCHING_TIMEOUT_SECONDS=200
221221
222- # Worker options
222+ # Параметры рабочего процесса
223223 SYNCMASTER__WORKER__LOG_URL_TEMPLATE=https://logs.location.example.com/syncmaster-worker?correlation_id=\{\{ correlation_id \}\}&run_id=\{\{ run.id \}\}
224224 SYNCMASTER__HWM_STORE__ENABLED=true
225225 SYNCMASTER__HWM_STORE__TYPE=horizon
@@ -228,7 +228,7 @@ Other containers (server, scheduler, worker) should be stopped while running mig
228228 SYNCMASTER__HWM_STORE__USER=admin
229229 SYNCMASTER__HWM_STORE__PASSWORD=123UsedForTestOnly@!
230230
231- # Frontend options
231+ # Параметры фронтенда
232232 SYNCMASTER__UI__API_BROWSER_URL=http://localhost:8000
233233
234234 # Cors
@@ -240,55 +240,55 @@ Other containers (server, scheduler, worker) should be stopped while running mig
240240 SYNCMASTER__SERVER__CORS__EXPOSE_HEADERS=["X-Request-ID","Location","Access-Control-Allow-Credentials"]
241241 ```
242242
243- ### Without Docker
243+ ### Без Docker
244244
245- - For installing PostgreSQL, please follow [ installation instruction ] ( https://www.postgresql.org/download/ ) .
245+ - Для установки PostgreSQL следуйте [ инструкции по установке ] ( https://www.postgresql.org/download/ ) .
246246
247- - Install Python 3.11 or above
247+ - Установите Python 3.11 или выше
248248
249- - Create virtual environment
249+ - Создайте виртуальное окружение
250250
251251 ``` console
252252 $ python -m venv /some/.venv
253253 $ source /some/.venv/activate
254254 ...
255255 ```
256256
257- - Install ` syncmaster ` package with following * extra * dependencies :
257+ - Установите пакет ` syncmaster ` со следующими * дополнительными * зависимостями :
258258
259259 ``` console
260260 $ pip install syncmaster[postgres]
261261 ...
262262 ```
263263
264- - Configure [ Database connection ] [ configuration-database ] using environment variables, e.g. by creating ` .env ` file :
264+ - Настройте [ подключение к базе данных ] [ configuration-database ] с помощью переменных среды, например, создав файл ` .env ` :
265265
266266 ``` console
267267 $ export SYNCMASTER__DATABASE__URL=postgresql+asyncpg://syncmaster:changeme@db:5432/syncmaster
268268 ...
269269 ```
270270
271- And then read values from this file :
271+ А затем прочитайте значения из этого файла :
272272
273273 ``` console
274274 $ source /some/.env
275275 ...
276276 ```
277277
278- - Run migrations :
278+ - Запустите миграции :
279279
280280 ``` console
281281 $ python -m syncmaster.db.migrations upgrade head
282282 ...
283283 ```
284284
285- This is a thin wrapper around [ alembic cli] ( https://alembic.sqlalchemy.org/en/latest/tutorial.html#running-our-first-migration ) ,
286- options and commands are just the same .
285+ Это тонкая оболочка вокруг [ alembic cli] ( https://alembic.sqlalchemy.org/en/latest/tutorial.html#running-our-first-migration ) ,
286+ опции и команды точно такие же .
287287
288- > ** This command should be executed after each upgrade to new Data.Rentgen version .**
288+ > ** Эта команда должна выполняться после каждого обновления до новой версии Data.Rentgen.**
289289
290- ## See also
290+ ## Смотрите также
291291
292- - [ Database settings ] [ configuration-database ]
293- - [ Credentials encryption ] [ configuration-credentials-encryption ]
294- - [ Database structure ] [ database-structure ]
292+ - [ Настройки базы данных ] [ configuration-database ]
293+ - [ Шифрование учетных данных ] [ configuration-credentials-encryption ]
294+ - [ Структура базы данных ] [ database-structure ]
0 commit comments