Deploy

Private registry

Projects with OCI image source can use public or private images. Private images require credentials so the platform can pull the artifact during project creation or update.

Authentication options

The current documentation covers two models:

ModelWhen to use
AWS ECRWhen the image is in an ECR registry
User and token/passwordWhen the registry accepts basic authentication or access tokens

The authentication type is defined during project creation and is not available for editing later.

Create a project with a private image

In the console:

  1. choose OCI Image as source
  2. enter the full image URL
  3. mark the image as private
  4. choose the authentication type
  5. enter the requested credentials
  6. configure port, variables, plan, and instances
  7. create the project and follow the logs

If image download fails, review registry, tag, permissions, and credentials.

Best practices

  • use a token with minimum pull scope
  • avoid personal credentials when a service credential exists
  • use immutable tags in production
  • rotate tokens when someone leaves the team
  • keep the same authentication strategy for future project updates

Troubleshooting

SymptomWhat to review
Failed to pull imageURL, tag, registry, and credentials
Image not foundnamespace, repository name, and tag
Access deniedtoken scope and pull permission
App starts and crashesport, image default command, and variables

Next steps

FAQ

Can I switch a private image to public?

This change is not guaranteed after creation. Plan the source and authentication type before creating the project.

Can I use AWS ECR?

Yes. Private images can use AWS ECR authentication when ECR is the source registry.

Does the token go in code?

No. Registry credentials must be entered in the console and never versioned in the repository.