Español

Blog · Guías de despliegue

Cómo desplegar una app Go Fiber en 2026: un comando, HTTPS y un Dockerfile que se queda contigo

Por el equipo de Pethost · · Actualizado · 8 min de lectura

Tienes una app Fiber que responde en localhost:3000, y quieres ponerla en una dirección pública con HTTPS. En Pethost es un comando, pethost deploy, ejecutado en la carpeta que tiene go.mod. Él escribe el Dockerfile por ti, construye el programa e imprime su dirección. El hello world de Fiber se construyó e inició en 45 s la primera vez, y en 3 s la segunda.

En resumen
  • Un comando: pethost deploy en la carpeta que tiene go.mod. No hay archivo de configuración que escribir ni comando de build o de inicio que rellenar.
  • Qué hace: lee la versión de Go de go.mod, escribe un Dockerfile que ejecuta go build e inicia el programa.
  • El puerto: el que indique app.Listen. Pethost encuentra el puerto en el que escucha el programa, así que no hace falta ninguna variable PORT.
  • La dirección: https://my-api.yourname.pethost.app, con HTTPS desde el primer momento. Tu propio dominio es un registro DNS.
  • El precio: 9,99 € al mes por 2 vCPU, 3 GB y 30 GB, para esta app y cada uno de tus otros proyectos. No hay plan gratuito.

Qué necesitas para desplegar una app Fiber en 2026

Tres cosas: la app, el comando pethost y una cuenta de Pethost.

La app aquí es el hello world de Fiber: go mod init my-api, go get github.com/gofiber/fiber/v3 y este 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"))
}

El comando es un solo programa, que se instala con una línea. Todos sus comandos están en la referencia de la CLI.

curl -fsSL https://pethost.dev/install.sh | sh      # macOS, Linux
irm https://pethost.dev/install.ps1 | iex           # Windows, in PowerShell

La cuenta necesita un plan. Si no has iniciado sesión, pethost deploy abre tu navegador e inicia sesión por ti. Si aún no tienes plan, te muestra dónde elegir uno, y espera.

Despliega la app Fiber con un comando

Ve a la carpeta que tiene go.mod y ejecuta pethost deploy. Esta es la pantalla entera, para el 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
  1. Pregunta una sola cosa El nombre del proyecto, que es la primera palabra de su dirección. Con Enter se queda el nombre de la carpeta.
  2. La máquina no encuentra nada que ejecutar La línea con la cruz es su respuesta: un proyecto se ejecuta desde un Dockerfile o un archivo de Compose, y la carpeta aún no tiene ninguno de los dos.
  3. pethost escribe el Dockerfile Vio go.mod y un package main a su lado, y vuelve a subir la carpeta.
  4. La máquina lo construye y lo inicia Ve que el programa escucha en el 3000 y envía la dirección ahí. Después pethost visita la dirección él mismo e imprime lo que respondió: 200.

La dirección responde lo que envía el handler, y un path sin ruta recibe el propio 404 de Fiber:

$ curl https://my-api.sam.pethost.app/
Hello, World 👋!

El archivo .pethost dice qué proyecto es esta carpeta. Haz commit de él junto con el Dockerfile, y el siguiente despliegue no pregunta nada.

El Dockerfile que pethost escribe para una app Fiber

Este es el archivo tal como se escribió en la carpeta del hello world, entero:

# 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"]

Nada en él es propio de Fiber: una app Fiber es un programa Go, y eso es lo que busca pethost. Tres cosas salen de tu carpeta:

Los dos montajes de caché conservan los módulos de Go y su caché de build en tu máquina entre despliegues. Si la máquina no puede construir o iniciar el Dockerfile que escribió pethost, pethost vuelve a sacar el archivo de tu carpeta y dice qué falló.

¿En qué puerto escucha Fiber?

En el que le das a app.Listen. El hello world dice ":3000", y la pantalla del despliegue también lo dice: app listens on 3000. La máquina mira el contenedor en ejecución, así que no hay puerto que declarar ni variable PORT que leer. La pantalla de inicio de Fiber está en el log:

$ 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

Los visitantes llegan por HTTPS en el puerto habitual, y el proxy de tu máquina pasa cada petición al programa. Una variable que lee la app es un comando, pethost env set DATABASE_URL: pide el valor sin mostrarlo, lo pone en el archivo .env del proyecto en la máquina, y los despliegues siguientes lo conservan.

Cambia el código y vuelve a desplegar

Edita un handler y ejecuta el mismo comando. La máquina conserva las capas del build y las cachés de 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

Para desplegar con cada push, conecta el repositorio una vez:

