Overview
Dokploy can deploy pre-built Docker images directly from container registries, bypassing the build process. This is ideal for:- Pre-built Images - Deploy official images from Docker Hub
- CI/CD Integration - Deploy images built in external pipelines
- Multi-Architecture - Use registry-built multi-arch images
- Private Images - Deploy proprietary images from private registries
Docker Source Type
Configure an application to use Docker images as the source:Public Docker Images
Deploy publicly available images without authentication.Docker Hub
Deploy images from Docker Hub:GitHub Container Registry
Deploy public images from GHCR:Other Public Registries
- Quay.io
- Google Container Registry
- AWS ECR Public
Private Docker Images
Deploy images from private registries with authentication.Docker Hub Private
Authenticate with Docker Hub:1
Create Access Token
- Log in to Docker Hub
- Go to Account Settings > Security
- Click New Access Token
- Set description and permissions:
- Read - Pull images only
- Read, Write - Pull and push images
- Copy the token (shown only once)
2
Configure Application
GitHub Container Registry Private
Authenticate with GitHub:1
Create GitHub Token
- Go to GitHub Settings > Developer settings
- Click Personal access tokens > Tokens (classic)
- Generate new token with scopes:
- Copy the token
2
Configure Authentication
AWS Elastic Container Registry
Authenticate with AWS ECR:1
Generate ECR Token
2
Configure Application
Azure Container Registry
Authenticate with Azure ACR:1
Enable Admin Access
2
Get Credentials
Self-Hosted Registry
Authenticate with private registries:Registry Integration
Use configured registry credentials for better management.Create Registry Configuration
First, add a registry in Dokploy:See Container Registry for detailed registry configuration.
Deploy with Registry
Dokploy automatically uses configured registries for authentication:Image Tags and Updates
Tag Strategies
Semantic Versioning
Semantic Versioning
Latest Tag
Latest Tag
Git Commit SHA
Git Commit SHA
Updating Images
Redeploy to pull the latest image:- Pull the latest version of the image
- Stop the current container
- Start a new container with the updated image
Multi-Architecture Images
Deploy images that support multiple CPU architectures:- amd64 - x86_64 Intel/AMD processors
- arm64 - ARM 64-bit (Apple Silicon, AWS Graviton)
- arm/v7 - ARM 32-bit (Raspberry Pi)
- arm/v6 - Older ARM devices
CI/CD Integration
Integrate Dokploy with external CI/CD pipelines.GitHub Actions
GitLab CI
Bitbucket Pipelines
Image Verification
Verify images before deployment.Image Scanning
Scan images for vulnerabilities:Image Signing
Verify image authenticity:Configuration Examples
Production Application
Staging with Latest
Third-Party Service
Best Practices
Image Management
Pin Versions
Always use specific tags in production:
Small Images
Use minimal base images:
Regular Updates
Keep base images updated:
Clean Tags
Remove unused image tags:
Security
- Scan Images - Use vulnerability scanning before deployment
- Private Registries - Store proprietary images in private registries
- Access Tokens - Use tokens instead of passwords
- Rotate Credentials - Change registry passwords regularly
- Least Privilege - Grant minimal registry permissions
Performance
- Registry Location - Use registries geographically close to servers
- Image Layers - Optimize Dockerfile layers for caching
- Compress Images - Use tools like
docker-slimto reduce size - Parallel Pulls - Enable parallel layer downloads
Troubleshooting
Image Pull Failed - Authentication Required
Image Pull Failed - Authentication Required
Symptoms:Solutions:
- Verify credentials are correct:
- Check username and password in application config
- Ensure registry URL matches:
- Verify user has access to the repository
Image Not Found
Image Not Found
Symptoms:Solutions:
- Verify image name and tag are correct
- Check image exists in registry:
- Ensure tag was pushed:
- Try alternative tag (e.g.,
latest)
Wrong Architecture Pulled
Wrong Architecture Pulled
Symptoms: Container fails with “exec format error”Solutions:
- Verify server architecture:
- Check image supports your architecture:
- Build for correct architecture:
- Use multi-arch images when possible
Rate Limit Exceeded
Rate Limit Exceeded
Symptoms:Solutions:
- Authenticate with Docker Hub (increases rate limit)
- Upgrade to Docker Hub Pro plan
- Use alternative registries (GHCR, Quay.io)
- Cache images locally:
API Reference
Save Docker Provider
Update Docker Image
Next Steps
Registry Configuration
Configure container registries
Environment Variables
Configure application settings
Build Configuration
Build custom images
Monitoring
Monitor deployments