Skip to content

New application checklist

For naming, subdomains vs branded domains, and when to register an SL, see Products, domains & legal.

Use this when adding a new project (e.g. bioscan/shop, user repos under rafael.gonzalez.albes).

Static site only (IONOS SFTP)

  1. Onboardbash scripts/onboard-project.sh --profile static-sftp ... (see Onboard project)
  2. Forgejo — repo must exist under org or user namespace
  3. Copy templates/woodpecker-static-sftp.yml.woodpecker.yml (if not already)
  4. Append notify steps from templates/woodpecker-notify-plane.yml
  5. Secretslocal/projects/<repo>.env for SFTP; onboard script pushes to Woodpecker
  6. Push main and verify deploy

Full-stack (frontend SFTP + backend apps VPS)

  1. Steps above for frontend (if applicable)
  2. DNS{app}.{domain}apps VPS (82.165.177.110), e.g. wearlab, bioscan
  3. Repo — add deploy/docker-compose.yml (see templates/woodpecker-frontend-backend.yml)
  4. Woodpecker — top-level labels: location: apps-vps
  5. Apps VPS/opt/apps/{app}/ with .env (not infra VPS /opt/devops)
  6. Woodpecker secrets: ssh_host=82.165.177.110, ssh_user=deploy, ssh_key + registry tokens

See Migrate app to apps VPS and Woodpecker agents.

Staging (later)

  • develop branch → staging-{app}-api.* + SFTP folder {app}-staging
  • main branch → production

Not configured yet — production-only for now.

Examples on this infrastructure

App Repo Deploy target URL
portfolio rafael.gonzalez.albes/portfolio IONOS SFTP dist/ rafaelgonzalezalbes.com
wearlab alex/wearlab-main /opt/apps/wearlab/ (apps VPS) wearlab.rafaelgonzalezalbes.com
bioscancheck bioscan/bioscancheck — (paused) Not deployed — repo may exist on Forgejo
timbertails manual timbertails/ SFTP timbertails.rafaelgonzalezalbes.com
airportConnection manual airportconnection/ SFTP subdomain