Initial commit: Debian Manager — управление Debian-серверами
- SSH/SFTP управление без агентов - Пакеты (apt), Docker, файлы, systemd, ufw, cron - Плейбуки, групповые операции, планировщик - Бэкапы, отчёты, Portainer, Proxmox VE, Gitea Deploy - Терминал, Telegram-уведомления, тёмная/светлая тема
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
import asyncio
|
||||
import asyncssh
|
||||
|
||||
SCRIPT = r"""
|
||||
set -e
|
||||
echo '=== apt update ==='
|
||||
echo '123456789987654321' | sudo -S apt-get update -qq
|
||||
echo '=== install docker.io ==='
|
||||
echo '123456789987654321' | sudo -S DEBIAN_FRONTEND=noninteractive apt-get install -y -qq docker.io docker-compose >/dev/null
|
||||
echo '=== enable docker ==='
|
||||
echo '123456789987654321' | sudo -S systemctl enable --now docker
|
||||
echo '123456789987654321' | sudo -S usermod -aG docker dimon
|
||||
echo '=== docker version ==='
|
||||
echo '123456789987654321' | sudo -S docker --version
|
||||
echo '=== portainer volume ==='
|
||||
echo '123456789987654321' | sudo -S docker volume create portainer_data
|
||||
echo '=== portainer run ==='
|
||||
echo '123456789987654321' | sudo -S docker run -d -p 9000:9000 --name portainer --restart=always \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:lts
|
||||
echo '=== containers ==='
|
||||
echo '123456789987654321' | sudo -S docker ps
|
||||
echo '=== ufw allow 9000 ==='
|
||||
(echo '123456789987654321' | sudo -S ufw allow 9000/tcp 2>/dev/null && echo ufw-ok) || echo ufw-not-installed
|
||||
echo DONE
|
||||
"""
|
||||
|
||||
async def main():
|
||||
async with asyncssh.connect(
|
||||
"132.243.17.164", port=2292, username="dimon",
|
||||
password="123456789987654321", known_hosts=None,
|
||||
) as conn:
|
||||
r = await conn.run(SCRIPT, timeout=900)
|
||||
print(r.stdout)
|
||||
if r.stderr:
|
||||
print("STDERR:", r.stderr[-3000:])
|
||||
print("RC:", r.returncode)
|
||||
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user