diff --git a/Dockerfile b/Dockerfile index fe4792d..371938e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,12 +4,12 @@ FROM node:18-alpine # Set working directory WORKDIR /app -# Copy package files, config script -COPY package.json package-lock.json esbuild.config.js ./ -# Copy application source before build so esbuild can locate entry files +# Copy package files and install dependencies +COPY package.json package-lock.json ./ +RUN npm ci --only=production + +# Copy application source COPY . . -# Install all dependencies, create dist folder, build with esbuild, then remove devDeps -RUN npm ci && mkdir -p dist && npm run build && npm prune --production # Expose the application port EXPOSE 3000 diff --git a/index.js b/index.js index 9b90686..596c713 100644 --- a/index.js +++ b/index.js @@ -58,6 +58,11 @@ if (process.argv.includes('-d')) { process.exit(0); } +// Disable console.log in production to suppress output in daemon mode +if (process.env.NODE_ENV === 'production') { + console.log = () => {}; +} + const pluginRegistry = []; export function registerPlugin(pluginName, handler) { pluginRegistry.push({ name: pluginName, handler }); diff --git a/package.json b/package.json index 3d40e76..a47e276 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "scripts": { "start": "node index.js", "dev": "nodemon index.js", - "daemon": "pm2 start dist/index.js --name checkpoint", + "daemon": "pm2 start index.js --name checkpoint", "stop": "pm2 stop checkpoint", "restart": "pm2 restart checkpoint", "logs": "pm2 logs checkpoint",