init
This commit is contained in:
parent
84bc9bbec6
commit
03ced1a26a
|
|
@ -6,17 +6,10 @@
|
|||
*.sln
|
||||
__pycache__
|
||||
.DS_Store
|
||||
.idea/*
|
||||
.vs/*
|
||||
|
||||
.env
|
||||
docker-compose.override.yml
|
||||
|
||||
.idea/*
|
||||
.vs/*
|
||||
volumes/*
|
||||
|
||||
medicine/.env
|
||||
medicine/docker-compose.override.yml
|
||||
medicine/volumes/*
|
||||
|
||||
medicine-stack/volumes/*
|
||||
thirdparty-apps/volumes/*
|
||||
|
|
|
|||
84
Readme.md
84
Readme.md
|
|
@ -1,84 +0,0 @@
|
|||
|
||||
### Решение проблем
|
||||
|
||||
> Error saving credentials: error storing credentials - err: exit status 1, out: `Cannot autolaunch D-Bus without X11 $DISPLAY`
|
||||
|
||||
`> sudo apt remove golang-docker-credential-helpers`
|
||||
|
||||
> Git ignore rights
|
||||
|
||||
` > git config core.fileMode false`
|
||||
|
||||
|
||||
### Ключи
|
||||
|
||||
#### Добавление ключика на удаленный сервер (root)
|
||||
|
||||
ssh-copy-id -i ~/.ssh/medlogic_awx_rsa.pub -p 22 root@remote
|
||||
|
||||
|
||||
#### Добавление ключика на удаленный сервер (no root)
|
||||
|
||||
cat ~/.ssh/medlogic_awx_rsa.pub | ssh user@remote "sudo cat >> /root/.ssh/authorized_keys"
|
||||
|
||||
|
||||
### Настройка сервера
|
||||
> vim /etc/ssh/sshd_config
|
||||
|
||||
PermitRootLogin without-password
|
||||
|
||||
# Авторизация по паролю root
|
||||
PermitRootLogin yes
|
||||
|
||||
PubkeyAuthentication yes
|
||||
|
||||
> service ssh restart
|
||||
|
||||
### Обратный ssh
|
||||
на удаленном сервере
|
||||
|
||||
ssh -R 40022:localhost:22 proxy_user@188.225.79.4
|
||||
|
||||
на доступном сервере
|
||||
|
||||
ssh localhost -p 40022
|
||||
|
||||
|
||||
### Crontab tasks
|
||||
PATH=/usr/bin:/bin:/usr/local/bin
|
||||
00 21 * * * /root/medicine-config/update_repository.sh
|
||||
00 22 * * * /root/medicine-config/medicine/backup_database.sh
|
||||
00 23 * * * /root/medicine-config/medicine/update.sh
|
||||
00 22 * * * /root/medicine-config/medicine-remd/backup_database.sh
|
||||
30 23 * * * /root/medicine-config/medicine-remd/update.sh
|
||||
00 00 * * * /root/medicine-config/scripts/docker-cleanup.sh
|
||||
|
||||
00 21 * * * /root/medicine-config/update_repository.sh
|
||||
00 22 * * * /root/medicine-config/medicine/backup_database.sh
|
||||
00 23 * * * /root/medicine-config/medicine/update.sh
|
||||
00 00 * * * /root/medicine-config/scripts/docker-cleanup.sh
|
||||
|
||||
0 * * * * sudo vipnetclient info
|
||||
|
||||
* * * * * /root/medicine-config/scripts/crontab-check.sh >> /var/log/crontab-check.log 2>&1
|
||||
|
||||
sudo timedatectl set-timezone Asia/Vladivostok
|
||||
|
||||
# /etc/hosts
|
||||
> sudo vim /etc/hosts
|
||||
89.223.70.16 docker.med-logic.ru git.med-logic.ru
|
||||
|
||||
# change git url
|
||||
|
||||
git remote set-url origin https://git.med-logic.ru/ilya.muhortov/medicine-config.git && git pull
|
||||
|
||||
### Перенос данных
|
||||
scp -r /var/lib/docker/volumes/medicine_medicine-public-data/_data root@hostname:/var/lib/docker/volumes/medicine_medicine-public-data
|
||||
|
||||
# Разное
|
||||
|
||||
curl -iv --tlsv1.2 https://docker.med-logic.ru/
|
||||
|
||||
# Копирование в бэкапов в папку
|
||||
|
||||
rsync -avh /root/medicine-backups /root/remote-backups/
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-remd:latest
|
||||
|
||||
read -r -p "Create database? [y/N] " response
|
||||
if [[ $response =~ ^[Yy](es)?$ ]]; then
|
||||
docker exec medicine-stack-postgres psql -c 'CREATE DATABASE medicine_remd' --username=postgres
|
||||
fi
|
||||
|
||||
read -p "Enter organization name: " ORGANIZATION_NAME
|
||||
|
||||
SECRET_KEY=$(openssl rand -base64 32)
|
||||
|
||||
cat <<EOT >> /root/medicine-config/medicine-remd/.env
|
||||
|
||||
SECRET_KEY=$SECRET_KEY
|
||||
|
||||
SENTRY_ENABLED='True'
|
||||
|
||||
SENTRY_SERVER_NAME=$ORGANIZATION_NAME
|
||||
|
||||
EOT
|
||||
|
||||
cd /root/medicine-config/medicine-remd
|
||||
docker-compose run --rm medicine-remd python manage.py migrate
|
||||
docker-compose run --rm medicine-remd python manage.py post_install
|
||||
docker-compose up -d
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
set -e
|
||||
|
||||
apt install --assume-yes autossh
|
||||
ssh-keygen -f ~/.ssh/proxy-server -N ''
|
||||
ssh-copy-id -i ~/.ssh/proxy-server.pub -p 22 proxy_user@188.225.79.4
|
||||
|
||||
read -p "Enter port for proxy server: " proxy_port
|
||||
|
||||
cat <<EOT >> /etc/systemd/system/remote-autossh.service
|
||||
[Unit]
|
||||
Description=AutoSSH service for remote tunnel
|
||||
After=network-online.target
|
||||
Wants=network-online.target systemd-networkd-wait-online.service
|
||||
|
||||
[Service]
|
||||
User=root
|
||||
Restart=on-failure
|
||||
RestartSec=1min
|
||||
ExecStart=/usr/bin/autossh -N -R $proxy_port:localhost:22 -i /root/.ssh/proxy-server proxy_user@188.225.79.4
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOT
|
||||
|
||||
systemctl daemon-reload && systemctl start remote-autossh
|
||||
systemctl enable remote-autossh.service
|
||||
|
||||
cat <<EOT >> /root/.ssh/authorized_keys
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyPQET8KBriZjuB1PiFtBYtGZJphivZWHT4JtGJNDLpwxyUgK6ZzVrF5MvJ27eQBoM1pMxzVl3XWwgxo1BQkCGIsqERwZ5/onfsWTH/COyuZeNmL5NF3NYLjoSF9a0zwHpEQxeLGf+3qQrEfTOZKuPelc/8kmQjYDPo97Ow3d+6LA9Mlhe2S7pYsvVgGy+XjGnegRZddAZu6vnDCGrDbfSgeW0KTQCLhGmtQao99SRxUOlqHfU13x9IZAHldikbhWbXxgc1+1CH/1iYbRqnVdgAAyJzguFIkAJGKzEnLiwHVgJF1Gf85FItF8KaNHCIv5T7RPBvFUIN/gw3QO/jTxJ root@1041123-muhortov1.tmweb.ru
|
||||
EOT
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
set -e
|
||||
|
||||
cd /root/medicine-config/thirdparty-apps
|
||||
docker-compose pull
|
||||
docker-compose build
|
||||
docker-compose up -d
|
||||
|
|
@ -0,0 +1,117 @@
|
|||
|
||||
listenAddressSingleHTTPFrontend: 0.0.0.0:1337
|
||||
logLevel: "INFO"
|
||||
showNavigation: false
|
||||
pageTitle: МИС "Медицина"
|
||||
showFooter: false
|
||||
|
||||
actionGroups:
|
||||
- title: МИС
|
||||
icon: 🏥
|
||||
actions:
|
||||
- mis-install
|
||||
- mis-restart
|
||||
- mis-update
|
||||
|
||||
- title: Обслуживание
|
||||
icon: 🛠️
|
||||
actions:
|
||||
- ping-sync
|
||||
- ping-docker
|
||||
- check-disk-space
|
||||
|
||||
actions:
|
||||
- id: mis-install
|
||||
title: Установить
|
||||
icon: box
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
shell: /config/medicine-install.sh "{{ organization_name }}" "{{ organization_id }}" "{{ http_port }}" "{{ https_port }}"
|
||||
timeout: 600
|
||||
arguments:
|
||||
- name: organization_name
|
||||
title: "Название организации"
|
||||
default: "DEMO"
|
||||
type: unicode_identifier
|
||||
required: true
|
||||
|
||||
- name: organization_id
|
||||
title: "Идентификатор организации"
|
||||
default: "1234"
|
||||
type: ascii_sentence
|
||||
|
||||
- name: http_port
|
||||
title: "HTTP порт"
|
||||
default: "80"
|
||||
type: int
|
||||
|
||||
- name: https_port
|
||||
title: "HTTPS порт"
|
||||
default: "443"
|
||||
type: int
|
||||
|
||||
- id: medicine-change-env
|
||||
title: Изменить настройки
|
||||
icon: ⚙️
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
shell: /config/medicine-change-env.sh "{{ http_port }}" "{{ https_port }}"
|
||||
timeout: 600
|
||||
arguments:
|
||||
- name: http_port
|
||||
title: "HTTP порт"
|
||||
default: "80"
|
||||
type: int
|
||||
|
||||
- name: https_port
|
||||
title: "HTTPS порт"
|
||||
default: "443"
|
||||
type: int
|
||||
|
||||
- id: mis-restart
|
||||
title: Перезапустить
|
||||
icon: 🔄
|
||||
timeout: 60
|
||||
shell: /config/medicine-restart.sh
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
|
||||
- id: mis-update
|
||||
title: Обновить
|
||||
icon: ⬆️
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
timeout: 60
|
||||
shell: /config/medicine-update.sh
|
||||
|
||||
- id: ping-sync
|
||||
title: Ping sync.med-logic.ru
|
||||
shell: ping sync.med-logic.ru -c 2
|
||||
icon: ping
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
|
||||
- id: ping-docker
|
||||
title: Ping docker.med-logic.ru
|
||||
shell: ping docker.med-logic.ru -c 2
|
||||
icon: ping
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
|
||||
- id: check-disk-space
|
||||
title: Check disk space
|
||||
icon: disk
|
||||
shell: df -h /media
|
||||
popupOnStart: execution-dialog-stdout-only
|
||||
|
||||
dashboards:
|
||||
- title: Главная
|
||||
contents:
|
||||
- title: МИС
|
||||
type: fieldset
|
||||
contents:
|
||||
- title: Установить
|
||||
- title: Перезапустить
|
||||
- title: Обновить
|
||||
- title: Изменить настройки
|
||||
|
||||
- title: "Системное"
|
||||
type: fieldset
|
||||
contents:
|
||||
- title: Ping sync.med-logic.ru
|
||||
- title: Ping docker.med-logic.ru
|
||||
- title: Check disk space
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
GLOBAL_ENV_FILE="/medicine-config/.env"
|
||||
ENV_FILE="/medicine-config/medicine/.env"
|
||||
|
||||
HTTP_PORT="$1"
|
||||
HTTPS_PORT="$2"
|
||||
|
||||
set_env_var () {
|
||||
local key="$1"
|
||||
local value="$2"
|
||||
|
||||
if grep -qE "^${key}=" "$ENV_FILE"; then
|
||||
sed -i "s|^${key}=.*|${key}=${value}|" "$ENV_FILE"
|
||||
else
|
||||
echo "${key}=${value}" >> "$ENV_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
unset_env_var () {
|
||||
local key="$1"
|
||||
|
||||
if grep -qE "^${key}=" "$ENV_FILE"; then
|
||||
sed -i "/^${key}=/d" "$ENV_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
echo "HTTP порт: $HTTP_PORT"
|
||||
echo "HTTPS порт: $HTTPS_PORT"
|
||||
echo ""
|
||||
|
||||
touch "$ENV_FILE"
|
||||
touch "$GLOBAL_ENV_FILE"
|
||||
|
||||
if [ -n "$HTTP_PORT" ] && [ "$HTTP_PORT" != "80" ]; then
|
||||
set_env_var "NGINX_HTTP_PORT" "$HTTP_PORT"
|
||||
else
|
||||
unset_env_var "NGINX_HTTP_PORT"
|
||||
fi
|
||||
|
||||
if [ -n "$HTTPS_PORT" ] && [ "$HTTPS_PORT" != "443" ]; then
|
||||
set_env_var "NGINX_HTTPS_PORT" "$HTTPS_PORT"
|
||||
else
|
||||
unset_env_var "NGINX_HTTPS_PORT"
|
||||
fi
|
||||
|
||||
(cd /medicine-config/medicine && docker compose stop && docker compose up -d)
|
||||
|
||||
echo "✅ Настройки изменены"
|
||||
|
|
@ -0,0 +1,135 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
SECRET_KEY=$(head -c 32 /dev/urandom | base64)
|
||||
NETWORK_NAME=medicine-network
|
||||
GLOBAL_ENV_FILE="/medicine-config/.env"
|
||||
ENV_FILE="/medicine-config/medicine/.env"
|
||||
POSTGRES_CONTAINER=service-postgres
|
||||
POSTGRES_USER=postgres
|
||||
DB_NAME=medicine
|
||||
|
||||
ORGANIZATION_NAME="$1"
|
||||
ORGANIZATION_ID="$2"
|
||||
HTTP_PORT="$3"
|
||||
HTTPS_PORT="$4"
|
||||
|
||||
set_global_env_var () {
|
||||
local key="$1"
|
||||
local value="$2"
|
||||
|
||||
if grep -qE "^${key}=" "$GLOBAL_ENV_FILE"; then
|
||||
sed -i "s|^${key}=.*|${key}=${value}|" "$GLOBAL_ENV_FILE"
|
||||
else
|
||||
echo "${key}=${value}" >> "$GLOBAL_ENV_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
set_env_var () {
|
||||
local key="$1"
|
||||
local value="$2"
|
||||
|
||||
if grep -qE "^${key}=" "$ENV_FILE"; then
|
||||
sed -i "s|^${key}=.*|${key}=${value}|" "$ENV_FILE"
|
||||
else
|
||||
echo "${key}=${value}" >> "$ENV_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
unset_env_var () {
|
||||
local key="$1"
|
||||
|
||||
if grep -qE "^${key}=" "$ENV_FILE"; then
|
||||
sed -i "/^${key}=/d" "$ENV_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
if [[ -z "$ORGANIZATION_NAME" || -z "$ORGANIZATION_ID" ]]; then
|
||||
echo "❌ Ошибка: оба параметра обязательны"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Название организации: $ORGANIZATION_NAME"
|
||||
echo "Идентификатор организации: $ORGANIZATION_ID"
|
||||
echo "HTTP порт: $HTTP_PORT"
|
||||
echo "HTTPS порт: $HTTPS_PORT"
|
||||
echo ""
|
||||
|
||||
if [ -z $(docker network ls --filter name=^${NETWORK_NAME}$ --format="{{ .Name }}") ] ; then
|
||||
docker network create ${NETWORK_NAME} ;
|
||||
echo "🌐 Сеть $NETWORK_NAME создана"
|
||||
else
|
||||
echo "🌐 Сеть $NETWORK_NAME уже существует"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "📁 Создаем файлы окружения"
|
||||
touch "$ENV_FILE"
|
||||
touch "$GLOBAL_ENV_FILE"
|
||||
|
||||
set_global_env_var "ORGANIZATION_ID" "$ORGANIZATION_ID"
|
||||
set_global_env_var "ORGANIZATION_NAME" "$ORGANIZATION_NAME"
|
||||
set_global_env_var "POSTGRES_USER" "$POSTGRES_USER"
|
||||
set_global_env_var "POSTGRES_HOST" "$POSTGRES_CONTAINER"
|
||||
set_global_env_var "REDIS_HOST" "service-redis"
|
||||
|
||||
set_env_var "SECRET_KEY" "$SECRET_KEY"
|
||||
|
||||
if [ -n "$HTTP_PORT" ] && [ "$HTTP_PORT" != "80" ]; then
|
||||
set_env_var "NGINX_HTTP_PORT" "$HTTP_PORT"
|
||||
else
|
||||
unset_env_var "NGINX_HTTP_PORT"
|
||||
fi
|
||||
|
||||
if [ -n "$HTTPS_PORT" ] && [ "$HTTPS_PORT" != "443" ]; then
|
||||
set_env_var "NGINX_HTTPS_PORT" "$HTTPS_PORT"
|
||||
else
|
||||
unset_env_var "NGINX_HTTPS_PORT"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "📦 Запускаем контейнер postgres"
|
||||
(cd /medicine-config/service-postgres && docker compose pull -q && docker compose up -d)
|
||||
|
||||
echo ""
|
||||
echo "📦 Запускаем контейнер redis"
|
||||
(cd /medicine-config/service-redis && docker compose pull -q && docker compose up -d)
|
||||
|
||||
echo ""
|
||||
if docker exec "$POSTGRES_CONTAINER" psql -U "$POSTGRES_USER" -tAc \
|
||||
"SELECT 1 FROM pg_database WHERE datname='$DB_NAME'" | grep -q 1; then
|
||||
echo "✅ База данных уже существует: $DB_NAME"
|
||||
else
|
||||
echo "➕ База данных не найдена, создаём: $DB_NAME"
|
||||
docker exec "$POSTGRES_CONTAINER" createdb -U "$POSTGRES_USER" "$DB_NAME"
|
||||
echo "✅ База данных создана: $DB_NAME"
|
||||
fi
|
||||
|
||||
TABLES_COUNT=$(docker exec "$POSTGRES_CONTAINER" psql -U "$POSTGRES_USER" -d "$DB_NAME" -tAc \
|
||||
"SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'public';")
|
||||
|
||||
echo ""
|
||||
if [ "$TABLES_COUNT" -gt 0 ]; then
|
||||
echo "⚠️ Восстановление БД пропущено - в базе уже есть таблицы ($TABLES_COUNT)"
|
||||
else
|
||||
echo "📥 Восстанавливаем БД из бэкапа"
|
||||
|
||||
unzip -o /medicine-config/backups/medicine.sql.zip -d /tmp
|
||||
docker cp /tmp/medicine.sql "$POSTGRES_CONTAINER:/tmp/medicine.sql"
|
||||
docker exec -i "$POSTGRES_CONTAINER" psql -U "$POSTGRES_USER" -d "$DB_NAME" -q --set ON_ERROR_STOP=on -f /tmp/medicine.sql
|
||||
|
||||
echo "✅ Восстановление завершено"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Скачиваем образ"
|
||||
docker pull docker.med-logic.ru/medicine:latest -q
|
||||
docker tag docker.med-logic.ru/medicine:latest medicine:latest
|
||||
|
||||
echo ""
|
||||
echo "Запускаем систему"
|
||||
(cd /medicine-config/medicine && docker compose up -d)
|
||||
|
||||
echo ""
|
||||
echo "🎉 МИС \"Медицина\" успешно установлена"
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
(cd /medicine-config/medicine && docker compose stop && docker compose up -d)
|
||||
|
||||
echo ""
|
||||
echo "✅ МИС \"Медицина\" успешно перезапущена"
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
docker pull docker.med-logic.ru/medicine:latest
|
||||
|
||||
(cd /medicine-config/medicine &&
|
||||
docker run --rm \
|
||||
--env-file .env \
|
||||
--env-file /medicine-config/.env \
|
||||
--network medicine-network \
|
||||
--name medicine-apply-migrations \
|
||||
docker.med-logic.ru/medicine:latest python manage.py migrate --noinput
|
||||
)
|
||||
|
||||
(cd /medicine-config/medicine &&
|
||||
docker compose stop &&
|
||||
docker compose up -d
|
||||
)
|
||||
|
||||
echo ""
|
||||
echo "✅ МИС \"Медицина\" успешно обновлена"
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
medicine-dashboard-config:
|
||||
name: medicine-dashboard-config
|
||||
|
||||
services:
|
||||
dashboard:
|
||||
container_name: medicine-dashboard
|
||||
image: medicine-dashboard:latest
|
||||
restart: always
|
||||
privileged: true
|
||||
user: root
|
||||
networks:
|
||||
- medicine-network
|
||||
volumes:
|
||||
- ../:/medicine-config
|
||||
- ./config:/config
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
ports:
|
||||
- "800:1337"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "5mb"
|
||||
max-file: "10"
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
dockge:
|
||||
image: louislam/dockge:1
|
||||
container_name: dockge
|
||||
restart: "always"
|
||||
ports:
|
||||
- 881:5001
|
||||
networks:
|
||||
- medicine-network
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- dockge-data:/app/data
|
||||
- /root/medicine-config:/root/medicine-config
|
||||
environment:
|
||||
- DOCKGE_STACKS_DIR=/root/medicine-config
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
dockge-data:
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
medicine-call:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-call:latest
|
||||
container_name: medicine-call
|
||||
env_file: .env
|
||||
ports:
|
||||
- "878:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose exec medicine-call bash
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-call:latest
|
||||
|
||||
cd /root/medicine-config/medicine-stack
|
||||
docker-compose exec postgres psql -c 'CREATE DATABASE medicine_call' --username=postgres
|
||||
|
||||
cat <<EOT >> /root/medicine-config/medicine-call/.env
|
||||
EOT
|
||||
|
||||
cd /root/medicine-config/medicine-damask
|
||||
docker-compose run --rm medicine-call python manage.py migrate
|
||||
docker-compose run --rm medicine-call python manage.py post_install
|
||||
docker-compose up -d
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-call:latest
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
||||
docker rmi $(docker images -f "dangling=true" -q)
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
medicine-damask:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-damask:latest
|
||||
container_name: medicine-damask
|
||||
env_file: .env
|
||||
ports:
|
||||
- "877:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose exec medicine-damask bash
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-damask:latest
|
||||
|
||||
cd /root/medicine-config/medicine-stack
|
||||
docker-compose exec postgres psql -c 'CREATE DATABASE medicine_damask' --username=postgres
|
||||
|
||||
cat <<EOT >> /root/medicine-config/medicine-damask/.env
|
||||
EOT
|
||||
|
||||
cd /root/medicine-config/medicine-damask
|
||||
docker-compose run --rm medicine-damask python manage.py migrate
|
||||
docker-compose run --rm medicine-damask python manage.py post_install
|
||||
docker-compose up -d
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-damask:latest
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
||||
docker rmi $(docker images -f "dangling=true" -q)
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
|
||||
version: '3.4'
|
||||
|
||||
services:
|
||||
|
||||
medicine-import:
|
||||
restart: "always"
|
||||
container_name: "medicine-import"
|
||||
image: docker.med-logic.ru/medicine-import:latest
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_DB: medicine_import
|
||||
REDIS_CELERY_DB: 12
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
volumes:
|
||||
- ./public:/app/public
|
||||
ports:
|
||||
- "875:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
#extra_hosts:
|
||||
# - "host.docker.internal:host-gateway"
|
||||
external_links:
|
||||
- "postgres:postgres-host"
|
||||
- "redis:redis-host"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external:
|
||||
name: "medicine-network"
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-import:latest
|
||||
|
||||
cd /root/medicine-config/medicine-stack
|
||||
docker-compose exec postgres psql -c 'CREATE DATABASE medicine_import' --username=postgres
|
||||
|
||||
cd /root/medicine-config/medicine-import
|
||||
docker-compose run --rm medicine-import python manage.py post_install
|
||||
docker-compose up -d
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
medicine-lis-receiver:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-lis-receiver:latest
|
||||
container_name: medicine-lis-receiver
|
||||
environment:
|
||||
DATABASE_URL: postgres:password@medicine-stack-postgres/medicine
|
||||
SUPERVISOR_HTTP_USERNAME: admin
|
||||
SUPERVISOR_HTTP_PASSWORD: p@ssword
|
||||
ports:
|
||||
- "9501:800"
|
||||
- "5100:800"
|
||||
- "810:810"
|
||||
networks:
|
||||
- medicine-network
|
||||
volumes:
|
||||
- ./supervisor_confs:/supervisor_confs
|
||||
- ./streams:/streams
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
medicine-lis:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-lis:latest
|
||||
container_name: medicine-lis
|
||||
env_file: .env
|
||||
ports:
|
||||
- "876:80"
|
||||
- "5500-5510:5500-5510"
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
networks:
|
||||
- medicine-network
|
||||
volumes:
|
||||
- ./supervisor_confs:/supervisor_confs
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-lis:latest
|
||||
|
||||
cd /root/medicine-config/medicine-stack
|
||||
docker-compose exec postgres psql -c 'CREATE DATABASE medicine_lis' --username=postgres
|
||||
|
||||
cat <<EOT >> /root/medicine-config/medicine-lis/.env
|
||||
EOT
|
||||
|
||||
cd /root/medicine-config/medicine-lis
|
||||
docker-compose run --rm medicine-lis python manage.py migrate
|
||||
docker-compose run --rm medicine-lis python manage.py post_install
|
||||
docker-compose up -d
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
|
||||
docker-compose logs --tail 100 --follow
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-lis:latest
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
||||
docker rmi $(docker images -f "dangling=true" -q)
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
export LC_ALL=C
|
||||
|
||||
mkdir -p /root/medicine-backups/
|
||||
cd /root/medicine-backups/
|
||||
|
||||
weekday_number=$(date +%u)
|
||||
weekday=$(date +%A | tr '[:upper:]' '[:lower:]')
|
||||
backup_filename="medicine_remd_${weekday_number}_${weekday}.sql"
|
||||
archive_filename="medicine_remd_${weekday_number}_${weekday}.tar.gz"
|
||||
docker exec -i medicine-stack-postgres pg_dump --no-owner -U postgres -F p medicine_remd > "${backup_filename}"
|
||||
|
||||
if test -f "${archive_filename}"; then
|
||||
rm "${archive_filename}"
|
||||
fi
|
||||
tar -czf "${archive_filename}" "${backup_filename}"
|
||||
rm "${backup_filename}"
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
medicine-remd:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-remd:latest
|
||||
container_name: medicine-remd
|
||||
env_file: .env
|
||||
environment:
|
||||
UWSGI_PROCESSES: 2
|
||||
UWSGI_THREADS: 2
|
||||
SECRET_KEY: ${SECRET_KEY}
|
||||
SENTRY_ENABLED: ${SENTRY_ENABLED}
|
||||
SENTRY_SERVER_NAME: ${SENTRY_SERVER_NAME}
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
ports:
|
||||
- "870:80"
|
||||
volumes:
|
||||
- ./public:/app/public
|
||||
networks:
|
||||
- medicine-network
|
||||
extra_hosts:
|
||||
- "sync.med-logic.ru:89.223.70.16"
|
||||
- "sentry.med-logic.ru:89.223.70.16"
|
||||
- "org.med-logic.ru:89.223.70.16"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose logs --tail 100 --follow
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
docker pull docker.med-logic.ru/medicine-remd:latest
|
||||
|
||||
(cd /root/medicine-config/medicine-remd &&
|
||||
docker-compose stop &&
|
||||
docker-compose up -d
|
||||
)
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
redis:
|
||||
container_name: medicine-stack-redis
|
||||
image: redis:5.0.6
|
||||
restart: "always"
|
||||
command: redis-server --maxmemory-policy allkeys-lru --maxclients 10000
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
postgres:
|
||||
container_name: medicine-stack-postgres
|
||||
image: postgres:12.2
|
||||
shm_size: 1gb
|
||||
command: postgres -c shared_buffers=512MB -c work_mem=8MB
|
||||
restart: "always"
|
||||
networks:
|
||||
- medicine-network
|
||||
environment:
|
||||
POSTGRES_USER: "postgres"
|
||||
POSTGRES_PASSWORD: "password"
|
||||
volumes:
|
||||
- ./volumes/postgres-data:/var/lib/postgresql/data
|
||||
- ../volumes/files:/files
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
medicine-timetable:
|
||||
image: docker.med-logic.ru/medicine-timetable
|
||||
container_name: "medicine-timetable"
|
||||
restart: "always"
|
||||
ports:
|
||||
- "882:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
export LC_ALL=C
|
||||
|
||||
mkdir -p /root/medicine-backups/
|
||||
cd /root/medicine-backups/
|
||||
|
||||
weekday_number=$(date +%u)
|
||||
weekday=$(date +%A | tr '[:upper:]' '[:lower:]')
|
||||
backup_filename="medicine_${weekday_number}_${weekday}.sql"
|
||||
archive_filename="medicine_${weekday_number}_${weekday}.tar.gz"
|
||||
docker exec -i medicine-stack-postgres pg_dump --no-owner -U postgres -F p medicine > "${backup_filename}" \
|
||||
--exclude-table-data=riisz_logging \
|
||||
--exclude-table-data=reversion_*
|
||||
|
||||
if test -f "${archive_filename}"; then
|
||||
rm "${archive_filename}"
|
||||
fi
|
||||
tar -czf "${archive_filename}" "${backup_filename}"
|
||||
rm "${backup_filename}"
|
||||
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
mkdir -p /root/medicine-backups/
|
||||
cd /root/medicine-backups/
|
||||
archive_filename="medicine_media.zip"
|
||||
|
||||
if test -f "${archive_filename}"; then
|
||||
rm "${archive_filename}"
|
||||
fi
|
||||
|
||||
zip -r "${archive_filename}" /var/lib/docker/volumes/medicine_medicine-public-data/_data/media
|
||||
|
|
@ -1,65 +1,45 @@
|
|||
|
||||
version: '3.4'
|
||||
|
||||
services:
|
||||
|
||||
app:
|
||||
image: docker.med-logic.ru/medicine:latest
|
||||
container_name: medicine-app
|
||||
restart: "always"
|
||||
env_file: .env
|
||||
environment:
|
||||
UWSGI_PROCESSES: ${UWSGI_PROCESSES:-2}
|
||||
UWSGI_THREADS: ${UWSGI_THREADS:-4}
|
||||
ports:
|
||||
- "${NGINX_PORT:-80}:80"
|
||||
- "${NGINX_HTTPS_PORT:-443}:443"
|
||||
volumes:
|
||||
- medicine-public-data:/app/public
|
||||
- medicine-files:/app/public/media/files
|
||||
networks:
|
||||
- medicine-network
|
||||
extra_hosts:
|
||||
- "sync.med-logic.ru:89.223.70.16"
|
||||
- "sentry.med-logic.ru:89.223.70.16"
|
||||
- "files.med-logic.ru:89.223.70.16"
|
||||
- "git.med-logic.ru:89.223.70.16"
|
||||
- "org.med-logic.ru:89.223.70.16"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
tasks:
|
||||
image: docker.med-logic.ru/medicine:latest
|
||||
container_name: medicine-tasks
|
||||
restart: "always"
|
||||
command: /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord-tasks.conf
|
||||
env_file: .env
|
||||
environment:
|
||||
CELERY_WORKER_CONCURRENCY: ${CELERY_WORKER_CONCURRENCY:-2}
|
||||
volumes:
|
||||
- medicine-public-data:/app/public
|
||||
networks:
|
||||
- medicine-network
|
||||
extra_hosts:
|
||||
- "sync.med-logic.ru:89.223.70.16"
|
||||
- "sentry.med-logic.ru:89.223.70.16"
|
||||
- "files.med-logic.ru:89.223.70.16"
|
||||
- "git.med-logic.ru:89.223.70.16"
|
||||
- "org.med-logic.ru:89.223.70.16"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
volumes:
|
||||
medicine-public-data:
|
||||
medicine-files:
|
||||
name: medicine-files
|
||||
name: medicine-public-data
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
||||
x-common: &common-params
|
||||
image: medicine:latest
|
||||
restart: always
|
||||
env_file:
|
||||
- ../.env
|
||||
- .env
|
||||
volumes:
|
||||
- medicine-public-data:/app/public
|
||||
networks:
|
||||
- medicine-network
|
||||
extra_hosts:
|
||||
- "sync.med-logic.ru:89.223.70.16"
|
||||
- "sentry.med-logic.ru:89.223.70.16"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "5mb"
|
||||
max-file: "10"
|
||||
|
||||
services:
|
||||
app:
|
||||
<<: *common-params
|
||||
container_name: medicine-app
|
||||
environment:
|
||||
UWSGI_PROCESSES: ${UWSGI_PROCESSES:-2}
|
||||
UWSGI_THREADS: ${UWSGI_THREADS:-4}
|
||||
ports:
|
||||
- "${NGINX_HTTP_PORT:-80}:80"
|
||||
- "${NGINX_HTTPS_PORT:-443}:443"
|
||||
|
||||
tasks:
|
||||
<<: *common-params
|
||||
container_name: medicine-tasks
|
||||
command: /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord-tasks.conf
|
||||
environment:
|
||||
CELERY_WORKER_CONCURRENCY: ${CELERY_WORKER_CONCURRENCY:-2}
|
||||
|
|
|
|||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose exec app bash
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose logs --tail 100 --follow
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
set -e
|
||||
|
||||
docker stop medicine-app medicine-tasks
|
||||
docker exec medicine-stack-postgres psql -c 'DROP DATABASE medicine' --username=postgres
|
||||
docker exec medicine-stack-postgres psql -c 'CREATE DATABASE medicine' --username=postgres
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
(cd /root/medicine-config/medicine &&
|
||||
docker-compose exec python manage.py reset_password
|
||||
)
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine:latest
|
||||
|
||||
(cd /root/medicine-config/medicine &&
|
||||
docker run --rm \
|
||||
--env-file .env \
|
||||
--network medicine-network \
|
||||
--name medicine-apply-migrations \
|
||||
docker.med-logic.ru/medicine:latest python manage.py migrate --noinput
|
||||
)
|
||||
|
||||
(cd /root/medicine-config/medicine &&
|
||||
docker-compose stop &&
|
||||
docker-compose up -d
|
||||
)
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
service-messaging:
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/medicine-ntf:latest
|
||||
container_name: service-messaging
|
||||
env_file: .env
|
||||
environment:
|
||||
UWSGI_PROCESSES: 2
|
||||
UWSGI_THREADS: 2
|
||||
ports:
|
||||
- "872:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose exec service-messaging bash
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-ntf:latest
|
||||
|
||||
read -r -p "Create database? [y/N] " response
|
||||
if [[ $prompt =~ [yY](es)* ]]
|
||||
then
|
||||
cd /root/medicine-config/medicine-stack
|
||||
docker-compose exec postgres psql -c 'CREATE DATABASE service_messaging' --username=postgres
|
||||
fi
|
||||
|
||||
read -p "Enter organization name: " ORGANIZATION_NAME
|
||||
|
||||
SECRET_KEY=$(openssl rand -base64 32)
|
||||
|
||||
cat <<EOT >> /root/medicine-config/service-messaging/.env
|
||||
|
||||
SECRET_KEY=$SECRET_KEY
|
||||
|
||||
SENTRY_ENABLED='True'
|
||||
|
||||
SENTRY_SERVER_NAME=$ORGANIZATION_NAME
|
||||
|
||||
EOT
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose logs --tail 100 --follow
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
|
||||
set -e
|
||||
|
||||
docker pull docker.med-logic.ru/medicine-ntf:latest
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
docker-compose run --rm service-messaging python manage.py migrate
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
postgres-data:
|
||||
name: medicine-postgres-data
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:15
|
||||
container_name: service-postgres
|
||||
restart: always
|
||||
shm_size: 1gb
|
||||
command: >
|
||||
postgres
|
||||
-c shared_buffers=512MB
|
||||
-c work_mem=4MB
|
||||
-c max_connections=200
|
||||
networks:
|
||||
- medicine-network
|
||||
environment:
|
||||
POSTGRES_USER: ${MEDICINE_POSTGRES_USER:-postgres}
|
||||
POSTGRES_PASSWORD: ${MEDICINE_POSTGRES_PASSWORD:-password}
|
||||
healthcheck:
|
||||
test: [ "CMD-SHELL", "pg_isready -U postgres" ]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
volumes:
|
||||
- postgres-data:/var/lib/postgresql/data
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "5m"
|
||||
max-file: "5"
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
||||
services:
|
||||
redis:
|
||||
container_name: service-redis
|
||||
image: redis:5.0.6
|
||||
restart: "always"
|
||||
command: redis-server --loglevel warning --maxmemory-policy allkeys-lru --maxclients 10000
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "5m"
|
||||
max-file: "5"
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
|
||||
lsb_release -d -s
|
||||
df -h /dev/sda1 | sed 1d | awk '{print $4}'
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
tfoms-patient:
|
||||
container_name: tfoms-patient
|
||||
restart: "always"
|
||||
image: docker.med-logic.ru/tfoms-patient:latest
|
||||
environment:
|
||||
- SENTRY_SITE=${SENTRY_SITE}
|
||||
- SQLALCHEMY_DATABASE_URI=postgresql://postgres:password@medicine-stack-postgres/tfoms_patient
|
||||
ports:
|
||||
- "880:80"
|
||||
networks:
|
||||
- medicine-network
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
set -e
|
||||
|
||||
echo "readonly" | docker login docker.med-logic.ru --username readonly --password-stdin
|
||||
|
||||
docker pull docker.med-logic.ru/tfoms-patient:latest
|
||||
|
||||
read -p "Enter organization name: " ORGANIZATION_NAME
|
||||
|
||||
cat <<EOT >> /root/medicine-config/tfoms-patient/.env
|
||||
SENTRY_SITE=$ORGANIZATION_NAME
|
||||
EOT
|
||||
|
||||
cd /root/medicine-config/tfoms-patient && docker-compose up -d
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker pull docker.med-logic.ru/tfoms-patient:latest
|
||||
docker-compose stop
|
||||
docker-compose up -d
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
|
||||
FROM python:3.8
|
||||
|
||||
RUN pip install flower==0.9.7
|
||||
RUN pip install redis
|
||||
|
|
@ -1,79 +0,0 @@
|
|||
version: '3.4'
|
||||
|
||||
services:
|
||||
|
||||
pgadmin:
|
||||
image: dpage/pgadmin4:4.23
|
||||
container_name: "thirdparty-pgadmin"
|
||||
restart: "always"
|
||||
external_links:
|
||||
- "postgres:postgres-host"
|
||||
environment:
|
||||
PGADMIN_DEFAULT_EMAIL: "admin"
|
||||
PGADMIN_DEFAULT_PASSWORD: "pgadmin-pass"
|
||||
ports:
|
||||
- "851:80"
|
||||
volumes:
|
||||
- pgadmin-data:/var/lib/pgadmin
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
filebrowser:
|
||||
image: filebrowser/filebrowser:v2.31.2
|
||||
container_name: "thirdparty-filebrowser"
|
||||
restart: "always"
|
||||
ports:
|
||||
- "856:80"
|
||||
volumes:
|
||||
- filebrowser-data:/etc
|
||||
- ../volumes/files:/srv/volumes
|
||||
- medicine-files:/srv/medicine-files
|
||||
networks:
|
||||
- medicine-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
flower:
|
||||
restart: "always"
|
||||
container_name: "thirdparty-flower"
|
||||
command: >
|
||||
flower
|
||||
--port=852
|
||||
--broker=redis://redis-host:6379/2
|
||||
--broker_api=redis://redis-host:6379/2
|
||||
--basic_auth=admin:flower-pass
|
||||
--max_workers=2
|
||||
--max_tasks=500
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: ./Dockerfile-flower
|
||||
external_links:
|
||||
- "redis:redis-host"
|
||||
networks:
|
||||
- medicine-network
|
||||
ports:
|
||||
- "852:852"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
|
||||
volumes:
|
||||
pgadmin-data:
|
||||
filebrowser-data:
|
||||
medicine-files:
|
||||
external: true
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external:
|
||||
name: "medicine-network"
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
docker-compose stop
|
||||
docker-compose pull
|
||||
docker-compose build
|
||||
docker-compose up -d
|
||||
|
||||
chmod +x update.sh
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
thumbgen:
|
||||
restart: "always"
|
||||
image: "docker.med-logic.ru/thumbgen:latest"
|
||||
container_name: "service-thumbgen"
|
||||
ports:
|
||||
- "820:80"
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "200k"
|
||||
max-file: "10"
|
||||
networks:
|
||||
- medicine-network
|
||||
|
||||
networks:
|
||||
medicine-network:
|
||||
external: true
|
||||
Loading…
Reference in New Issue