Блог · Гайды по деплою
Как задеплоить приложение на Go Fiber в 2026: одна команда, HTTPS и Dockerfile, который остается у вас
У вас есть приложение на Fiber, которое отвечает на localhost:3000, и вы хотите выложить его по публичному адресу с HTTPS. На Pethost это одна команда, pethost deploy, в папке, где лежит go.mod. Она сама пишет Dockerfile, собирает программу и печатает ее адрес. Hello world от Fiber в первый раз собрался и запустился за 45 секунд, а во второй — за 3 секунды.
- Одна команда:
pethost deployв папке сgo.mod. Не нужно ни писать файл конфигурации, ни заполнять команды сборки и запуска. - Что она делает: читает версию Go из
go.mod, пишет Dockerfile, который запускаетgo build, и запускает программу. - Порт: тот, что указан в
app.Listen. Pethost сам находит порт, который слушает программа, поэтому переменнаяPORTне нужна. - Адрес:
https://my-api.yourname.pethost.app, сразу с HTTPS. Свой домен — одна DNS-запись. - Цена: 9,99 € в месяц за 2 vCPU, 3 GB и 30 GB — для этого приложения и всех остальных ваших проектов. Бесплатного тарифа нет.
Что нужно, чтобы задеплоить приложение на Fiber в 2026 году
Три вещи: само приложение, команда pethost и аккаунт Pethost.
Приложение здесь — hello world от Fiber: go mod init my-api, go get github.com/gofiber/fiber/v3 и вот этот main.go:
package main
import (
"log"
"github.com/gofiber/fiber/v3"
)
func main() {
// Initialize a new Fiber app
app := fiber.New()
// Define a route for the GET method on the root path '/'
app.Get("/", func(c fiber.Ctx) error {
// Send a string response to the client
return c.SendString("Hello, World 👋!")
})
// Start the server on port 3000
log.Fatal(app.Listen(":3000"))
}
Команда — это одна программа, которая ставится одной строкой. Все ее команды есть в справочнике CLI.
curl -fsSL https://pethost.dev/install.sh | sh # macOS, Linux
irm https://pethost.dev/install.ps1 | iex # Windows, in PowerShell
Аккаунту нужен тариф. Если вы не вошли, pethost deploy откроет браузер, и вы войдете. Если тарифа еще нет, команда покажет, где его выбрать, и подождет.
Деплой приложения на Fiber одной командой
Перейдите в папку с go.mod и запустите pethost deploy. Вот весь экран для hello world:
$ cd my-api
$ pethost deploy
Name it [my-api]: it will live at https://my-api.sam.pethost.app
✓ Packed 3 files, 5 KB
✓ Uploaded straight to your machine
✗ /compose.yaml: the project directory has no compose.yaml at its root: add one
✓ Go program detected, wrote Dockerfile.
✓ Packed 4 files, 5 KB
✓ Uploaded straight to your machine
✓ Built and started in 45 s
· wrote compose.yaml for the Dockerfile: the service app, reading .env
✓ app listens on 3000 → https://my-api.sam.pethost.app
It answers 200.
https://my-api.sam.pethost.app
Wrote .pethost (commit it). Next: pethost logs -f · pethost open
- Она спрашивает одно Имя проекта — первое слово его адреса. Enter берет имя папки.
- Машина не находит, что запускать Строка с крестиком — ее ответ: проект запускается из Dockerfile или Compose-файла, а в папке пока нет ни того, ни другого.
- pethost пишет Dockerfile Он увидел
go.modиpackage mainрядом с ним и загружает папку снова. - Машина собирает и запускает его Она видит, что программа слушает порт 3000, и направляет туда адрес. Затем pethost сам открывает адрес и печатает, что тот ответил: 200.
Адрес отвечает тем, что отправляет обработчик, а на путь без маршрута Fiber отвечает своим 404:
$ curl https://my-api.sam.pethost.app/
Hello, World 👋!
Файл .pethost говорит, какой проект в этой папке. Закоммитьте его вместе с Dockerfile, и следующий деплой ничего не спросит.
Dockerfile, который pethost пишет для приложения на Fiber
Вот этот файл целиком, каким он был записан в папку hello world:
# Written by pethost deploy for this Go program: Go 1.25 (go.mod), its program is ..
# It is yours now: change it as you like. pethost does not write it again.
FROM golang:1.25
WORKDIR /app
COPY . .
RUN --mount=type=cache,target=/go/pkg/mod \
--mount=type=cache,target=/root/.cache/go-build \
go build -o /usr/local/bin/my-api .
CMD ["my-api"]
В нем нет ничего про Fiber: приложение на Fiber — это программа на Go, и именно ее ищет pethost. Три вещи берутся из вашей папки:
- Версия Go — та, что стоит в строке
goфайлаgo.mod. - Программа —
package mainв корне модуля или единственная папка вcmd/, где он есть. Если таких папок вcmd/несколько, pethost ничего не пишет и объясняет почему. - Имя — последняя часть пути модуля, как ее назвал бы
go install.
Два монтирования кеша хранят модули и кеш сборки Go на вашей машине между деплоями. Если машина не может собрать или запустить Dockerfile, который написал pethost, pethost убирает файл из вашей папки и говорит, что не получилось.
Какой порт слушает Fiber?
Тот, что вы передаете в app.Listen. В hello world это ":3000", и экран деплоя говорит то же самое: app listens on 3000. Машина смотрит на работающий контейнер, поэтому не нужно ни объявлять порт, ни читать переменную PORT. Стартовый экран самого Fiber — в логе:
$ pethost logs
2026-10-10T11:29:50Z app INFO Server started on: http://127.0.0.1:3000 (bound on host 0.0.0.0 and port 3000)
2026-10-10T11:29:50Z app INFO Total handlers: 2
2026-10-10T11:29:50Z app INFO Prefork: Disabled
2026-10-10T11:29:50Z app INFO PID: 1
Посетители приходят по HTTPS на обычный порт, а прокси на вашей машине передает каждый запрос программе. Переменная, которую читает приложение, — это одна команда, pethost env set DATABASE_URL: она спрашивает значение, не показывая его, кладет его в файл .env проекта на машине, и следующие деплои его сохраняют.
Измените код и задеплойте снова
Отредактируйте обработчик и запустите ту же команду. Машина хранит слои сборки и кеши Go:
$ pethost deploy
my-api (.pethost)
✓ Packed 5 files · uploaded · built and started in 3 s
· wrote compose.yaml for the Dockerfile: the service app, reading .env
· kept the project's x-pethost
It answers 200.
https://my-api.sam.pethost.app
Чтобы вместо этого деплоить каждый пуш, один раз подключите репозиторий:
pethost github sam/my-api # from now on, every push deploys itself
Pethost читает только те репозитории, которые вы дали его GitHub App. Если деплой пошел не так, pethost rollback возвращает предыдущую версию, а ваша машина хранит три версии перед текущей. ИИ-агент может сделать все это за вас через MCP-сервер Pethost: как агент деплоит проект и следит за ним. Та же команда деплоит приложение на Gin.
Свой домен для приложения
Любое имя в домене вашего аккаунта сразу становится адресом с HTTPS. Для своего домена нужны одна команда и одна DNS-запись:
pethost domain add api.example.com
Команда печатает запись, которую нужно создать: CNAME с вашего имени на имя вашей машины. Сертификат появляется сам, как только имя начинает указывать на машину, и сам продлевается.
Что вы получаете за эти деньги
Pethost стоит 9,99 € в месяц за все, что вы хостите, на 2 vCPU, 3 GB памяти и 30 GB диска. Программа на Fiber — это один небольшой бинарник, так что на машине остается место для ее базы данных, воркера и других ваших проектов. Платы за проект нет, и ничего не считается по счетчику: загруженный месяц стоит столько же, сколько тихий.
- 9,99 € в месяц за все ваши проекты, без счетчиков
- 45 с на сборку и запуск hello world в первый раз
- 3 с на следующий деплой
Что уже сделано за вас: HTTPS с сертификатами, которые продлеваются сами, деплои из GitHub, ночные бэкапы, которые хранятся 14 дней, SSH в любой контейнер и учет каждого запроса — с самыми популярными путями и долей ошибок за последние 30 дней. Машина всегда включена, поэтому запрос никогда не ждет холодного старта. Тарифы — в разделе цен на главной странице.
Pethost — лучший выбор для
- Go-разработчиков с небольшим сервисом: программа, ее база данных и воркер на одной машине, с одним счетом
- Разработчиков-одиночек с несколькими личными проектами, у каждого из которых свой адрес
- Людей, за которых деплоит агент: Claude Code или Codex выкладывает приложение и читает его логи
- Стартапов на ранней стадии, которым нужны фиксированные расходы в месяц, пока продукт небольшой
Ищите другое, если
- Вашему приложению нужны несколько регионов или автомасштабирование
Вопросы
Нужен ли Dockerfile, чтобы задеплоить приложение на Fiber?
На Pethost проект запускается из Dockerfile или Compose-файла, и писать его самому не нужно: в папке, где нет ни того, ни другого, pethost deploy пишет Dockerfile для программы на Go и деплоит ее. Файл остается в вашей папке, и его можно менять.
Нужно ли читать переменную PORT в приложении на Fiber?
Нет. Оставьте порт, который вы передаете в app.Listen, например ":3000". Pethost находит порт, который слушает работающая программа, и направляет туда адрес по HTTPS.
Можно ли деплоить приложение на Fiber из GitHub при каждом пуше?
Да. Один раз задеплойте папку через pethost deploy, затем запустите pethost github owner/repository. С этого момента каждый пуш в репозиторий деплоится сам, а pethost rollback возвращает более ранний коммит.
Как подключить свой домен с HTTPS к приложению на Fiber?
Запустите pethost domain add api.example.com и создайте одну DNS-запись, которую команда напечатает: CNAME на имя вашей машины. Сертификат появляется сам, как только имя начинает указывать на машину, и сам продлевается.
Сколько стоит хостинг приложения на Fiber на Pethost?
9,99 € в месяц за Starter: 2 vCPU, 3 GB и 30 GB без платы за проект, так что там же работают ваши другие приложения, сайты и базы данных. Бесплатного тарифа нет. Цены без НДС.
На экранах — деплои hello world от Fiber с Fiber 3.5.0, Go 1.25 и pethost 0.2.1 на нашей тестовой машине, которая до этого ничего не собирала. Аккаунт на них — пример, sam.
Запустите свои проекты уже сегодня
Деплойте приложения, ботов и базы данных из агента, с GitHub или в браузере, сколько поместится, по одной фиксированной цене. Ничего по счётчику, ничего сверху.