Fix cd command errors and ensure Caddy binds to all interfaces for healthchecks
This commit is contained in:
parent
042c156960
commit
31def9585a
36
start.sh
36
start.sh
@ -478,6 +478,9 @@ cat > /app/data/caddy/Caddyfile <<EOT
|
||||
}
|
||||
|
||||
:$CADDY_PORT {
|
||||
# Ensure we listen on all interfaces
|
||||
bind 0.0.0.0
|
||||
|
||||
log {
|
||||
output file /app/data/caddy/access.log {
|
||||
roll_size 10MB
|
||||
@ -761,7 +764,6 @@ chown -R cloudron:cloudron /app/data/go
|
||||
echo "==> Checking database migration state"
|
||||
if [ -d "$SERVER_DIR/cmd/museum" ]; then
|
||||
echo "==> Attempting to fix dirty migration state"
|
||||
cd "$SERVER_DIR"
|
||||
|
||||
# Create migrations log directory
|
||||
mkdir -p /app/data/logs/migrations
|
||||
@ -773,17 +775,19 @@ if [ -d "$SERVER_DIR/cmd/museum" ]; then
|
||||
export GOFLAGS="-modfile=/app/data/go/go.mod -mod=mod"
|
||||
|
||||
echo "==> Forcing migration version to 25"
|
||||
if /usr/local/bin/gosu cloudron:cloudron env \
|
||||
GOCACHE="$GOCACHE" \
|
||||
GOMODCACHE="$GOMODCACHE" \
|
||||
GO111MODULE=on \
|
||||
GOFLAGS="$GOFLAGS" \
|
||||
cd "$SERVER_DIR" && go run cmd/museum/main.go db force 25 > /app/data/logs/migrations/force.log 2>&1; then
|
||||
# Execute as the cloudron user but use a proper script instead of env cd
|
||||
cat > /tmp/run_migration.sh <<EOF
|
||||
#!/bin/bash
|
||||
cd "$SERVER_DIR" && go run cmd/museum/main.go db force 25
|
||||
EOF
|
||||
chmod +x /tmp/run_migration.sh
|
||||
|
||||
if /usr/local/bin/gosu cloudron:cloudron bash /tmp/run_migration.sh > /app/data/logs/migrations/force.log 2>&1; then
|
||||
echo "==> Successfully forced migration version"
|
||||
else
|
||||
echo "==> WARNING: Could not force migration version"
|
||||
echo "==> Migration force log:"
|
||||
cat /app/data/logs/migrations/force.log
|
||||
cat /app/data/logs/migrations/force.log || echo "==> No migration log was created"
|
||||
fi
|
||||
else
|
||||
echo "==> Skipping migration state check: cmd/museum not found"
|
||||
@ -823,12 +827,26 @@ if [ -n "$MUSEUM_BIN" ]; then
|
||||
SERVER_PID=$!
|
||||
elif [ -d "$SERVER_DIR/cmd/museum" ]; then
|
||||
echo "==> Starting Museum from source"
|
||||
# Create a startup script
|
||||
cat > /tmp/run_server.sh <<EOF
|
||||
#!/bin/bash
|
||||
cd "$SERVER_DIR" && go run cmd/museum/main.go serve
|
||||
EOF
|
||||
chmod +x /tmp/run_server.sh
|
||||
|
||||
/usr/local/bin/gosu cloudron:cloudron env \
|
||||
GOCACHE="$GOCACHE" \
|
||||
GOMODCACHE="$GOMODCACHE" \
|
||||
GO111MODULE=on \
|
||||
GOFLAGS="$GOFLAGS" \
|
||||
cd "$SERVER_DIR" && go run cmd/museum/main.go serve > /app/data/logs/museum.log 2>&1 &
|
||||
MUSEUM_CONFIG="$MUSEUM_CONFIG" \
|
||||
MUSEUM_DB_HOST="$MUSEUM_DB_HOST" \
|
||||
MUSEUM_DB_PORT="$MUSEUM_DB_PORT" \
|
||||
MUSEUM_DB_USER="$MUSEUM_DB_USER" \
|
||||
MUSEUM_DB_PASSWORD="$MUSEUM_DB_PASSWORD" \
|
||||
MUSEUM_DB_NAME="$MUSEUM_DB_NAME" \
|
||||
ENTE_LOG_LEVEL=debug \
|
||||
bash /tmp/run_server.sh > /app/data/logs/museum.log 2>&1 &
|
||||
SERVER_PID=$!
|
||||
else
|
||||
echo "==> ERROR: Museum server not found"
|
||||
|
Loading…
x
Reference in New Issue
Block a user