Spaces:
Sleeping
Sleeping
| # Use an official NocoDB image | |
| # You can pin to a specific version for stability if needed, e.g., nocodb/nocodb:0.204.4 | |
| FROM nocodb/nocodb:latest | |
| # NocoDB listens on port 8080 by default within the container. | |
| ENV PORT=8080 | |
| ENV NODE_ENV=production | |
| # --- Prepare SQLite data directory and configure SQLite specifically --- | |
| USER root | |
| # Create the directory for the SQLite database file | |
| RUN mkdir -p /usr/app/data && \ | |
| chown -R node:node /usr/app/data | |
| # Explicitly tell NocoDB to use SQLite and where to store the database file. | |
| ENV NC_DB_TYPE="sqlite3" | |
| ENV NC_SQLITE_FILENAME="/usr/app/data/noco.db" | |
| # The base nocodb/nocodb image will switch back to USER node. | |
| # USER node | |
| # --- IMPORTANT FOR PRODUCTION/PERSISTENCE --- | |
| # 1. For any serious use, DO NOT rely on SQLite within the container. | |
| # Data will be lost if the Space restarts or is rebuilt. | |
| # Configure an EXTERNAL database (PostgreSQL, MySQL, etc.) by setting | |
| # the appropriate NC_DB or DATABASE_URL as a SECRET in your Hugging Face Space settings. | |
| # Example for PostgreSQL: | |
| # NC_DB="pg://USER:PASSWORD@HOST:PORT/DATABASE_NAME" | |
| # (If using NC_DB for an external database, you would REMOVE NC_DB_TYPE and NC_SQLITE_FILENAME) | |
| # 2. Set NC_AUTH_JWT_SECRET as a SECRET in your Hugging Face Space settings. | |
| # This is crucial for securing authentication tokens. | |
| # Generate a strong random string for this value. | |
| # Example: | |
| # NC_AUTH_JWT_SECRET="your_very_strong_random_jwt_secret_here" | |
| # --- | |
| # Expose the port NocoDB listens on. | |
| # This port will be mapped by Hugging Face Spaces based on your README.md app_port. | |
| EXPOSE 8080 | |
| # The default command for the nocodb/nocodb image is already set up to start NocoDB. |