diff --git a/db/base/docker-compose.yml b/db/base/docker-compose.yml index e6a052e80522e58875593be77d5a5de69932fd87..e9162501719a69e54d7a3b282818c8a653d77d44 100755 --- a/db/base/docker-compose.yml +++ b/db/base/docker-compose.yml @@ -9,6 +9,7 @@ services: restart: always environment: - POSTGRES_DB=${DB_NAME} + - POSTGRES_USER=${DB_USER} - POSTGRES_PASSWORD=${DB_PASSWORD} ports: - 5432:5432 diff --git a/readhost.py b/readhost.py index a36806925dc2c6e24f9be202e969b45baac5aca3..ea57be96448ea9c99ca462a43b52170935854478 100755 --- a/readhost.py +++ b/readhost.py @@ -24,10 +24,10 @@ with open(dbjson_file) as dbjson_data: def backup(data): if len(data['dbBackup']) == 0: return "" - cron_text = ("(crontab -l 2>/dev/null; echo \"00 19 * * * sudo ssh " + data['dbHostUser'] + "@" + data['dbHost'] + - " 'mkdir -p /tmp/" + is_name + "/dumps/; docker exec " + is_name + "_db pg_dump -U " + data['dbHostUser'] + " " + data['dbName'] + + cron_text = ("(crontab -l 2>/dev/null; echo \"00 19 * * * ssh root@" + data['dbHost'] + + " 'mkdir -p /tmp/" + is_name + "/dumps/; docker exec " + is_name + "_db pg_dump -U " + dbdata['administrator']['login'] + " " + data['dbName'] + " > /tmp/" + is_name + "/dumps/dump_" + data['expName'] + "_" + is_name + "_\"'$'\"(date +\%Y-\%m-\%d).sql # " + is_name + " platform' \") | crontab -" + - "; \n(crontab -l 2>/dev/null; echo \"15 19 * * * mkdir -p /tmp/" + is_name + "/dumps/; scp " + data['dbHostUser'] + "@" + data['dbHost'] + + "; \n(crontab -l 2>/dev/null; echo \"15 19 * * * mkdir -p /tmp/" + is_name + "/dumps/; scp root@" + data['dbHost'] + ":/tmp/" + is_name + "/dumps/dump_" + data['expName'] + "_" + is_name + "_\"'$'\"(date +\%Y-\%m-\%d).sql /tmp/" + is_name + "/dumps/ # " + is_name + " platform \") | crontab -") backup_dirs = str(data['dbBackup'].encode('utf-8')) backup_dirs = backup_dirs.split(";") @@ -88,6 +88,7 @@ with open (cur_dir+'web/deploy.sh', 'w') as f: with open (cur_dir+'db/base/.env', 'r') as f: old_data = f.read() new_data = old_data.replace('database_name', data['dbName']) +new_data = new_data.replace('admin_user', dbdata['administrator']['login']) new_data = new_data.replace('admin_pass', dbdata['administrator']['password']) with open (cur_dir+'db/.env', 'w') as f: f.write(new_data)