From f13148d53e77fdcea97eb03be7b5f5f3537c1922 Mon Sep 17 00:00:00 2001 From: continuist Date: Fri, 15 Aug 2025 19:12:04 -0400 Subject: [PATCH] Improve docker registry + Caddy installation security --- CI_CD_PIPELINE_SETUP_GUIDE.md | 110 +++++++++++++++++++-------- registry/Caddyfile | 4 +- registry/docker-compose.registry.yml | 2 + registry/docker-registry.service | 12 ++- 4 files changed, 92 insertions(+), 36 deletions(-) diff --git a/CI_CD_PIPELINE_SETUP_GUIDE.md b/CI_CD_PIPELINE_SETUP_GUIDE.md index 47fab67..0e8f540 100644 --- a/CI_CD_PIPELINE_SETUP_GUIDE.md +++ b/CI_CD_PIPELINE_SETUP_GUIDE.md @@ -686,14 +686,25 @@ sudo sed -i "s/YOUR_CI_CD_IP/YOUR_ACTUAL_IP_ADDRESS/g" /opt/APP_NAME/registry/Ca sudo sed -i "s/YOUR_CI_CD_IP/YOUR_ACTUAL_IP_ADDRESS/g" /opt/APP_NAME/registry/openssl.conf sudo sed -i "s/YOUR_REGISTRY_NAME/APP_NAME-Registry/g" /opt/APP_NAME/registry/openssl.conf -# Create environment file for registry authentication +# Create FHS-compliant environment directory +sudo mkdir -p /etc/registry/env +sudo chown CI_SERVICE_USER:CI_SERVICE_USER /etc/registry/env +sudo chmod 755 /etc/registry/env + +# Create secure environment file for registry authentication # First, create a secure password hash # Save this password somewhere safe REGISTRY_PASSWORD="your-secure-registry-password" REGISTRY_PASSWORD_HASH=$(htpasswd -nbB registry-user "$REGISTRY_PASSWORD" | cut -d: -f2) -# Update Caddyfile with the actual password hash -sudo sed -i "s/DOCKER_REGISTRY_PASSWORD/$REGISTRY_PASSWORD_HASH/g" /opt/APP_NAME/registry/Caddyfile +# Create the .env file in FHS-compliant location +sudo tee /etc/registry/env/.env > /dev/null <