From 0c010991585c20648ac2e48fa1cec3ceb7e40bc2 Mon Sep 17 00:00:00 2001 From: KodyFFy Date: Thu, 6 Aug 2026 09:30:34 +0000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20service=5Fdefault.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service_default.sh | 159 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 service_default.sh diff --git a/service_default.sh b/service_default.sh new file mode 100644 index 0000000..7b6a67d --- /dev/null +++ b/service_default.sh @@ -0,0 +1,159 @@ +#!/bin/bash + +# Скрипт для обновления системы и установки пакетов (Версия 2) +# Включает установку Docker, Caddy и Zabbix Agent + +set -e # Прерывать выполнение при ошибке + +echo "=========================================" +echo "Начинаем обновление системы..." +echo "=========================================" + +# 1) Базовое обновление системы +echo "Обновление списка пакетов..." +apt update + +echo "Обновление установленных пакетов..." +apt upgrade -y + +echo "Установка базовых пакетов (sudo, curl, fish)..." +apt install -y sudo curl fish + +echo "=========================================" +echo "Установка Docker..." +echo "=========================================" + +# Удаление старых пакетов Docker +echo "Удаление старых пакетов Docker..." +sudo apt remove -y docker.io docker-compose docker-doc docker-buildx podman-docker containerd runc 2>/dev/null || true + +# Добавление официального GPG ключа Docker +echo "Добавление GPG ключа Docker..." +sudo apt update +sudo apt install -y ca-certificates curl +sudo install -m 0755 -d /etc/apt/keyrings +sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc +sudo chmod a+r /etc/apt/keyrings/docker.asc + +# Добавление репозитория Docker +echo "Добавление репозитория Docker..." +sudo tee /etc/apt/sources.list.d/docker.sources </dev/null || true +echo "Docker установлен. Для применения прав группы docker выполните: newgrp docker или перезайдите в систему" + +echo "=========================================" +echo "Установка Caddy..." +echo "=========================================" + +# Установка Caddy +echo "Установка Caddy..." +sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl + +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg + +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list + +sudo chmod o+r /usr/share/keyrings/caddy-stable-archive-keyring.gpg +sudo chmod o+r /etc/apt/sources.list.d/caddy-stable.list + +sudo apt update +sudo apt install -y caddy + +echo "=========================================" +echo "Настройка Caddyfile..." +echo "=========================================" + +# Очистка и запись нового Caddyfile +echo "Очистка /etc/caddy/Caddyfile и добавление шаблона..." + +# Запрос PORT у пользователя +read -p "Введите PORT для обратного прокси (например, 8080): " PORT +if [ -z "$PORT" ]; then + PORT="8080" + echo "Порт не указан, используем порт по умолчанию: $PORT" +fi + +# Создание нового Caddyfile +sudo tee /etc/caddy/Caddyfile > /dev/null </dev/null || echo 'не установлен')" +echo " - Caddy: $(caddy version 2>/dev/null || echo 'не установлен')" +echo " - Zabbix Agent: $(zabbix_agentd --version 2>/dev/null | head -1 || echo 'не установлен')" +echo "" +echo "Caddy настроен на порт: $PORT" +echo "Zabbix Agent настроен на сервер: zbx.int.kodyffy.ru" +echo "Hostname: $HOSTNAME.kodyffy" +echo "" +echo "Для применения прав Docker выполните: newgrp docker" +echo "Для проверки Caddy: sudo systemctl status caddy" +echo "Для проверки Zabbix Agent: sudo systemctl status zabbix-agent" +echo "=========================================" \ No newline at end of file