|
|
@ -31,11 +31,7 @@ FROM base AS builder
|
|
|
|
|
|
|
|
|
|
|
|
ARG USE_CN_MIRROR
|
|
|
|
ARG USE_CN_MIRROR
|
|
|
|
|
|
|
|
|
|
|
|
ENV NEXT_PUBLIC_SERVICE_MODE="server" \
|
|
|
|
ENV NEXT_PUBLIC_BASE_PATH=""
|
|
|
|
APP_URL="http://192.168.15.199:3010" \
|
|
|
|
|
|
|
|
DATABASE_DRIVER="node" \
|
|
|
|
|
|
|
|
DATABASE_URL="postgres://postgres:uWNZugjBqixf8dxC@localhost:5432/lobechat" \
|
|
|
|
|
|
|
|
KEY_VAULTS_SECRET="Kix2wcUONd4CX51E/ZPAd36BqM4wzJgKjPtz2sGztqQ="
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Sentry
|
|
|
|
# Sentry
|
|
|
|
ENV NEXT_PUBLIC_SENTRY_DSN="" \
|
|
|
|
ENV NEXT_PUBLIC_SENTRY_DSN="" \
|
|
|
@ -74,9 +70,9 @@ RUN \
|
|
|
|
&& corepack use $(sed -n 's/.*"packageManager": "\(.*\)".*/\1/p' package.json) \
|
|
|
|
&& corepack use $(sed -n 's/.*"packageManager": "\(.*\)".*/\1/p' package.json) \
|
|
|
|
# Install the dependencies
|
|
|
|
# Install the dependencies
|
|
|
|
&& pnpm i \
|
|
|
|
&& pnpm i \
|
|
|
|
# Add sharp and db migration dependencies
|
|
|
|
# Add sharp dependencies
|
|
|
|
&& mkdir -p /deps \
|
|
|
|
&& mkdir -p /deps \
|
|
|
|
&& pnpm add sharp pg drizzle-orm --prefix /deps
|
|
|
|
&& pnpm add sharp --prefix /deps
|
|
|
|
|
|
|
|
|
|
|
|
COPY . .
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
|
|
|
@ -92,16 +88,7 @@ COPY --from=builder /app/public /app/public
|
|
|
|
# https://nextjs.org/docs/advanced-features/output-file-tracing
|
|
|
|
# https://nextjs.org/docs/advanced-features/output-file-tracing
|
|
|
|
COPY --from=builder /app/.next/standalone /app/
|
|
|
|
COPY --from=builder /app/.next/standalone /app/
|
|
|
|
COPY --from=builder /app/.next/static /app/.next/static
|
|
|
|
COPY --from=builder /app/.next/static /app/.next/static
|
|
|
|
|
|
|
|
|
|
|
|
# copy dependencies
|
|
|
|
|
|
|
|
COPY --from=builder /deps/node_modules/.pnpm /app/node_modules/.pnpm
|
|
|
|
COPY --from=builder /deps/node_modules/.pnpm /app/node_modules/.pnpm
|
|
|
|
COPY --from=builder /deps/node_modules/pg /app/node_modules/pg
|
|
|
|
|
|
|
|
COPY --from=builder /deps/node_modules/drizzle-orm /app/node_modules/drizzle-orm
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Copy database migrations
|
|
|
|
|
|
|
|
COPY --from=builder /app/src/database/server/migrations /app/migrations
|
|
|
|
|
|
|
|
COPY --from=builder /app/scripts/migrateServerDB/docker.cjs /app/docker.cjs
|
|
|
|
|
|
|
|
COPY --from=builder /app/scripts/migrateServerDB/errorHint.js /app/errorHint.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Production image, copy all the files and run next
|
|
|
|
## Production image, copy all the files and run next
|
|
|
|
FROM base
|
|
|
|
FROM base
|
|
|
@ -113,36 +100,17 @@ ENV NODE_ENV="production" \
|
|
|
|
NODE_TLS_REJECT_UNAUTHORIZED=""
|
|
|
|
NODE_TLS_REJECT_UNAUTHORIZED=""
|
|
|
|
|
|
|
|
|
|
|
|
# set hostname to localhost
|
|
|
|
# set hostname to localhost
|
|
|
|
ENV HOSTNAME="192.168.15.199" \
|
|
|
|
ENV HOSTNAME="0.0.0.0" \
|
|
|
|
PORT="3010"
|
|
|
|
PORT="3210"
|
|
|
|
|
|
|
|
|
|
|
|
# General Variables
|
|
|
|
# General Variables
|
|
|
|
ENV ACCESS_CODE="" \
|
|
|
|
ENV ACCESS_CODE="" \
|
|
|
|
APP_URL="http://192.168.15.199:3010" \
|
|
|
|
|
|
|
|
API_KEY_SELECT_MODE="" \
|
|
|
|
API_KEY_SELECT_MODE="" \
|
|
|
|
DEFAULT_AGENT_CONFIG="" \
|
|
|
|
DEFAULT_AGENT_CONFIG="" \
|
|
|
|
SYSTEM_AGENT="" \
|
|
|
|
SYSTEM_AGENT="" \
|
|
|
|
FEATURE_FLAGS="" \
|
|
|
|
FEATURE_FLAGS="" \
|
|
|
|
PROXY_URL=""
|
|
|
|
PROXY_URL=""
|
|
|
|
|
|
|
|
|
|
|
|
# Database
|
|
|
|
|
|
|
|
ENV KEY_VAULTS_SECRET="Kix2wcUONd4CX51E/ZPAd36BqM4wzJgKjPtz2sGztqQ=" \
|
|
|
|
|
|
|
|
DATABASE_DRIVER="node" \
|
|
|
|
|
|
|
|
DATABASE_URL="postgresql://postgres:uWNZugjBqixf8dxC@postgresql:5432/lobechat"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Next Auth
|
|
|
|
|
|
|
|
ENV NEXT_AUTH_SECRET="NX2kaPE923dt6BL2U8e9oSre5RfoT7hg" \
|
|
|
|
|
|
|
|
NEXT_AUTH_SSO_PROVIDERS="casdoor" \
|
|
|
|
|
|
|
|
NEXTAUTH_URL="http://192.168.15.199:3010/api/auth"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# S3
|
|
|
|
|
|
|
|
ENV NEXT_PUBLIC_S3_DOMAIN="" \
|
|
|
|
|
|
|
|
S3_PUBLIC_DOMAIN="http://192.168.15.199:9000" \
|
|
|
|
|
|
|
|
S3_ACCESS_KEY_ID="soaucnP8Bip0TDdUjxng" \
|
|
|
|
|
|
|
|
S3_BUCKET="casdoor" \
|
|
|
|
|
|
|
|
S3_ENDPOINT="http://192.168.15.199:9000" \
|
|
|
|
|
|
|
|
S3_SECRET_ACCESS_KEY="ZPUzvY34umfcfxvWKSv0P00vczVMB6YmgJS5J9eO"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Model Variables
|
|
|
|
# Model Variables
|
|
|
|
ENV \
|
|
|
|
ENV \
|
|
|
|
# AI21
|
|
|
|
# AI21
|
|
|
@ -200,7 +168,7 @@ ENV \
|
|
|
|
# 01.AI
|
|
|
|
# 01.AI
|
|
|
|
ZEROONE_API_KEY="" ZEROONE_MODEL_LIST="" \
|
|
|
|
ZEROONE_API_KEY="" ZEROONE_MODEL_LIST="" \
|
|
|
|
# Zhipu
|
|
|
|
# Zhipu
|
|
|
|
ZHIPU_API_KEY=""
|
|
|
|
ZHIPU_API_KEY="" ZHIPU_MODEL_LIST=""
|
|
|
|
|
|
|
|
|
|
|
|
USER nextjs
|
|
|
|
USER nextjs
|
|
|
|
|
|
|
|
|
|
|
@ -237,9 +205,5 @@ CMD \
|
|
|
|
"$protocol $host $port" \
|
|
|
|
"$protocol $host $port" \
|
|
|
|
> "/etc/proxychains4.conf"; \
|
|
|
|
> "/etc/proxychains4.conf"; \
|
|
|
|
fi; \
|
|
|
|
fi; \
|
|
|
|
# Run migration
|
|
|
|
# Run the server
|
|
|
|
node "/app/docker.cjs"; \
|
|
|
|
${PROXYCHAINS} node "/app/server.js";
|
|
|
|
if [ "$?" -eq "0" ]; then \
|
|
|
|
|
|
|
|
# Run the server
|
|
|
|
|
|
|
|
${PROXYCHAINS} node "/app/server.js"; \
|
|
|
|
|
|
|
|
fi;
|
|
|
|
|
|
|
|