pdns/docker-compose-traefik.yml aktualisiert
This commit is contained in:
@@ -24,32 +24,35 @@ services:
|
||||
- |
|
||||
set -eu
|
||||
mkdir -p /etc/powerdns/pdns.d
|
||||
mkdir -p /data
|
||||
|
||||
# Pfad finden
|
||||
# Sicherstellen, dass der /data Ordner existiert und beschreibbar ist
|
||||
mkdir -p /data
|
||||
chmod 777 /data
|
||||
|
||||
PDNS_BIN=$$(which pdns_server || echo "/usr/local/sbin/pdns_server")
|
||||
|
||||
# 1. SQLite Datenbank initialisieren falls sie fehlt
|
||||
if [ "$${PDNS_LAUNCH}" = "gsqlite3" ] && [ ! -f "$${PDNS_GSQLITE3_DATABASE}" ]; then
|
||||
echo "SQLite database not found. Creating and importing schema..."
|
||||
# Falls sqlite3 im Image ist, nutzen wir es zum Initialisieren
|
||||
# Das Schema liegt bei PDNS 4.9 oft hier:
|
||||
SCHEMA_PATH="/usr/local/share/doc/pdns/schema.sqlite3.sql"
|
||||
[ -f "$$SCHEMA_PATH" ] || SCHEMA_PATH="/usr/share/doc/pdns/schema.sqlite3.sql"
|
||||
|
||||
if [ -f "$$SCHEMA_PATH" ]; then
|
||||
sqlite3 "$${PDNS_GSQLITE3_DATABASE}" < "$$SCHEMA_PATH"
|
||||
# Rechte sicherstellen
|
||||
# Suche nach dem Schema-File
|
||||
for f in /usr/local/share/doc/pdns/schema.sqlite3.sql /usr/share/doc/pdns/schema.sqlite3.sql /etc/powerdns/schema.sqlite3.sql; do
|
||||
if [ -f "$$f" ]; then SCHEMA_PATH="$$f"; break; fi
|
||||
done
|
||||
|
||||
if [ -n "$${SCHEMA_PATH:-}" ]; then
|
||||
# Erstelle die Datei und setze sofort Rechte
|
||||
touch "$${PDNS_GSQLITE3_DATABASE}"
|
||||
chmod 666 "$${PDNS_GSQLITE3_DATABASE}"
|
||||
sqlite3 "$${PDNS_GSQLITE3_DATABASE}" < "$$SCHEMA_PATH"
|
||||
echo "Schema imported successfully."
|
||||
else
|
||||
echo "Warning: Schema file not found. Touching empty file (PDNS might still fail)."
|
||||
echo "Warning: No schema file found. Initializing empty file."
|
||||
touch "$${PDNS_GSQLITE3_DATABASE}"
|
||||
chmod 666 "$${PDNS_GSQLITE3_DATABASE}"
|
||||
fi
|
||||
fi
|
||||
|
||||
# 2. Konfiguration schreiben
|
||||
# Konfiguration schreiben
|
||||
cat > /etc/powerdns/pdns.d/99-env.conf <<EOF
|
||||
api=yes
|
||||
webserver=yes
|
||||
|
||||
Reference in New Issue
Block a user