Openship - открытая платформа-как-сервис (PaaS) для своего сервера, self-hosted аналог Vercel и Heroku. Вы подключаете сервер, а дальше публикуете приложения из Git: платформа сама собирает образ, поднимает контейнер, вешает ваш домен и выпускает Let's Encrypt. Тот же сценарий «запушил - задеплоилось», но без оплаты за место и без передачи кода стороннему облаку - код и данные остаются на вашем сервере, а цена фиксированная за VM. Управление через дашборд: проекты, деплои, домены, бэкапы и логи в одном месте.
Карта поднимает весь стек Openship (Docker Compose) на вашей VM, заводит администратора и сразу отдает дашборд по валидному HTTPS на magic-DNS адресе сервера. Первый вход - системным паролем сервера, дальше подключаете сервер деплоя и публикуете приложения. Для облачной работы уже включен нужный режим авторизации и TLS-надстройка - клиенту не нужно ничего доводить руками.
Что внутри
openship-api+openship-dashboard- ядро платформы (Node.js) и веб-дашборд (Next.js) на127.0.0.1:3001.openship-postgres+openship-redis- состояние платформы, очереди и кеш.openship-edge(OpenResty) - ingress и Let's Encrypt для доменов ваших приложений.- Caddy - reverse-proxy и авто-TLS (Let's Encrypt) перед дашбордом на magic-DNS адресе.
Как начать
- Адрес формируется из IP сервера: замените точки на дефисы и добавьте
.fatmetal.net. Пример: IP45.15.159.10->https://45-15-159-10.fatmetal.net/. - Вход в дашборд: логин
admin@<адрес>(тот же домен), пароль - пароль вашего сервера (тот же, что для SSH). Логин и пароль продублированы в/root/openship-credentials.txtи в MOTD. - В дашборде смените пароль в Settings, подключите сервер деплоя и публикуйте приложения (Projects -> New).
Свой домен
Для приложения: наведите домен A-записью на IP сервера и добавьте его в дашборде - Openship сам выпустит Let's Encrypt через встроенный edge. Для самого дашборда: CNAME на magic-DNS адрес, пропишите DOMAIN=ваш-домен в /etc/openship-mp/params.env и перезапустите bash /opt/openship-mp/install.sh. Полная памятка - на сервере: cat /root/openship-credentials.txt.
Требования
Ubuntu 24.04, открытые порты 80/443. Минимум CPU2-RAM4-DISK50: сам control-plane в простое занимает меньше гигабайта RAM, но сборка ваших приложений идет на этом же сервере и в пике ест больше - под реальные билды закладывайте запас. Первая установка занимает около 13 минут (тянутся образы, из РФ-сети базовые образы докачиваются с ретраями).