Skip to content

ci(dokploy): publish image to GHCR instead of Docker Hub

jedmund requested to merge jedmund/ghcr-publish into canary

Created by: jedmund

Summary

Switches the fork's Docker build workflow from Docker Hub to GHCR so the homelab can pull a fork-specific image (ghcr.io/jedmund/dokploy:canary).

  • IMAGE_NAMEghcr.io/jedmund/dokploy
  • All three Docker Hub login steps replaced with GHCR login (registry: ghcr.io, username: github.actor, password: GITHUB_TOKEN) — no new secrets needed.
  • Workflow-level permissions: contents: read, packages: write so the token can push packages.
  • Dropped the stale fix/re-apply-database-migration-fix branch from push triggers (doesn't exist on this fork).

Why

The inherited workflow was logging in with Docker Hub credentials that don't exist on this fork, so every Monday's auto-sync run (and every push to canary) was failing silently at the login step. The homelab playbook needs ghcr.io/jedmund/dokploy:canary to exist before it can roll out.

After-merge checklist

  • Run the workflow once via Actions → Dokploy Docker Build → Run workflow on canary to seed ghcr.io/jedmund/dokploy:canary.
  • Confirm the package shows up at https://github.com/jedmund?tab=packages.
  • Set visibility (private — homelab will authenticate to pull).

🤖 Generated with Claude Code

Merge request reports

Loading