diff --git a/backend/Dockerfile b/backend/Dockerfile index 6e67846..a0df0f0 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -13,9 +13,9 @@ WORKDIR /app ENV NODE_ENV=production COPY --from=builder /app/node_modules ./node_modules COPY --from=builder /app/dist ./dist +# Copy migration SQL files (needed for runtime migrations) +COPY --from=builder /app/src/db/migrations ./dist/db/migrations COPY package.json . -# Create data directory for runtime (will be mounted as volume) -RUN mkdir -p /app/data && chown node:node /app/data -USER node EXPOSE 3000 -CMD ["node", "dist/index.js"] +# Run migrations before starting the server +CMD ["sh", "-c", "mkdir -p /app/data && node dist/db/migrate.js && node dist/index.js"] diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index ba5a797..a01962d 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -4,7 +4,7 @@ services: env_file: - .env volumes: - - ./backend/data:/app/data + - ./data:/app/data ports: - "4000:3000" healthcheck: diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index bd069db..4d988a8 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -412,7 +412,9 @@ export default function App() {
No medications configured yet.
+ ) : coverage.low.length === 0 ? (All good, enough stock.
) : ( <>