pethost github sam/my-api          # from now on, every push deploys itself

Pethost lee solo los repositorios que le diste a su GitHub App. Si un despliegue sale mal, pethost rollback vuelve a poner la versión anterior, y tu máquina conserva las tres versiones anteriores a la actual. Un agente de IA puede hacer todo esto por ti a través del servidor MCP de Pethost: cómo un agente despliega y cuida un proyecto. El mismo comando despliega una app Gin.

Usa tu propio dominio para la app

Cualquier nombre bajo el dominio de tu cuenta es una dirección desde el primer momento, con HTTPS. Un dominio tuyo lleva un comando y un registro DNS:

pethost domain add api.example.com

El comando imprime el registro que hay que crear: un CNAME de tu nombre al nombre de tu máquina. El certificado llega solo en cuanto el nombre resuelve, y se renueva solo.

Qué obtienes por el precio

Pethost cuesta 9,99 € al mes por todo lo que alojas, con 2 vCPU, 3 GB de memoria y 30 GB de disco. Un programa Fiber es un binario pequeño, así que en la máquina queda sitio para su base de datos, un worker y tus otros proyectos. No pagas por proyecto y nada se mide por uso: un mes con mucho tráfico cuesta lo mismo que uno tranquilo.

Lo que ya está hecho por ti: HTTPS con certificados que se renuevan solos, despliegues desde GitHub, backups cada noche conservados 14 días, SSH a cualquier contenedor y cada petición contada, con los paths más visitados y la tasa de errores de los últimos 30 días. La máquina está siempre encendida, así que una petición nunca espera a un arranque en frío. Los planes están en la parte de precios de la página principal.

Un proyecto, abierto en sus peticiones. Cuántas llegaron, lo rápido que se respondieron y un gráfico de los últimos 15 min.
El panel de Pethost: un proyecto abierto en sus peticiones, con su número, sus tiempos de respuesta y un gráfico de los últimos 15 minutos.

Pethost es la mejor opción para

  • Desarrolladores Go con un servicio pequeño: el programa, su base de datos y su worker en una sola máquina, en una sola factura
  • Desarrolladores en solitario con varios proyectos personales, cada uno en su propia dirección
  • Quien deja que su agente despliegue por él: Claude Code o Codex pone la app en línea y lee sus logs
  • Startups en sus inicios que quieren un gasto mensual fijo mientras el producto es pequeño

Busca otra opción si

  • Tu aplicación necesita varias regiones o autoescalado

Preguntas

¿Una app Fiber necesita un Dockerfile para desplegarse?

En Pethost un proyecto se ejecuta desde un Dockerfile o un archivo de Compose, y no tienes que escribirlo tú: en una carpeta que no tiene ninguno de los dos, pethost deploy escribe el Dockerfile para un programa Go y lo despliega. El archivo se queda en tu carpeta, y puedes cambiarlo.

¿Tengo que leer la variable PORT en una app Fiber?

No. Deja el puerto que le das a app.Listen, por ejemplo ":3000". Pethost encuentra el puerto en el que escucha el programa en ejecución y envía la dirección ahí, por HTTPS.

¿Puedo desplegar una app Fiber desde GitHub con cada push?

Sí. Despliega la carpeta una vez con pethost deploy y luego ejecuta pethost github owner/repository. Desde entonces cada push al repositorio se despliega solo, y pethost rollback vuelve a un commit anterior.

¿Cómo agrego un dominio propio con HTTPS a una app Fiber?

Ejecuta pethost domain add api.example.com y crea el único registro DNS que imprime, un CNAME al nombre de tu máquina. El certificado llega solo en cuanto el nombre resuelve, y se renueva solo.

¿Cuánto cuesta alojar una app Fiber en Pethost?

9,99 € al mes por Starter, con 2 vCPU, 3 GB y 30 GB y sin pagar por proyecto: tus otras apps, sitios y bases de datos también se ejecutan ahí. No hay plan gratuito. Los precios son sin IVA.

Las pantallas son despliegues del hello world de Fiber, con Fiber 3.5.0, Go 1.25 y pethost 0.2.1, en una máquina de pruebas nuestra que no había construido nada antes. La cuenta que aparece es la de ejemplo, sam.

  1. Fiber: documentación y hello world
  2. Fiber: recetas
  3. pethost, la línea de comandos de Pethost

Pon tus proyectos en línea hoy

Despliega apps, bots y bases de datos desde tu agente, GitHub o el navegador, tantos como quepan, a un precio fijo. Nada medido, nada cobrado aparte.

Alojar todos tus proyectos por 9,99 €/mes