1.9 KiB
1.9 KiB
msgreceiver — deployment instrukce
Soubory
- Zdrojový skript:
U:\PythonProject\Janssen\EmailsImport\DockerCustomApp\app.py - Network share:
\\tower\appdata\msgreceiver\app.py - Unraid cesta:
/mnt/user/appdata/msgreceiver/
Přihlašovací údaje
- Unraid SSH:
root@192.168.1.76, heslo:7309208104 - Docker kontejner:
msgreceiver
Postup při nové verzi app.py
1. Zkopírovat app.py na server
Copy-Item "U:\PythonProject\Janssen\EmailsImport\DockerCustomApp\app.py" "\\tower\appdata\msgreceiver\app.py" -Force
2. Připojit se přes SSH a přebuildovat Docker (přes Python paramiko)
import paramiko
c = paramiko.SSHClient()
c.set_missing_host_key_policy(paramiko.AutoAddPolicy())
c.connect('192.168.1.76', username='root', password='7309208104')
# Build
_, stdout, stderr = c.exec_command('docker build -t msgreceiver /mnt/user/appdata/msgreceiver/ 2>&1')
print(stdout.read().decode())
# Restart
_, stdout, stderr = c.exec_command('docker restart msgreceiver')
print(stdout.read().decode())
c.close()
Poznámka:
sshpassnení na tomto Windows stroji k dispozici, Windows OpenSSH neumí neinteraktivní heslo — proto vždy použij paramiko.
Struktura adresáře na serveru
/mnt/user/appdata/msgreceiver/
├── Dockerfile
├── app.py
├── requirements.txt
└── .env ← Dropbox credentials
Dropbox konfigurace (.env)
Proměnné načítané z .env:
DROPBOX_APP_KEYDROPBOX_APP_SECRETDROPBOX_APP_REFRESH_TOKEN
Upload cesta v Dropboxu: /!!!Days/Downloads Z230/{filename}
API endpointy
Bearer token: 13e1bb01-9fd5-44a8-8ce9-4ee27133d340
| Endpoint | Přijímá | Chování |
|---|---|---|
POST /upload |
.msg |
Uloží do /msgs, přeskočí pokud existuje |
POST /upload-db |
.db |
Smaže všechny staré .db v /msgs/db, uloží novou |
POST /upload-dropbox |
cokoliv | Nahraje do Dropboxu (overwrite) |