diff --git a/Dockerfile b/Dockerfile
index 23a3898..a56e4c3 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,8 +1,6 @@
FROM node:22-alpine AS base
-# Install dependencies only when needed
FROM base AS deps
-# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
RUN apk add --no-cache libc6-compat
WORKDIR /app
@@ -21,23 +19,22 @@ WORKDIR /app
RUN npm install -g pnpm
-ARG DATABASE_URL=""
-ARG AUTH_SECRET=""
-ARG NEXT_PUBLIC_APP_URL=http://localhost:3000
-ARG GOOGLE_CLIENT_ID=""
-ARG GOOGLE_CLIENT_SECRET=""
-ARG GITHUB_ID=""
-ARG GITHUB_SECRET=""
-ARG LinuxDo_CLIENT_ID=""
-ARG LinuxDo_CLIENT_SECRET=""
-ARG RESEND_API_KEY="res"
-ARG NEXT_PUBLIC_EMAIL_R2_DOMAIN=""
-ARG NEXT_PUBLIC_OPEN_SIGNUP="1"
-ARG NEXT_PUBLIC_GOOGLE_ID=""
-ARG SCREENSHOTONE_BASE_URL=""
-ARG GITHUB_TOKEN="ghp_"
+# ARG NEXT_PUBLIC_APP_URL="http://localhost:3000"
+ARG RESEND_API_KEY="re_"
+# ARG NEXT_PUBLIC_OPEN_SIGNUP="1"
+# ARG GITHUB_TOKEN=""
+# ARG AUTH_SECRET=""
+# ARG DATABASE_URL=""
+# ARG GOOGLE_CLIENT_ID=""
+# ARG GOOGLE_CLIENT_SECRET=""
+# ARG GITHUB_ID=""
+# ARG GITHUB_SECRET=""
+# ARG LinuxDo_CLIENT_ID=""
+# ARG LinuxDo_CLIENT_SECRET=""
+# ARG NEXT_PUBLIC_EMAIL_R2_DOMAIN=""
+# ARG NEXT_PUBLIC_GOOGLE_ID=""
+# ARG SCREENSHOTONE_BASE_URL=""
-# COPY .env.example .env
COPY --from=deps /app/node_modules ./node_modules
COPY . .
@@ -51,7 +48,6 @@ RUN npm install -g pnpm
ENV NODE_ENV=production
ENV IS_DOCKER=true
-# 复制必要文件
COPY --from=builder /app/public ./public
# Automatically leverage output traces to reduce image size
diff --git a/README.md b/README.md
index d0ef57a..c5aefba 100644
--- a/README.md
+++ b/README.md
@@ -53,6 +53,7 @@ Remember to fill in the necessary environment variables.
Fill in the environment variables in the `docker-compose.yml`, then:
```bash
+# Image: ghcr.io/oiov/wr.do/wrdo
docker compose up -d
```
diff --git a/app/(auth)/login/page.tsx b/app/(auth)/login/page.tsx
index e5acd0b..51039dc 100644
--- a/app/(auth)/login/page.tsx
+++ b/app/(auth)/login/page.tsx
@@ -25,7 +25,7 @@ export default function LoginPage() {
>
<>
- Back
+ Back {siteConfig.openSignup ? "Home" : ""}
>
diff --git a/docker-compose.yml b/docker-compose.yml
index e111d5f..3b34ceb 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,54 +1,63 @@
+version: "3.8"
+
services:
- wrdo:
+ app:
build:
context: .
dockerfile: Dockerfile
- image: ghcr.io/oiov/wr.do/wrdo:${TAG:-latest}
+ args:
+ RESEND_API_KEY: ${RESEND_API_KEY}
+ # image: ghcr.io/oiov/wr.do/wrdo:${TAG:-latest}
container_name: wrdo
ports:
- "3000:3000"
environment:
- - NODE_ENV=production
- - IS_DOCKER=true
- - DATABASE_URL=postgres://postgres:postgres@postgres:5432/wrdo
- - AUTH_SECRET=${AUTH_SECRET:-your-auth-secret}
- - NEXT_PUBLIC_APP_URL=${NEXT_PUBLIC_APP_URL:-http://localhost:3000}
- - GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID:-}
- - GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET:-}
- - GITHUB_ID=${GITHUB_ID:-}
- - GITHUB_SECRET=${GITHUB_SECRET:-}
- - LinuxDo_CLIENT_ID=${LinuxDo_CLIENT_ID:-}
- - LinuxDo_CLIENT_SECRET=${LinuxDo_CLIENT_SECRET:-}
- - RESEND_API_KEY=${RESEND_API_KEY:-}
- - NEXT_PUBLIC_EMAIL_R2_DOMAIN=${NEXT_PUBLIC_EMAIL_R2_DOMAIN:-}
- - NEXT_PUBLIC_OPEN_SIGNUP=${NEXT_PUBLIC_OPEN_SIGNUP:-1}
- - NEXT_PUBLIC_GOOGLE_ID=${NEXT_PUBLIC_GOOGLE_ID:-}
- - SCREENSHOTONE_BASE_URL=${SCREENSHOTONE_BASE_URL:-}
- - GITHUB_TOKEN=${GITHUB_TOKEN:-}
- depends_on:
- - postgres
+ NODE_ENV: production
+ DATABASE_URL: ${DATABASE_URL}
+ # If you want to use local database, uncomment the following line
+ # DATABASE_URL: postgres://postgres:postgres@postgres:5432/wrdo
+ AUTH_SECRET: ${AUTH_SECRET:-your-auth-secret}
+ NEXT_PUBLIC_APP_URL: ${NEXT_PUBLIC_APP_URL}
+ NEXT_PUBLIC_OPEN_SIGNUP: ${NEXT_PUBLIC_OPEN_SIGNUP}
+ GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
+ GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
+ GITHUB_ID: ${GITHUB_ID}
+ GITHUB_SECRET: ${GITHUB_SECRET}
+ LinuxDo_CLIENT_ID: ${LinuxDo_CLIENT_ID}
+ LinuxDo_CLIENT_SECRET: ${LinuxDo_CLIENT_SECRET}
+ RESEND_API_KEY: ${RESEND_API_KEY}
+ NEXT_PUBLIC_EMAIL_R2_DOMAIN: ${NEXT_PUBLIC_EMAIL_R2_DOMAIN}
+ NEXT_PUBLIC_GOOGLE_ID: ${NEXT_PUBLIC_GOOGLE_ID}
+ SCREENSHOTONE_BASE_URL: ${SCREENSHOTONE_BASE_URL}
+ GITHUB_TOKEN: ${GITHUB_TOKEN}
+ # If you want to use local database, uncomment the following line
+ # depends_on:
+ # - postgres
networks:
- wrdo-network
restart: unless-stopped
+ # command: ["bash", "-c", "pnpm db:push && node server.js"]
- postgres:
- image: postgres:16-alpine
- container_name: postgres
- environment:
- - POSTGRES_USER=postgres
- - POSTGRES_PASSWORD=postgres
- - POSTGRES_DB=wrdo
- volumes:
- - postgres-data:/var/lib/postgresql/data
- ports:
- - "5432:5432"
- networks:
- - wrdo-network
- restart: unless-stopped
+ # If you want to use local database, uncomment the following line
+ # postgres:
+ # image: postgres:16-alpine
+ # container_name: postgres
+ # environment:
+ # - POSTGRES_USER=postgres
+ # - POSTGRES_PASSWORD=postgres
+ # - POSTGRES_DB=wrdo
+ # volumes:
+ # - postgres-data:/var/lib/postgresql/data
+ # ports:
+ # - "5432:5432"
+ # networks:
+ # - wrdo-network
+ # restart: unless-stopped
-volumes:
- postgres-data:
- name: wrdo-postgres-data
+# If you want to use local database, uncomment the following line
+# volumes:
+# postgres-data:
+# name: wrdo-postgres-data
networks:
wrdo-network:
diff --git a/lib/utils.ts b/lib/utils.ts
index b1b2b66..442d9d1 100644
--- a/lib/utils.ts
+++ b/lib/utils.ts
@@ -94,7 +94,7 @@ export function formatTime(input: string | number): string {
const locale = navigator.language || "en-US";
return date.toLocaleTimeString(locale, {
- second: "numeric",
+ // second: "numeric",
minute: "numeric",
hour: "numeric",
});