2.2 KiB
2.2 KiB
Docker Registry Configuration Guide
Setting up Docker Registry Secrets in Drone
To use a private Docker registry, you need to configure secrets in Drone. Here's how:
1. Create Secrets in Drone UI
Go to https://drone.aipice.local → Your Repository → Settings → Secrets
Create these secrets:
# For Docker Hub:
docker_username = your-dockerhub-username
docker_password = your-dockerhub-password
docker_registry = docker.io
# For GitHub Container Registry:
docker_username = your-github-username
docker_password = your-github-token
docker_registry = ghcr.io
# For Harbor/Private Registry:
docker_username = your-harbor-username
docker_password = your-harbor-password
docker_registry = harbor.example.com
2. Alternative: CLI Method
# Install drone CLI first
curl -L https://github.com/harness/drone-cli/releases/latest/download/drone_linux_amd64.tar.gz | tar zx
sudo install -t /usr/local/bin drone
# Set server and token
export DRONE_SERVER=https://drone.aipice.local
export DRONE_TOKEN=your-drone-token
# Create secrets
drone secret add --repository AIPICE/auth-service --name docker_username --data "your-username"
drone secret add --repository AIPICE/auth-service --name docker_password --data "your-password"
drone secret add --repository AIPICE/auth-service --name docker_registry --data "docker.io"
3. Update version.conf for Different Registries
# For Docker Hub:
DOCKER_REPO=yourusername/auth-service
# For GitHub Container Registry:
DOCKER_REPO=ghcr.io/yourusername/auth-service
# For Harbor:
DOCKER_REPO=harbor.example.com/project/auth-service
# For Local Registry:
DOCKER_REPO=registry.aipice.local/auth-service
4. Generated Docker Tags
With BASE_VERSION=1.0 in version.conf, your images will be tagged as:
yourusername/auth-service:1.0.123(where 123 is the build number)ghcr.io/yourusername/auth-service:1.0.456- etc.
5. Troubleshooting
If push fails:
- Check secrets are properly set in Drone UI
- Verify registry URL format
- Ensure credentials have push permissions
- Check registry accepts the image format
6. Test Authentication
You can test manually:
kubectl exec buildah-pod -- buildah login -u username -p password registry.example.com