ci: .env aanmaken vanuit .env.example bij de deploy
All checks were successful
Deploy server-up (dev) / deploy (push) Successful in 39s
All checks were successful
Deploy server-up (dev) / deploy (push) Successful in 39s
BIND bleef niet staan. Oorzaak: docker-compose.yml staat in Git, dus rsync zet
dat bestand bij elke deploy terug; een wijziging daarin op de server houdt het
nooit. De juiste plek is .env ernaast, maar dat bestand bevatte na een deploy
alleen een kale SU_TAG-regel en was daarmee niet vindbaar.
- Bestaat er nog geen .env, dan zet de deploy hem op vanuit .env.example, met
alle instellingen erin en uitleg per sleutel. Een bestaande .env blijft
ongemoeid (rsync slaat hem al over sinds 6d5453e).
- De deploy logt nu welke instellingen actief zijn, zodat je in de run-log ziet
wat er staat.
- Waarschuwing in docker-compose.yml zelf dat je BIND daar niet moet aanpassen
maar in .env. Dat bestand wordt toch elke deploy teruggezet, dus de tip staat
er altijd.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C7oLCRYzY5ixJ5Sv8Y8EFb
This commit is contained in:
parent
4346fefe4d
commit
923c8dabee
3 changed files with 24 additions and 1 deletions
|
|
@ -79,9 +79,18 @@ jobs:
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
# SU_TAG vastleggen zodat compose en de "Nu bijwerken"-knop in de app
|
# SU_TAG vastleggen zodat compose en de "Nu bijwerken"-knop in de app
|
||||||
# naar hetzelfde image wijzen (zie docs/updates.md).
|
# naar hetzelfde image wijzen (zie docs/updates.md).
|
||||||
|
#
|
||||||
|
# Bestaat er nog geen .env, dan zetten we hem op vanuit .env.example,
|
||||||
|
# zodat BIND, PORT en SU_IMAGE zichtbaar en instelbaar zijn. Een
|
||||||
|
# bestaande .env blijft ongemoeid; rsync slaat hem over.
|
||||||
|
if [ ! -f .env ] && [ -f .env.example ]; then
|
||||||
|
cp .env.example .env
|
||||||
|
echo "Nieuwe .env aangemaakt vanuit .env.example"
|
||||||
|
fi
|
||||||
touch .env
|
touch .env
|
||||||
sed -i '/^SU_TAG=/d' .env
|
sed -i '/^SU_TAG=/d' .env
|
||||||
echo "SU_TAG=${VERSION}" >> .env
|
echo "SU_TAG=${VERSION}" >> .env
|
||||||
|
echo "Actieve instellingen:"; grep -vE '^\s*(#|$)' .env | sed 's/^/ /'
|
||||||
|
|
||||||
# Draait deze server vanaf de registry (SU_IMAGE in .env), dan bouwen
|
# Draait deze server vanaf de registry (SU_IMAGE in .env), dan bouwen
|
||||||
# we hier én pushen we het resultaat, zodat de in-app updateknop het
|
# we hier én pushen we het resultaat, zodat de in-app updateknop het
|
||||||
|
|
|
||||||
|
|
@ -79,9 +79,19 @@ jobs:
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
# De dev-server bouwt altijd zelf vanaf de dev-branch. SU_TAG vastleggen
|
# De dev-server bouwt altijd zelf vanaf de dev-branch. SU_TAG vastleggen
|
||||||
# zodat compose exact het zojuist gebouwde image start.
|
# zodat compose exact het zojuist gebouwde image start.
|
||||||
|
#
|
||||||
|
# Bestaat er nog geen .env, dan zetten we hem op vanuit .env.example.
|
||||||
|
# Zo staat er een leesbaar bestand met alle instellingen erin (BIND,
|
||||||
|
# PORT, SU_IMAGE) in plaats van alleen een kale SU_TAG-regel. Een
|
||||||
|
# bestaande .env blijft ongemoeid; rsync slaat hem over.
|
||||||
|
if [ ! -f .env ] && [ -f .env.example ]; then
|
||||||
|
cp .env.example .env
|
||||||
|
echo "Nieuwe .env aangemaakt vanuit .env.example"
|
||||||
|
fi
|
||||||
touch .env
|
touch .env
|
||||||
sed -i '/^SU_TAG=/d' .env
|
sed -i '/^SU_TAG=/d' .env
|
||||||
echo "SU_TAG=${VERSION}" >> .env
|
echo "SU_TAG=${VERSION}" >> .env
|
||||||
|
echo "Actieve instellingen:"; grep -vE '^\s*(#|$)' .env | sed 's/^/ /'
|
||||||
docker compose build --pull
|
docker compose build --pull
|
||||||
docker tag "server-up:${VERSION}" "server-up:${CHANNEL}" || true
|
docker tag "server-up:${VERSION}" "server-up:${CHANNEL}" || true
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,11 @@ services:
|
||||||
ports:
|
ports:
|
||||||
# Standaard alleen bereikbaar vanaf de host zelf. Server Up beheert de
|
# Standaard alleen bereikbaar vanaf de host zelf. Server Up beheert de
|
||||||
# Docker-daemon, dus zet dit pas open als er een reverse proxy met TLS
|
# Docker-daemon, dus zet dit pas open als er een reverse proxy met TLS
|
||||||
# voor staat: BIND=0.0.0.0 in .env (en stel in de UI de trusted proxy in).
|
# voor staat.
|
||||||
|
#
|
||||||
|
# ⚠ Pas dit hier NIET aan. Dit bestand staat in Git en wordt bij elke
|
||||||
|
# deploy overschreven. Zet BIND=0.0.0.0 in .env ernaast — dat bestand
|
||||||
|
# blijft wél staan. Zie .env.example.
|
||||||
- "${BIND:-127.0.0.1}:${PORT:-5000}:5000"
|
- "${BIND:-127.0.0.1}:${PORT:-5000}:5000"
|
||||||
environment:
|
environment:
|
||||||
- PORT=5000
|
- PORT=5000
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue