|
|
|
|
@@ -109,23 +109,33 @@ export LESSTIME_IMAGE_TAG="$TAG"
|
|
|
|
|
|
|
|
|
|
echo "==> Deploying lesstime:${TAG}..."
|
|
|
|
|
|
|
|
|
|
echo "==> Enabling maintenance mode..."
|
|
|
|
|
touch maintenance.on
|
|
|
|
|
|
|
|
|
|
echo "==> Pulling image..."
|
|
|
|
|
docker compose pull
|
|
|
|
|
sudo docker compose pull
|
|
|
|
|
|
|
|
|
|
echo "==> Starting container..."
|
|
|
|
|
docker compose up -d
|
|
|
|
|
sudo docker compose up -d
|
|
|
|
|
|
|
|
|
|
echo "==> Waiting for container to be ready..."
|
|
|
|
|
sleep 3
|
|
|
|
|
|
|
|
|
|
echo "==> Extracting maintenance page..."
|
|
|
|
|
mkdir -p public
|
|
|
|
|
sudo docker compose cp app:/var/www/html/public/maintenance.html public/maintenance.html
|
|
|
|
|
|
|
|
|
|
echo "==> Running migrations..."
|
|
|
|
|
docker compose exec -T -u www-data app php bin/console doctrine:migrations:migrate --no-interaction
|
|
|
|
|
sudo docker compose exec -T -u www-data app php bin/console doctrine:migrations:migrate --no-interaction
|
|
|
|
|
|
|
|
|
|
echo "==> Clearing cache..."
|
|
|
|
|
docker compose exec -T -u www-data app php bin/console cache:clear --env=prod
|
|
|
|
|
docker compose exec -T -u www-data app php bin/console cache:warmup --env=prod
|
|
|
|
|
sudo docker compose exec -T -u www-data app php bin/console cache:clear --env=prod
|
|
|
|
|
sudo docker compose exec -T -u www-data app php bin/console cache:warmup --env=prod
|
|
|
|
|
|
|
|
|
|
VERSION=$(docker compose exec -T app cat config/version.yaml | grep 'app.version' | awk -F"'" '{print $2}')
|
|
|
|
|
echo "==> Disabling maintenance mode..."
|
|
|
|
|
rm -f maintenance.on
|
|
|
|
|
|
|
|
|
|
VERSION=$(sudo docker compose exec -T app cat config/version.yaml | grep 'app.version' | awk -F"'" '{print $2}')
|
|
|
|
|
echo "==> Deployed v${VERSION}"
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
@@ -192,16 +202,33 @@ Creer `/etc/nginx/sites-available/lesstime.conf` :
|
|
|
|
|
```nginx
|
|
|
|
|
server {
|
|
|
|
|
listen 80;
|
|
|
|
|
listen [::]:80;
|
|
|
|
|
server_name project.malio-dev.fr;
|
|
|
|
|
|
|
|
|
|
client_max_body_size 55m;
|
|
|
|
|
root /var/www/lesstime/public;
|
|
|
|
|
|
|
|
|
|
# Maintenance mode
|
|
|
|
|
if (-f /var/www/lesstime/maintenance.on) {
|
|
|
|
|
return 503;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
error_page 503 @maintenance;
|
|
|
|
|
|
|
|
|
|
location @maintenance {
|
|
|
|
|
rewrite ^(.*)$ /maintenance.html break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
location = /maintenance.html {
|
|
|
|
|
internal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
location / {
|
|
|
|
|
proxy_pass http://127.0.0.1:8080;
|
|
|
|
|
proxy_pass http://127.0.0.1:8081;
|
|
|
|
|
proxy_set_header Host $host;
|
|
|
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
|
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
|
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
|
client_max_body_size 55m;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
@@ -250,6 +277,8 @@ rm /tmp/lesstime.sql
|
|
|
|
|
├── config/jwt/
|
|
|
|
|
│ ├── private.pem
|
|
|
|
|
│ └── public.pem
|
|
|
|
|
├── public/
|
|
|
|
|
│ └── maintenance.html # extrait automatiquement par deploy.sh
|
|
|
|
|
└── uploads/
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|