安全警告:您必须更改NEXTAUTH_SECRET以下所有安装方法中的值。使用默认值会带来严重的安全风险。请为生产环境生成强随机字符串。生成安全密钥的示例:
openssl rand -base64 32
# or
node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
Bash脚本安装
install.sh使用 docker run 命令部署 Blinko。如果您觉得这种方法不安全,可以使用下面的其他方法。
curl -o install.sh https://raw.githubusercontent.com/blinko-space/blinko/main/install.sh && bash install.sh
Docker 安装
- 必须挂载PostgreSQL的数据卷,否则数据将会丢失。
- 请替换
NEXTAUTH_SECRET=my_ultra_secure_nextauth_secret为您自己的安全密钥
docker network create blinko-network
docker run -d
--name blinko-postgres
--network blinko-network
-v <your-path>:/var/lib/postgresql/data
-p 5435:5432
-e POSTGRES_DB=postgres
-e POSTGRES_USER=postgres
-e POSTGRES_PASSWORD=mysecretpassword
-e TZ=Asia/Shanghai
--restart always
postgres:14
docker run -d
--name blinko-website
--network blinko-network
-v <your-path>:/app/.blinko
-p 1111:1111
-e NODE_ENV=production
-e NEXTAUTH_URL=http://localhost:1111
-e NEXT_PUBLIC_BASE_URL=http://localhost:1111
-e NEXTAUTH_SECRET=my_ultra_secure_nextauth_secret
-e DATABASE_URL=postgresql://postgres:mysecretpassword@blinko-postgres:5432/postgres
--restart always
blinkospace/blinko:latest
Docker Compose 安装
要使用 docker-compose 部署 Blinko,请创建一个包含以下配置的 docker-compose.yml 文件:
步骤 1:创建 docker-compose.yml
networks:
blinko-network:
driver: bridge
services:
blinko-website:
image: blinkospace/blinko:latest
container_name: blinko-website
environment:
NODE_ENV: production
# NEXTAUTH_URL: http://localhost:1111
# IMPORTANT: If you want to use sso, you must set NEXTAUTH_URL to your own domain
# NEXT_PUBLIC_BASE_URL: http://localhost:1111
# IMPORTANT: Replace this with your own secure secret key!
NEXTAUTH_SECRET: my_ultra_secure_nextauth_secret
DATABASE_URL: postgresql://postgres:mysecretpassword@postgres:5432/postgres
depends_on:
postgres:
condition: service_healthy
# Make sure you have enough permissions.
# volumes:
# - ~/your-name/.blinko:/app/.blinko
restart: always
logging:
options:
max-size: "10m"
max-file: "3"
ports:
- 1111:1111
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://blinko-website:1111/"]
interval: 30s
timeout: 10s
retries: 5
start_period: 30s
networks:
- blinko-network
postgres:
image: postgres:14
container_name: blinko-postgres
restart: always
ports:
- 5435:5432
environment:
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_PASSWORD: mysecretpassword
TZ: Asia/Shanghai
# Persisting container data
# Make sure you have enough permissions.
# volumes:
# - ~/your-name/.db:/var/lib/postgresql/data
healthcheck:
test:
["CMD", "pg_isready", "-U", "postgres", "-d", "postgres"]
interval: 5s
timeout: 10s
retries: 5
networks:
- blinko-network
步骤 2:执行 docker-compose 命令以启动 Blinko
docker-compose -f docker-compose.yml up -d