-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy pathDockerfile
29 lines (21 loc) · 13.9 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Stage 1: Builder
FROM node:alpine AS builder
# Install packages
RUN npm install -g --force @angular-eslint/[email protected] @angular-eslint/[email protected] @angular-eslint/[email protected] @angular/[email protected] @antfu/[email protected] @antfu/[email protected] @antfu/[email protected] @antfu/[email protected] @apify/[email protected] @audentio/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-proposal-async-generator-functions@latest @babel/plugin-proposal-class-properties@latest @babel/plugin-proposal-class-static-block@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-proposal-export-namespace-from@latest @babel/[email protected] @babel/[email protected] @babel/plugin-proposal-json-strings@latest @babel/plugin-proposal-logical-assignment-operators@latest @babel/plugin-proposal-nullish-coalescing-operator@latest @babel/plugin-proposal-numeric-separator@latest @babel/plugin-proposal-object-rest-spread@latest @babel/plugin-proposal-optional-catch-binding@latest @babel/plugin-proposal-optional-chaining@latest @babel/[email protected] @babel/[email protected] @babel/plugin-proposal-private-methods@latest @babel/plugin-proposal-private-property-in-object@latest @babel/[email protected] @babel/plugin-proposal-unicode-property-regex@latest @babel/plugin-syntax-dynamic-import@latest @babel/plugin-syntax-import-assertions@latest @babel/plugin-syntax-import-meta@latest @babel/plugin-syntax-jsx@latest @babel/plugin-syntax-top-level-await@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-transform-export-namespace-from@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-transform-logical-assignment-operators@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-transform-nullish-coalescing-operator@latest @babel/plugin-transform-numeric-separator@latest @babel/[email protected] @babel/plugin-transform-object-rest-spread@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/plugin-transform-private-property-in-object@latest @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @br/[email protected] @coffeelint/[email protected] @emotion/[email protected] @grafana/[email protected] @graphql-eslint/[email protected] @html-eslint/[email protected] @html-eslint/[email protected] @ionic/[email protected] @meteorjs/[email protected] @next/[email protected] @nrwl/[email protected] @nrwl/[email protected] @nrwl/[email protected] @nuxt/[email protected] @nuxtjs/[email protected] @nuxtjs/[email protected] @nx/[email protected] @nx/[email protected] @nx/[email protected] @react-native-community/[email protected] @react-native-community/[email protected] @react-native/[email protected] @react-native/[email protected] @react-native/[email protected] @remix-run/[email protected] @repath-solutions/[email protected] @repath-solutions/[email protected] @repath-solutions/[email protected] @repath-solutions/[email protected] @repath-solutions/[email protected] @storybook/[email protected] @storybook/[email protected] @stylistic/[email protected] @stylistic/[email protected] @stylistic/[email protected] @stylistic/[email protected] @stylistic/[email protected] @stylistic/[email protected] @swc-node/[email protected] @swc/[email protected] @tsparticles/[email protected] @types/[email protected] @typescript-eslint/[email protected] @typescript-eslint/[email protected] @typescript-eslint/utils@latest @uncovertruth/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @vue/[email protected] @wordpress/[email protected] @wordpress/[email protected] @wordpress/[email protected] @wordpress/[email protected] [email protected] [email protected] babel-plugin-dva-hmr@latest babel-plugin-import@latest babel-plugin-module-resolver@latest babel-plugin-styled-components@latest [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] eslint-config-preact@latest [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] @eslint/[email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] metro-react-native-babel-preset@latest [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] stylelint-config-prestashop@latest stylelint-config-prettier-scss@latest [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
# Copy modified files
COPY cf-node-package-mods-v2 /usr/local/lib/node_modules
# Stage 2: Final image
FROM node:alpine
# Copy the global npm packages and binaries from the builder stage
COPY --from=builder /usr/local /usr/local
# Set the working directory
WORKDIR /app
# Create an entrypoint script with explicit /bin/sh path
COPY <<'EOF' /entrypoint.sh
#!/bin/sh
ln -sf /usr/local/lib/node_modules /app/node_modules
exec "$@"
EOF
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/bin/sh", "/entrypoint.sh"]
CMD ["eslint", "."]