diff --git a/docker-compose-pgsql.yml b/docker-compose-pgsql.yml index 579bb70a44..806e29acc0 100644 --- a/docker-compose-pgsql.yml +++ b/docker-compose-pgsql.yml @@ -30,6 +30,8 @@ services: # command: ["redis-server", "--save", "60", "1", "--loglevel", "warning"] # uncomment if you want to use snapshotting instead of AOF volumes: - redis-data:/data + profiles: + - redis volumes: postgres-data: diff --git a/docker-compose.yml b/docker-compose.yml index d9b793b8c8..21f16cb7f1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -33,6 +33,20 @@ services: # command: ['redis-server', '--save', '60', '1', '--loglevel', 'warning'] # uncomment if you want to use snapshotting instead of AOF volumes: - redis-data:/data + profiles: + - redis + + postgres: + image: postgres:16.1-alpine + restart: unless-stopped + environment: + POSTGRES_USER: nodebb + POSTGRES_PASSWORD: nodebb + POSTGRES_DB: nodebb + volumes: + - postgres-data:/var/lib/postgresql/data + profiles: + - postgres volumes: mongo-data: @@ -49,6 +63,13 @@ volumes: type: none device: ./.docker/database/redis + postgres-data: + driver: local + driver_opts: + o: bind + type: none + device: ./.docker/database/postgresql/data + nodebb-build: driver: local driver_opts: diff --git a/install/docker/entrypoint.sh b/install/docker/entrypoint.sh index fd0359192c..2913ae7c8f 100755 --- a/install/docker/entrypoint.sh +++ b/install/docker/entrypoint.sh @@ -7,7 +7,7 @@ set_defaults() { export CONFIG_DIR="${CONFIG_DIR:-/opt/config}" export CONFIG="$CONFIG_DIR/config.json" export NODEBB_INIT_VERB="${NODEBB_INIT_VERB:-install}" - export START_BUILD="${START_BUILD:-false}" + export START_BUILD="${START_BUILD:-${FORCE_BUILD_BEFORE_START:-false}}" export SETUP="${SETUP:-}" export PACKAGE_MANAGER="${PACKAGE_MANAGER:-npm}" export OVERRIDE_UPDATE_LOCK="${OVERRIDE_UPDATE_LOCK:-false}" @@ -24,8 +24,13 @@ check_directory() { } fi if [ ! -w "$dir" ]; then - echo "Error: No write permission for directory $dir" - exit 1 + echo "Warning: No write permission for directory $dir, attempting to fix..." + chown -R $USER:$USER "$dir" || true # attempt to change ownership, do not exit on failure + chmod -R 760 "$dir" || true # attempt to change permissions, do not exit on failure + if [ ! -w "$dir" ]; then + echo "Error: No write permission for directory $dir. Exiting..." + exit 1 + fi fi }