Roasted Bean Deploy commited on
Commit Β·
ac212a2
1
Parent(s): ff7d7e4
π§ Better error handling, startup logging, improved Dockerfile
Browse files- Dockerfile +5 -3
- server.js +10 -4
Dockerfile
CHANGED
|
@@ -3,13 +3,15 @@ FROM node:20-slim
|
|
| 3 |
WORKDIR /app
|
| 4 |
|
| 5 |
# Install dependencies
|
| 6 |
-
COPY package.json package-lock.json
|
| 7 |
-
RUN npm install --production
|
| 8 |
|
| 9 |
# Copy source
|
| 10 |
COPY . .
|
| 11 |
|
| 12 |
-
# HF Spaces
|
|
|
|
|
|
|
| 13 |
EXPOSE 7860
|
| 14 |
|
| 15 |
CMD ["node", "server.js"]
|
|
|
|
| 3 |
WORKDIR /app
|
| 4 |
|
| 5 |
# Install dependencies
|
| 6 |
+
COPY package.json package-lock.json ./
|
| 7 |
+
RUN npm ci --only=production 2>&1 || npm install --production
|
| 8 |
|
| 9 |
# Copy source
|
| 10 |
COPY . .
|
| 11 |
|
| 12 |
+
# HF Spaces sets PORT env var
|
| 13 |
+
ENV PORT=7860
|
| 14 |
+
|
| 15 |
EXPOSE 7860
|
| 16 |
|
| 17 |
CMD ["node", "server.js"]
|
server.js
CHANGED
|
@@ -31,10 +31,16 @@ app.use(session({
|
|
| 31 |
|
| 32 |
// ββ Helpers βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 33 |
// Seed menu data if not present in persistent storage
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
fs.
|
| 37 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
}
|
| 39 |
|
| 40 |
function readMenu() {
|
|
|
|
| 31 |
|
| 32 |
// ββ Helpers βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 33 |
// Seed menu data if not present in persistent storage
|
| 34 |
+
try {
|
| 35 |
+
const SEED_FILE = path.join(__dirname, 'data', 'menu.json');
|
| 36 |
+
if (!fs.existsSync(DATA_FILE) && fs.existsSync(SEED_FILE)) {
|
| 37 |
+
fs.copyFileSync(SEED_FILE, DATA_FILE);
|
| 38 |
+
console.log('π Seeded menu data to persistent storage');
|
| 39 |
+
}
|
| 40 |
+
console.log(`π Data dir: ${DATA_DIR}`);
|
| 41 |
+
console.log(`π Data file exists: ${fs.existsSync(DATA_FILE)}`);
|
| 42 |
+
} catch (err) {
|
| 43 |
+
console.error('Seed error:', err.message);
|
| 44 |
}
|
| 45 |
|
| 46 |
function readMenu() {
|