Использование внешней БД (PostgreSQL)
Подготовьте внешнюю БД (PostgreSQL) для каждого сервиса (имена баз данных: testitdb, authdb, avatarsdb):
1
yum install postgresql-contrib
2
psql -U postgres
3
create database testitdb;
4
create user tester with encrypted password 'tester';
5
grant all privileges on database testitdb to tester;
6
\connect testitdb;
7
CREATE EXTENSION if not exists "uuid-ossp" SCHEMA public;
Copied!
Для остальных БД (authdb, avatarsdb) нужно выполнить скрипт ниже подставив название БД вместо testitdb:
1
create database authdb;
2
grant all privileges on database authdb to tester;
3
\connect authdb;
4
CREATE EXTENSION if not exists "uuid-ossp" SCHEMA public;
Copied!
1
create database avatarsdb;
2
grant all privileges on database avatarsdb to tester;
3
\connect avatarsdb;
4
CREATE EXTENSION if not exists "uuid-ossp" SCHEMA public;
Copied!
Закомментируйте или удалите секцию с сервисом БД (authdb, avatars.db, db), который будет заменен на внешний сервис, зависимости от него других контейнеров (все упоминания сервиса БД в блоках depends_on), и его вольюмы (authdb-volume, db-volume, avatars.db-volume) в списке volumes в файле docker-compose.yml.
В .env файле укажите данные для подключения к внешней БД. (ip-external server/dns-name, port, login, password). В Host можно указать отдельные СУБД или одну и ту же СУБД для каждой БД.
1
DB_CONNECTION_STRING=Host=external_server1;Port=5432;Database=testitdb;Username=tester;Password=tester;Pooling=true;Maximum Pool Size=130
2
#POSTGRES_DB=testitdb
3
#POSTGRES_USER=postgres
4
#POSTGRES_PASSWORD=F1rstL0g0N!
5
...
6
AUTH_CONNECTION_STRING=Host=external_server2;Port=5432;Database=authdb;Username=tester;Password=tester;Pooling=true;Maximum Pool Size=130
7
#POSTGRES_AUTH_DB=authdb
8
#POSTGRES_AUTH_USER=postgres
9
#POSTGRES_AUTH_PASSWORD=F1rstL0g0N!
10
...
11
AVATARS_CONNECTION_STRING=Host=external_server3;Port=5432;Database=avatarsdb;Username=tester;Password=tester
12
#POSTGRES_AVATARS_DB=avatarsdb
13
#POSTGRES_AVATARS_USER=postgres
14
#POSTGRES_AVATARS_PASSWORD=F1rstL0g0N!
Copied!
Выполните установку Test IT:
1
docker-compose -f docker-compose.yml --project-name prod up --detach --timeout 120
Copied!
Copy link