TGViewer
IT Хасслер IT Хасслер @overemployd · 450 subscribers
Post #88 445
Как задеплоить не очень сложный продукт на VPS: Часть 1

Возник у меня такой вопрос пару недель назад, потому что не хотелось сразу заморачиваться с k8s, а облака не подходят для моей архитектуры.

Спасибо Роману — он сразу поделился своим подходом и скриптами, и с его же разрешения буду публиковать их здесь. Это доработанные мною его скрипты и мои собственные, их я дописал, вдохновившись скриптами Ромы.

Я сам сейчас юзаю CentOS 9 Stream, поэтому писал всё под него, но если шарите, несложно будет адаптировать под любую другую *nix. Для CentOS 8 кажется тоже должно подойти сразу, без правок 🤔 После выполнения скриптов VPS будет настроен согласно этому мануалу, также будет установлен и запущен Docker.

В общем, схема такая:

1️⃣ Арендуем VPS (про shared хостинг не пишу, т.к. там часто бывают ограничения по настройке системы)

2️⃣ Генерируем публичный и приватный ключ. Если вы на Mac/Linux, то OpenSSH, если Windows — то PuTTYgen. Размер можно сделать 2048, остальное — как хотите.

Если юзаете PuTTYgen, то после генерации и сохранения ключа нужно из поля «Public key for pasting into OpenSSH» скопировать всё, что там есть, и вставить в новый файл - этот файл надо будет указывать на следующем шаге.

3️⃣ Запускаем у себя на ПК скрипт для создания юзера, из-под которого будем всё устанавливать и запускать (для безопасности):

./setup_auth.sh -h <host> -u <username> -p <password> -k <keyfile>


Где:
<host> — IP-адрес вашего VPS
<username> — имя пользователя, которого мы создадим
<password> — его пароль
<keyfile> — это путь до файла с публичным ключом

При запуске скрипт попросит ввести пароль root-пользователя для подключения. С винды можно через git bash запускать.

Когда он завершится, можно будет подключаться к VPS под новым юзером и с приватным ключом, без ввода пароля. Скрипт добавит этого пользователя в sudoers, Но не запретит вход по паролю. Если нужно, можно это сделать уже потом.

4️⃣ Логинимся в VPS обязательно под новым пользователем, загружаем туда скрипт setup_centos9.sh для дальнейшей настройки. Да, может стоило заморочиться и сделать всё в одном скрипте, но я с ходу не разобрался, как запустить все команды через SSH с sudo 😅

5️⃣ Запускаем скрипт (понадобится ввести пароль нового пользователя):

sudo bash ./setup_centos9.sh


Он установит firewalld, удалит ненужные пакеты и установит докер.

Всё, теперь ваш VPS настроен. В следующей части напишу про изи-запуск приложений на нём❤️

P.S. Если есть критика, пожелания, предложения по скриптам, пишите 🙌
  • 👍 4
  • ❤ 2
  • 👌 2
More from @overemployd
  1. Dec 23, 2025Cursor подвёл итоги года Я в Top-5% users 🤓 Любимая модель - Claude 4 Sonnet Использовал…
  2. Aug 26, 2025Ребят, кто сейчас делает AI-powered продукты? А именно — те, которые построены на базе LLM…
  3. Aug 14, 2025Чем сейчас занимаюсь фулл-тайм 👨🏻‍💻 В начале лета приступил к разработке сервиса по пок…
  4. Jul 30, 2025🥷🏻 Я работаю в stealth mode уже долгое время. Есть фуллтайм и парочка пет-проектов: один…
  5. Jun 11, 2025Ну а у меня за прошедшее время куча новостей, много всего происходит, и я надеюсь, в ближа…
  6. Jun 11, 2025Привет, уговорила меня жена завести еще один канал, потому что к текущему врядли Паша Дуро…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →