Files
Yumi/Dockerfile
T

68 lines
1.7 KiB
Docker
Raw Normal View History

2022-03-05 22:21:33 +07:00
FROM debian AS build
2024-08-17 21:20:35 +07:00
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
ENV CI=true
2022-02-02 21:16:40 +07:00
WORKDIR /home/node/app
2022-03-05 22:21:33 +07:00
COPY . .
2022-02-02 22:07:33 +07:00
RUN DEBIAN_FRONTEND=noninteractive
2024-08-17 22:13:27 +07:00
2022-02-02 21:16:40 +07:00
RUN apt-get update -y
2024-08-18 01:23:03 +07:00
RUN apt-get -y install curl gnupg git dh-python make g++ libasound2-dev iputils-ping ffmpeg libnss3
2024-08-17 21:16:10 +07:00
RUN curl -sL https://deb.nodesource.com/setup_21.x | bash -
2022-02-02 21:16:40 +07:00
RUN apt-get -y install nodejs
2024-08-17 21:20:35 +07:00
RUN corepack enable
RUN pnpm install
2024-08-17 21:16:04 +07:00
WORKDIR /home/node/app/NekoMelody
2024-08-17 21:20:35 +07:00
RUN pnpm install
2024-08-18 10:51:49 +07:00
RUN pnpx playwright install --with-deps chromium
2024-08-18 00:01:26 +07:00
RUN pnpm run build
2024-08-17 21:16:04 +07:00
WORKDIR /home/node/app
2024-08-17 21:20:35 +07:00
RUN pnpm run build
2022-03-05 22:21:33 +07:00
FROM debian
WORKDIR /home/node/app
2024-06-16 00:40:10 +07:00
RUN apt-get update -y
2024-08-18 01:23:03 +07:00
RUN apt-get -y install software-properties-common curl gnupg git dh-python make g++ libasound2-dev iputils-ping ffmpeg python3-launchpadlib libnss3
2024-06-16 00:36:31 +07:00
RUN add-apt-repository ppa:tomtomtom/yt-dlp -y
2022-03-05 22:21:33 +07:00
RUN apt-get update -y
2024-06-16 00:40:10 +07:00
RUN apt-get -y install yt-dlp
2024-08-17 21:16:10 +07:00
RUN curl -sL https://deb.nodesource.com/setup_21.x | bash -
2022-03-05 22:21:33 +07:00
RUN apt-get -y install nodejs
2024-08-17 21:20:35 +07:00
RUN corepack enable
2022-03-05 22:21:33 +07:00
COPY --from=build /home/node/app/package.json .
2024-08-17 21:27:01 +07:00
COPY --from=build /home/node/app/pnpm-lock.yaml .
2022-03-05 22:21:33 +07:00
2024-08-17 21:20:35 +07:00
RUN pnpm install
2022-03-05 22:21:33 +07:00
COPY --from=build /home/node/app/prisma ./prisma/
2024-08-17 23:48:36 +07:00
RUN pnpm prisma generate
2022-03-05 22:21:33 +07:00
2022-06-07 03:08:27 +07:00
COPY --from=build /home/node/app/locales ./locales/
2022-03-06 21:48:14 +07:00
COPY --from=build /home/node/app/dist .
2024-08-18 00:01:26 +07:00
COPY --from=build /home/node/app/NekoMelody/dist ./NekoMelody/dist
2024-08-18 01:08:19 +07:00
COPY --from=build /home/node/app/NekoMelody/package.json ./NekoMelody/package.json
COPY --from=build /home/node/app/NekoMelody/pnpm-lock.yaml ./NekoMelody/pnpm-lock.yaml
WORKDIR /home/node/app/NekoMelody
RUN pnpm install
2024-08-18 10:51:49 +07:00
RUN pnpx playwright install --with-deps chromium
2024-08-18 01:08:19 +07:00
2024-08-18 09:39:40 +07:00
RUN useradd -m node
RUN chown -R node:node /home/node
2024-08-18 09:44:02 +07:00
USER node
2024-08-18 09:39:40 +07:00
WORKDIR /home/node/app
2024-08-18 08:39:52 +07:00
2024-08-18 00:31:22 +07:00
CMD [ "node", "src/index.js"]