Add express to dependencies and improve Dockerfile
Added express as a production dependency in package.json and updated the Dockerfile to install dependencies more efficiently using npm ci when package-lock.json is present. This streamlines the build process and ensures express is available in production environments.
This commit is contained in:
1 parent
5281b33bcc
commit
0a9e455cf7
2 files changed
+39
-38
No files matched your search
+4
-4
@@ -4,11 +4,11 @@ FROM node:20-alpine
|
||||
# Set the working directory inside the container
|
||||
WORKDIR /app
|
||||
|
||||
# Copy package.json first to leverage Docker cache for dependencies
|
||||
COPY package.json ./
|
||||
# Copy package.json and package-lock.json first to leverage Docker cache for dependencies
|
||||
COPY package.json package-lock.json* ./
|
||||
|
||||
# Install dependencies including express for standalone server
|
||||
RUN npm ci --only=production && npm install express
|
||||
# Install dependencies - use npm ci for reproducible builds if package-lock.json exists, otherwise npm install
|
||||
RUN if [ -f package-lock.json ]; then npm ci --only=production; else npm install --only=production; fi
|
||||
|
||||
# Copy the rest of the application code
|
||||
COPY . .
|
||||
|
||||
+35
-34
@@ -1,36 +1,37 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"xget": "file:"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@cloudflare/vitest-pool-workers": "^0.8.36",
|
||||
"@cloudflare/workers-types": "^4.20250724.0",
|
||||
"eslint": "^9.31.0",
|
||||
"prettier": "^3.6.2",
|
||||
"vitest": "^3.1.4",
|
||||
"wrangler": "^4.26.0"
|
||||
},
|
||||
"name": "xget",
|
||||
"private": false,
|
||||
"scripts": {
|
||||
"deploy": "wrangler deploy",
|
||||
"deploy:vercel": "vercel --prod",
|
||||
"dev": "wrangler dev",
|
||||
"dev:vercel": "vercel dev",
|
||||
"format": "prettier --write src/ test/ *.js *.json *.md",
|
||||
"format:check": "prettier --check src/ test/ *.js *.json *.md",
|
||||
"lint": "eslint src/ test/",
|
||||
"lint:fix": "eslint src/ test/ --fix",
|
||||
"preview:vercel": "vercel",
|
||||
"start": "wrangler dev",
|
||||
"start:vercel": "vercel dev",
|
||||
"test": "vitest",
|
||||
"test:coverage": "vitest run --coverage",
|
||||
"test:run": "vitest run",
|
||||
"test:ui": "vitest --ui",
|
||||
"test:watch": "vitest --watch",
|
||||
"type-check": "tsc --noEmit"
|
||||
},
|
||||
"type": "module",
|
||||
"version": "1.0.0"
|
||||
"dependencies": {
|
||||
"express": "^4.19.2",
|
||||
"xget": "file:"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@cloudflare/vitest-pool-workers": "^0.8.36",
|
||||
"@cloudflare/workers-types": "^4.20250724.0",
|
||||
"eslint": "^9.31.0",
|
||||
"prettier": "^3.6.2",
|
||||
"vitest": "^3.1.4",
|
||||
"wrangler": "^4.26.0"
|
||||
},
|
||||
"name": "xget",
|
||||
"private": false,
|
||||
"scripts": {
|
||||
"deploy": "wrangler deploy",
|
||||
"deploy:vercel": "vercel --prod",
|
||||
"dev": "wrangler dev",
|
||||
"dev:vercel": "vercel dev",
|
||||
"format": "prettier --write src/ test/ *.js *.json *.md",
|
||||
"format:check": "prettier --check src/ test/ *.js *.json *.md",
|
||||
"lint": "eslint src/ test/",
|
||||
"lint:fix": "eslint src/ test/ --fix",
|
||||
"preview:vercel": "vercel",
|
||||
"start": "wrangler dev",
|
||||
"start:vercel": "vercel dev",
|
||||
"test": "vitest",
|
||||
"test:coverage": "vitest run --coverage",
|
||||
"test:run": "vitest run",
|
||||
"test:ui": "vitest --ui",
|
||||
"test:watch": "vitest --watch",
|
||||
"type-check": "tsc --noEmit"
|
||||
},
|
||||
"type": "module",
|
||||
"version": "1.0.0"
|
||||
}
|
||||
Reference in new issue
Block a user