Documentacion API - FarmAPI¶
Objetivo: publicar la documentacion en:
https://docs.<tu-dominio>/(sitio estatico, recomendado para clientes)https://<tu-dominio>/farmapi/docs/(in-app, ya incluido en la imagen Docker)
1) Build root (artefacto estatico)¶
Genera el OpenAPI publico y la build root:
make openapi-public
mkdocs build -f mkdocs.yml -d site-root
El output queda en site-root/.
2) Publicar en GCS + Load Balancer + CDN¶
Recomendacion: servir desde un bucket privado via HTTP(S) Load Balancer (no ACL publicas).
Pasos (alto nivel):
- Crear bucket (ej.
gs://farmaapi-docs-site) - Subir contenido:
gsutil -m rsync -r site-root gs://farmaapi-docs-site- Configurar HTTP(S) Load Balancer con backend bucket + Cloud CDN
- Dominio:
docs.<tu-dominio>con certificado gestionado
Notas de cache:
- HTML: cache corto (minutos)
- assets (
*.css,*.js,*.svg,*.woff2): cache largo (dias)
3) Alternativa: Cloud Run + CDN¶
Si prefieres no usar backend bucket, puedes:
- servir
site-root/desde un contenedor nginx en Cloud Run - poner Load Balancer delante con Cloud CDN
Coste/operacion suele ser mayor que backend bucket, pero simplifica permisos.