# Pushing & Pulling Container Images `wf2wf` can push OCI images it builds via `--auto-env build` to a registry. ## Common registries | Registry | Push URL | Auth method | |----------|----------|-------------| | GitHub Container Registry (GHCR) | `ghcr.io//` | `echo $CR_PAT | docker login ghcr.io -u USERNAME --password-stdin` | | Docker Hub | `docker.io//` | `docker login` | | Amazon ECR | `.dkr.ecr..amazonaws.com/` | `aws ecr get-login-password | docker login --username AWS --password-stdin …` | | Google Artifact Registry | `us-central1-docker.pkg.dev///` | `gcloud auth configure-docker` | ## CLI flags ```bash wf2wf convert … --auto-env build --push-registry ghcr.io/myorg ``` If `--push-registry` is omitted, images stay in the local daemon. ### Private registries Set username/password via standard Docker config or use: ```bash docker login export WF2WF_REGISTRIES= ``` `wf2wf` will probe all registries listed in the env var for existing images before building anew. ### Troubleshooting pushes * 403 Forbidden – token lacks `write:packages` (GHCR) → regenerate PAT. * connection timeout – corporate firewall → use proxy or mirror registry. * manifest invalid – disable experimental features if using rootless Docker.