소스 검색

fix token

lushdog@outlook.com 4 주 전
부모
커밋
58d0019b6b
2개의 변경된 파일16개의 추가작업 그리고 7개의 파일을 삭제
  1. 7 5
      Dockerfile
  2. 9 2
      README.md

+ 7 - 5
Dockerfile

@@ -5,10 +5,10 @@ FROM node:20-alpine AS base
 ENV PNPM_REGISTRY=https://registry.npmjs.org
 ENV npm_config_registry=https://registry.npmjs.org
 
+# 注意:敏感数据(如 SOL_SECRET_KEY)不应通过 ARG 传递
+# 应该在运行时通过环境变量传递(docker run -e 或 docker-compose)
+# SOL_ENDPOINT 可以在运行时传递,也可以作为非敏感配置保留
 ARG SOL_ENDPOINT
-ARG SOL_SECRET_KEY
-
-RUN echo "SOL_ENDPOINT=${SOL_ENDPOINT}"
 
 # 安装 pnpm
 RUN corepack enable && corepack prepare pnpm@latest --activate
@@ -35,8 +35,8 @@ COPY --from=deps /app/node_modules ./node_modules
 # 复制源代码
 COPY . .
 # 设置构建时需要的环境变量
-ENV SOL_ENDPOINT=${SOL_ENDPOINT}
 # 构建应用
+# 注意:构建时不需要 SOL_SECRET_KEY,它只在运行时需要
 RUN pnpm build
 
 # 运行阶段
@@ -47,7 +47,9 @@ ENV NODE_ENV=production
 # 禁用 Next.js 遥测
 ENV NEXT_TELEMETRY_DISABLED=1
 
-ENV SOL_ENDPOINT=${SOL_ENDPOINT}
+# 注意:SOL_ENDPOINT 和 SOL_SECRET_KEY 应该在运行时通过环境变量传递
+# 使用方式:docker run -e SOL_ENDPOINT=xxx -e SOL_SECRET_KEY=xxx ...
+# 或者使用 docker-compose.yml 中的 environment 配置
 
 # 创建非 root 用户
 RUN addgroup --system --gid 1001 nodejs

+ 9 - 2
README.md

@@ -9,6 +9,9 @@ This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-
 ```bash
 # Solana RPC 地址
 SOL_ENDPOINT=https://lb.drpc.live/solana/
+
+# Solana 私钥(用于签名交易,敏感信息,不要提交到 Git)
+SOL_SECRET_KEY=your_secret_key_here
 ```
 
 2. 或者参考 `.env.example` 文件创建 `.env.local`
@@ -21,8 +24,12 @@ SOL_ENDPOINT=https://lb.drpc.live/solana/
 # 构建镜像
 docker build -t byreal-table .
 
-# 运行容器时传入环境变量
-docker run -e SOL_ENDPOINT=https://lb.drpc.live/solana/ -p 3000:3000 byreal-table
+# 运行容器时传入环境变量(敏感数据应在运行时传递,不要通过 ARG 传递)
+docker run \
+  -e SOL_ENDPOINT=https://lb.drpc.live/solana/ \
+  -e SOL_SECRET_KEY=your_secret_key_here \
+  -p 3000:3000 \
+  byreal-table
 ```
 
 或者使用 `docker-compose.yml` 文件配置环境变量。