Spaces:
Sleeping
Sleeping
Update run.sh
Browse files
run.sh
CHANGED
|
@@ -1,51 +1,49 @@
|
|
| 1 |
#!/bin/bash
|
| 2 |
set -e
|
| 3 |
|
| 4 |
-
# --- Cấu hình Biến Môi trường ---
|
| 5 |
export DB_DIALECT="postgres"
|
| 6 |
-
export APP_KEY="your-secret-key-changeme"
|
| 7 |
export DB_HOST="localhost"
|
| 8 |
export DB_PORT="5432"
|
| 9 |
-
export DB_DATABASE="nocobase_db"
|
| 10 |
-
export DB_USER="nocobase_user"
|
| 11 |
-
export DB_PASSWORD="nocobase_password"
|
| 12 |
export TZ="UTC"
|
| 13 |
export APP_PORT="4444"
|
| 14 |
-
# Thêm tùy chọn này để hỗ trợ các thư viện cũ hơn
|
| 15 |
export NODE_OPTIONS=--openssl-legacy-provider
|
| 16 |
|
| 17 |
-
|
| 18 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
service postgresql start
|
| 20 |
-
echo "Waiting for PostgreSQL to be ready..."
|
| 21 |
until su - postgres -c "pg_isready"; do sleep 1; done
|
| 22 |
|
| 23 |
-
# --- 2. Kiểm tra DB ---
|
| 24 |
if ! su - postgres -c "psql -lqt" | cut -d \| -f 1 | grep -qw "$DB_DATABASE"; then
|
| 25 |
-
echo "
|
|
|
|
| 26 |
su - postgres -c "psql -c \"CREATE USER $DB_USER WITH PASSWORD '$DB_PASSWORD';\"" || true
|
| 27 |
su - postgres -c "psql -c \"CREATE DATABASE $DB_DATABASE OWNER $DB_USER;\"" || true
|
|
|
|
| 28 |
cd /app/my-nocobase
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
|
|
|
| 33 |
fi
|
| 34 |
|
| 35 |
-
# --- 3. Chuẩn bị và Chạy NocoBase ---
|
| 36 |
cd /app/my-nocobase
|
| 37 |
-
|
| 38 |
-
echo "Creating .env file for runtime..."
|
| 39 |
cat <<EOF > .env
|
| 40 |
DB_DIALECT=$DB_DIALECT
|
| 41 |
-
APP_KEY=$APP_KEY
|
| 42 |
DB_HOST=$DB_HOST
|
| 43 |
DB_PORT=$DB_PORT
|
| 44 |
DB_DATABASE=$DB_DATABASE
|
| 45 |
DB_USER=$DB_USER
|
| 46 |
DB_PASSWORD=$DB_PASSWORD
|
|
|
|
| 47 |
TZ=$TZ
|
| 48 |
APP_PORT=$APP_PORT
|
| 49 |
EOF
|
| 50 |
|
| 51 |
-
|
|
|
|
|
|
| 1 |
#!/bin/bash
|
| 2 |
set -e
|
| 3 |
|
|
|
|
| 4 |
export DB_DIALECT="postgres"
|
|
|
|
| 5 |
export DB_HOST="localhost"
|
| 6 |
export DB_PORT="5432"
|
|
|
|
|
|
|
|
|
|
| 7 |
export TZ="UTC"
|
| 8 |
export APP_PORT="4444"
|
|
|
|
| 9 |
export NODE_OPTIONS=--openssl-legacy-provider
|
| 10 |
|
| 11 |
+
export APP_KEY="${APP_KEY:-PLEASE_SET_SECRET_APP_KEY}"
|
| 12 |
+
export DB_DATABASE="${DB_DATABASE:-nocobase_db}"
|
| 13 |
+
export DB_USER="${DB_USER:-nocobase_user}"
|
| 14 |
+
export DB_PASSWORD="${DB_PASSWORD:-nocobase_password}"
|
| 15 |
+
|
| 16 |
+
echo "--- INITIALIZING ---"
|
| 17 |
+
|
| 18 |
service postgresql start
|
|
|
|
| 19 |
until su - postgres -c "pg_isready"; do sleep 1; done
|
| 20 |
|
|
|
|
| 21 |
if ! su - postgres -c "psql -lqt" | cut -d \| -f 1 | grep -qw "$DB_DATABASE"; then
|
| 22 |
+
echo "Database '$DB_DATABASE' not found. Creating..."
|
| 23 |
+
|
| 24 |
su - postgres -c "psql -c \"CREATE USER $DB_USER WITH PASSWORD '$DB_PASSWORD';\"" || true
|
| 25 |
su - postgres -c "psql -c \"CREATE DATABASE $DB_DATABASE OWNER $DB_USER;\"" || true
|
| 26 |
+
|
| 27 |
cd /app/my-nocobase
|
| 28 |
+
DB_DIALECT=$DB_DIALECT DB_HOST=$DB_HOST DB_PORT=$DB_PORT \
|
| 29 |
+
DB_DATABASE=$DB_DATABASE DB_USER=$DB_USER DB_PASSWORD=$DB_PASSWORD \
|
| 30 |
+
TZ=$TZ APP_KEY=$APP_KEY yarn nocobase install --lang=en-US
|
| 31 |
+
else
|
| 32 |
+
echo "Database '$DB_DATABASE' exists. Skipping init."
|
| 33 |
fi
|
| 34 |
|
|
|
|
| 35 |
cd /app/my-nocobase
|
|
|
|
|
|
|
| 36 |
cat <<EOF > .env
|
| 37 |
DB_DIALECT=$DB_DIALECT
|
|
|
|
| 38 |
DB_HOST=$DB_HOST
|
| 39 |
DB_PORT=$DB_PORT
|
| 40 |
DB_DATABASE=$DB_DATABASE
|
| 41 |
DB_USER=$DB_USER
|
| 42 |
DB_PASSWORD=$DB_PASSWORD
|
| 43 |
+
APP_KEY=$APP_KEY
|
| 44 |
TZ=$TZ
|
| 45 |
APP_PORT=$APP_PORT
|
| 46 |
EOF
|
| 47 |
|
| 48 |
+
echo "--- STARTING NOCOBASE ON PORT $APP_PORT ---"
|
| 49 |
+
exec yarn dev --port $APP_PORT --host 0.0.0.0
|