build null
This commit is contained in:
19
.github/workflows/ci.yml
vendored
19
.github/workflows/ci.yml
vendored
@@ -111,23 +111,18 @@ jobs:
|
|||||||
# Pull latest image
|
# Pull latest image
|
||||||
docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest
|
docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest
|
||||||
|
|
||||||
# Update docker-compose to use new image
|
# Set environment variables for production deployment
|
||||||
sed -i 's|build:|#build:|g' docker-compose.yml
|
echo "APP_IMAGE=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> .env.docker
|
||||||
sed -i 's|context: .|#context: .|g' docker-compose.yml
|
|
||||||
sed -i 's|dockerfile: Dockerfile|#dockerfile: Dockerfile|g' docker-compose.yml
|
|
||||||
# Remove any existing image lines and add new one
|
|
||||||
sed -i '/quixotic-app:/,/container_name:/{/image:/d}' docker-compose.yml
|
|
||||||
sed -i '/quixotic-app:/a \ \ \ \ image: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest' docker-compose.yml
|
|
||||||
|
|
||||||
# Deploy with zero downtime
|
# Deploy with zero downtime using production override
|
||||||
docker-compose --env-file .env.docker pull
|
docker-compose -f docker-compose.yml -f docker-compose.prod.yml --env-file .env.docker pull
|
||||||
|
|
||||||
# Stop existing containers if they exist
|
# Stop existing containers if they exist
|
||||||
if docker-compose --env-file .env.docker ps -q | grep -q .; then
|
if docker-compose -f docker-compose.yml -f docker-compose.prod.yml --env-file .env.docker ps -q | grep -q .; then
|
||||||
docker-compose --env-file .env.docker down --remove-orphans
|
docker-compose -f docker-compose.yml -f docker-compose.prod.yml --env-file .env.docker down --remove-orphans
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker-compose --env-file .env.docker up -d
|
docker-compose -f docker-compose.yml -f docker-compose.prod.yml --env-file .env.docker up -d
|
||||||
|
|
||||||
# Cleanup old images
|
# Cleanup old images
|
||||||
docker image prune -f
|
docker image prune -f
|
||||||
4
docker-compose.prod.yml
Normal file
4
docker-compose.prod.yml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
services:
|
||||||
|
quixotic-app:
|
||||||
|
build: null
|
||||||
|
image: ${APP_IMAGE}
|
||||||
Reference in New Issue
Block a user