🔨 Update bunjs dockerfile, provide nodejs version dockerfile
This commit is contained in:
@@ -12,6 +12,7 @@ RUN bun install
|
|||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
# Build the Nuxt application
|
# Build the Nuxt application
|
||||||
|
ENV NITRO_PRESET=bun
|
||||||
RUN bun run build
|
RUN bun run build
|
||||||
|
|
||||||
# Stage 2: Create the production image
|
# Stage 2: Create the production image
|
||||||
|
|||||||
33
Dockerfile.node
Normal file
33
Dockerfile.node
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
# Stage 1: Build the application
|
||||||
|
FROM node:20 as builder
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Copy dependency definition files
|
||||||
|
COPY package.json ./
|
||||||
|
COPY package-lock.json ./
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
# Copy the rest of the application code
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
# Build the Nuxt application
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
# Stage 2: Create the production image
|
||||||
|
FROM node:20-slim as runner
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Copy the built output from the builder stage
|
||||||
|
COPY --from=builder /app/.output ./.output
|
||||||
|
|
||||||
|
# Set environment variables for the Nuxt server
|
||||||
|
ENV HOST=0.0.0.0
|
||||||
|
ENV PORT=3000
|
||||||
|
|
||||||
|
# Expose the port the app runs on
|
||||||
|
EXPOSE 3000
|
||||||
|
|
||||||
|
# The command to run the application
|
||||||
|
CMD ["node", ".output/server/index.mjs"]
|
||||||
20
app/components.d.ts
vendored
20
app/components.d.ts
vendored
@@ -14,21 +14,16 @@ declare module 'vue' {
|
|||||||
export interface GlobalComponents {
|
export interface GlobalComponents {
|
||||||
NAlert: typeof import('naive-ui')['NAlert']
|
NAlert: typeof import('naive-ui')['NAlert']
|
||||||
NAvatar: typeof import('naive-ui')['NAvatar']
|
NAvatar: typeof import('naive-ui')['NAvatar']
|
||||||
NBtn: typeof import('naive-ui')['NBtn']
|
|
||||||
NButton: typeof import('naive-ui')['NButton']
|
NButton: typeof import('naive-ui')['NButton']
|
||||||
NCard: typeof import('naive-ui')['NCard']
|
NCard: typeof import('naive-ui')['NCard']
|
||||||
NCardSection: typeof import('naive-ui')['NCardSection']
|
|
||||||
NCarousel: typeof import('naive-ui')['NCarousel']
|
NCarousel: typeof import('naive-ui')['NCarousel']
|
||||||
NCarouselItem: typeof import('naive-ui')['NCarouselItem']
|
NCarouselItem: typeof import('naive-ui')['NCarouselItem']
|
||||||
NCheckbox: typeof import('naive-ui')['NCheckbox']
|
NCheckbox: typeof import('naive-ui')['NCheckbox']
|
||||||
NChip: typeof import('naive-ui')['NChip']
|
|
||||||
NCode: typeof import('naive-ui')['NCode']
|
NCode: typeof import('naive-ui')['NCode']
|
||||||
NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
|
NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
|
||||||
NConfigProvider: typeof import('naive-ui')['NConfigProvider']
|
NConfigProvider: typeof import('naive-ui')['NConfigProvider']
|
||||||
NDatePicker: typeof import('naive-ui')['NDatePicker']
|
NDatePicker: typeof import('naive-ui')['NDatePicker']
|
||||||
NDialog: typeof import('naive-ui')['NDialog']
|
|
||||||
NDialogProvider: typeof import('naive-ui')['NDialogProvider']
|
NDialogProvider: typeof import('naive-ui')['NDialogProvider']
|
||||||
NDivider: typeof import('naive-ui')['NDivider']
|
|
||||||
NDrawer: typeof import('naive-ui')['NDrawer']
|
NDrawer: typeof import('naive-ui')['NDrawer']
|
||||||
NDrawerContent: typeof import('naive-ui')['NDrawerContent']
|
NDrawerContent: typeof import('naive-ui')['NDrawerContent']
|
||||||
NDropdown: typeof import('naive-ui')['NDropdown']
|
NDropdown: typeof import('naive-ui')['NDropdown']
|
||||||
@@ -38,8 +33,6 @@ declare module 'vue' {
|
|||||||
NGlobalStyle: typeof import('naive-ui')['NGlobalStyle']
|
NGlobalStyle: typeof import('naive-ui')['NGlobalStyle']
|
||||||
NIcon: typeof import('naive-ui')['NIcon']
|
NIcon: typeof import('naive-ui')['NIcon']
|
||||||
NImage: typeof import('naive-ui')['NImage']
|
NImage: typeof import('naive-ui')['NImage']
|
||||||
NImagePreview: typeof import('naive-ui')['NImagePreview']
|
|
||||||
NImg: typeof import('naive-ui')['NImg']
|
|
||||||
NInfiniteScroll: typeof import('naive-ui')['NInfiniteScroll']
|
NInfiniteScroll: typeof import('naive-ui')['NInfiniteScroll']
|
||||||
NInput: typeof import('naive-ui')['NInput']
|
NInput: typeof import('naive-ui')['NInput']
|
||||||
NList: typeof import('naive-ui')['NList']
|
NList: typeof import('naive-ui')['NList']
|
||||||
@@ -58,11 +51,8 @@ declare module 'vue' {
|
|||||||
NSpace: typeof import('naive-ui')['NSpace']
|
NSpace: typeof import('naive-ui')['NSpace']
|
||||||
NSpin: typeof import('naive-ui')['NSpin']
|
NSpin: typeof import('naive-ui')['NSpin']
|
||||||
NTab: typeof import('naive-ui')['NTab']
|
NTab: typeof import('naive-ui')['NTab']
|
||||||
NTabPane: typeof import('naive-ui')['NTabPane']
|
|
||||||
NTabs: typeof import('naive-ui')['NTabs']
|
NTabs: typeof import('naive-ui')['NTabs']
|
||||||
NTag: typeof import('naive-ui')['NTag']
|
NTag: typeof import('naive-ui')['NTag']
|
||||||
NTextarea: typeof import('naive-ui')['NTextarea']
|
|
||||||
NThemeEditor: typeof import('naive-ui')['NThemeEditor']
|
|
||||||
NTooltip: typeof import('naive-ui')['NTooltip']
|
NTooltip: typeof import('naive-ui')['NTooltip']
|
||||||
RouterLink: typeof import('vue-router')['RouterLink']
|
RouterLink: typeof import('vue-router')['RouterLink']
|
||||||
RouterView: typeof import('vue-router')['RouterView']
|
RouterView: typeof import('vue-router')['RouterView']
|
||||||
@@ -73,21 +63,16 @@ declare module 'vue' {
|
|||||||
declare global {
|
declare global {
|
||||||
const NAlert: typeof import('naive-ui')['NAlert']
|
const NAlert: typeof import('naive-ui')['NAlert']
|
||||||
const NAvatar: typeof import('naive-ui')['NAvatar']
|
const NAvatar: typeof import('naive-ui')['NAvatar']
|
||||||
const NBtn: typeof import('naive-ui')['NBtn']
|
|
||||||
const NButton: typeof import('naive-ui')['NButton']
|
const NButton: typeof import('naive-ui')['NButton']
|
||||||
const NCard: typeof import('naive-ui')['NCard']
|
const NCard: typeof import('naive-ui')['NCard']
|
||||||
const NCardSection: typeof import('naive-ui')['NCardSection']
|
|
||||||
const NCarousel: typeof import('naive-ui')['NCarousel']
|
const NCarousel: typeof import('naive-ui')['NCarousel']
|
||||||
const NCarouselItem: typeof import('naive-ui')['NCarouselItem']
|
const NCarouselItem: typeof import('naive-ui')['NCarouselItem']
|
||||||
const NCheckbox: typeof import('naive-ui')['NCheckbox']
|
const NCheckbox: typeof import('naive-ui')['NCheckbox']
|
||||||
const NChip: typeof import('naive-ui')['NChip']
|
|
||||||
const NCode: typeof import('naive-ui')['NCode']
|
const NCode: typeof import('naive-ui')['NCode']
|
||||||
const NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
|
const NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
|
||||||
const NConfigProvider: typeof import('naive-ui')['NConfigProvider']
|
const NConfigProvider: typeof import('naive-ui')['NConfigProvider']
|
||||||
const NDatePicker: typeof import('naive-ui')['NDatePicker']
|
const NDatePicker: typeof import('naive-ui')['NDatePicker']
|
||||||
const NDialog: typeof import('naive-ui')['NDialog']
|
|
||||||
const NDialogProvider: typeof import('naive-ui')['NDialogProvider']
|
const NDialogProvider: typeof import('naive-ui')['NDialogProvider']
|
||||||
const NDivider: typeof import('naive-ui')['NDivider']
|
|
||||||
const NDrawer: typeof import('naive-ui')['NDrawer']
|
const NDrawer: typeof import('naive-ui')['NDrawer']
|
||||||
const NDrawerContent: typeof import('naive-ui')['NDrawerContent']
|
const NDrawerContent: typeof import('naive-ui')['NDrawerContent']
|
||||||
const NDropdown: typeof import('naive-ui')['NDropdown']
|
const NDropdown: typeof import('naive-ui')['NDropdown']
|
||||||
@@ -97,8 +82,6 @@ declare global {
|
|||||||
const NGlobalStyle: typeof import('naive-ui')['NGlobalStyle']
|
const NGlobalStyle: typeof import('naive-ui')['NGlobalStyle']
|
||||||
const NIcon: typeof import('naive-ui')['NIcon']
|
const NIcon: typeof import('naive-ui')['NIcon']
|
||||||
const NImage: typeof import('naive-ui')['NImage']
|
const NImage: typeof import('naive-ui')['NImage']
|
||||||
const NImagePreview: typeof import('naive-ui')['NImagePreview']
|
|
||||||
const NImg: typeof import('naive-ui')['NImg']
|
|
||||||
const NInfiniteScroll: typeof import('naive-ui')['NInfiniteScroll']
|
const NInfiniteScroll: typeof import('naive-ui')['NInfiniteScroll']
|
||||||
const NInput: typeof import('naive-ui')['NInput']
|
const NInput: typeof import('naive-ui')['NInput']
|
||||||
const NList: typeof import('naive-ui')['NList']
|
const NList: typeof import('naive-ui')['NList']
|
||||||
@@ -117,11 +100,8 @@ declare global {
|
|||||||
const NSpace: typeof import('naive-ui')['NSpace']
|
const NSpace: typeof import('naive-ui')['NSpace']
|
||||||
const NSpin: typeof import('naive-ui')['NSpin']
|
const NSpin: typeof import('naive-ui')['NSpin']
|
||||||
const NTab: typeof import('naive-ui')['NTab']
|
const NTab: typeof import('naive-ui')['NTab']
|
||||||
const NTabPane: typeof import('naive-ui')['NTabPane']
|
|
||||||
const NTabs: typeof import('naive-ui')['NTabs']
|
const NTabs: typeof import('naive-ui')['NTabs']
|
||||||
const NTag: typeof import('naive-ui')['NTag']
|
const NTag: typeof import('naive-ui')['NTag']
|
||||||
const NTextarea: typeof import('naive-ui')['NTextarea']
|
|
||||||
const NThemeEditor: typeof import('naive-ui')['NThemeEditor']
|
|
||||||
const NTooltip: typeof import('naive-ui')['NTooltip']
|
const NTooltip: typeof import('naive-ui')['NTooltip']
|
||||||
const RouterLink: typeof import('vue-router')['RouterLink']
|
const RouterLink: typeof import('vue-router')['RouterLink']
|
||||||
const RouterView: typeof import('vue-router')['RouterView']
|
const RouterView: typeof import('vue-router')['RouterView']
|
||||||
|
|||||||
Reference in New Issue
Block a user