mirror of
https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
synced 2025-10-09 11:36:38 +08:00
Add docker compose
This commit is contained in:
parent
bf8d136936
commit
f25ba59b79
42
Dockerfile
42
Dockerfile
@ -1,40 +1,38 @@
|
|||||||
FROM node:18-alpine AS base
|
ARG RESTY_IMAGE_BASE="node"
|
||||||
|
ARG RESTY_IMAGE_TAG="18-alpine"
|
||||||
|
|
||||||
FROM base AS deps
|
FROM ${RESTY_IMAGE_BASE}:${RESTY_IMAGE_TAG} AS base
|
||||||
|
ENV TZ=Asia/Shanghai
|
||||||
|
|
||||||
RUN apk add --no-cache libc6-compat
|
ARG OPENAI_API_KEY
|
||||||
|
ARG CODE
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
COPY package.json yarn.lock ./
|
|
||||||
|
|
||||||
RUN yarn install
|
|
||||||
|
|
||||||
FROM base AS builder
|
|
||||||
|
|
||||||
RUN apk update && apk add --no-cache git
|
|
||||||
|
|
||||||
ENV OPENAI_API_KEY=""
|
|
||||||
ENV CODE=""
|
|
||||||
ARG DOCKER=true
|
ARG DOCKER=true
|
||||||
|
|
||||||
|
ENV OPENAI_API_KEY="${OPENAI_API_KEY}"
|
||||||
|
ENV CODE="${CODE}"
|
||||||
|
ENV DOCKER="${DOCKER}"
|
||||||
|
|
||||||
|
FROM ${RESTY_IMAGE_BASE}:${RESTY_IMAGE_TAG} AS deps
|
||||||
|
RUN apk add --no-cache libc6-compat
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package.json yarn.lock ./
|
||||||
|
RUN yarn install
|
||||||
|
|
||||||
|
|
||||||
|
FROM base AS builder
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=deps /app/node_modules ./node_modules
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
RUN yarn build
|
RUN yarn build
|
||||||
|
|
||||||
|
|
||||||
FROM base AS runner
|
FROM base AS runner
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
ENV OPENAI_API_KEY=""
|
|
||||||
ENV CODE=""
|
|
||||||
|
|
||||||
COPY --from=builder /app/public ./public
|
COPY --from=builder /app/public ./public
|
||||||
COPY --from=builder /app/.next/standalone ./
|
COPY --from=builder /app/.next/standalone ./
|
||||||
COPY --from=builder /app/.next/static ./.next/static
|
COPY --from=builder /app/.next/static ./.next/static
|
||||||
COPY --from=builder /app/.next/server ./.next/server
|
COPY --from=builder /app/.next/server ./.next/server
|
||||||
|
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
|
|
||||||
CMD ["node","server.js"]
|
CMD ["node","server.js"]
|
||||||
|
49
docker-README.md
Normal file
49
docker-README.md
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
## 使用docker,运行ChatGPT Next Web
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d -p 3000:3000 \
|
||||||
|
-e OPENAI_API_KEY="" \
|
||||||
|
-e CODE="" \
|
||||||
|
--name chatgpt_next_web \
|
||||||
|
yidadaa/chatgpt-next-web
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 更新ChatGPT Next Web
|
||||||
|
|
||||||
|
从dockerhub更新ChatGPT Next Web
|
||||||
|
```bash
|
||||||
|
docker pull yidadaa/chatgpt-next-web
|
||||||
|
```
|
||||||
|
|
||||||
|
## 本地构建ChatGPT Next Web
|
||||||
|
|
||||||
|
如何使用docker,在本地构建ChatGPT Next Web的镜像
|
||||||
|
|
||||||
|
### 普通构建
|
||||||
|
```bash
|
||||||
|
docker build -t yidadaa/chatgpt-next-web .
|
||||||
|
```
|
||||||
|
|
||||||
|
### 参数级构建
|
||||||
|
```bash
|
||||||
|
docker build -t yidadaa/chatgpt-next-web \
|
||||||
|
--build-arg OPENAI_API_KEY=$(OPENAI_API_KEY) \
|
||||||
|
--build-arg CODE=$(CODE) \
|
||||||
|
.
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 使用docker compose构建
|
||||||
|
```bash
|
||||||
|
docker compose build
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 使用docker composey运行
|
||||||
|
|
||||||
|
修改`docker-compose.env`的环境变量,再执行
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose up -d
|
||||||
|
```
|
3
docker-compose.env
Normal file
3
docker-compose.env
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
OPENAI_API_KEY=
|
||||||
|
CODE=
|
||||||
|
DOCKER=true
|
14
docker-compose.yml
Normal file
14
docker-compose.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
version: "3"
|
||||||
|
|
||||||
|
services:
|
||||||
|
chatgpt-next-web:
|
||||||
|
build:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
context: .
|
||||||
|
container_name: chatgpt_next_web
|
||||||
|
image: yidadaa/chatgpt-next-web:latest
|
||||||
|
ports:
|
||||||
|
- 0.0.0.0:3000:3000
|
||||||
|
env_file:
|
||||||
|
- docker-compose.env
|
||||||
|
restart: unless-stopped
|
Loading…
Reference in New Issue
Block a user