个人主页

简介

  本站使用的 personal-website ,是一款快速、简约风格的开源个人主页,此开源项目基于 Next.js 开发,支持 Docker 容器化部署。它内置完整的后台管理系统,您只需部署一个服务,便可在占用最小内存的情况下,轻松满足个人主页的需求,尤其适合境内使用。

技术栈

  • 🍔 Next.JS (App Router)
  • 🥪 TypeScript
  • 🧑‍🎨 Tailwind CSS (shadcn/ui)
  • 🍟 Prisma (MySQL)

亮点

  • 📱 适配移动端设备
    响应式布局,支持低分辨率设备访问

  • 🌗 支持浅色、深色主题
    根据系统设置,自动调整白日、夜间皮肤

  • 📖 多语言
    支持简体中文、繁體中文、English

  • 🌏 SEO
    深度实践,支持各大搜索引擎SEO

  • 🥯 增量渲染
    采用 SSG、ISR 渲染,极大提升渲染效率

  • 📷 资源压缩
    对上传的图片资源进行压缩,提升加载速度,减少空间占用

  • 🧑‍🎨 文本编辑
    支持且不限于:上传、表格、音频、视频、iframe、多种编程语言代码示例

  • 🙋‍♂️ 后台管理
    网站信息、个人信息编辑,内容管理、留言管理、静态资源管理等相关功能

  • 🤩 访客日志
    访客日志功能,帮助您了解访客的访问频率。

  • 🐳 Docker
    支持 docker 多个镜像源,一键部署,降低心智负担

环境变量 

# MYSQL地址
DATABASE_URL = mysql://root:pwd@localhost:3306/website

# 系统密钥(必填)
SECRET = your_key

# 系统语言(默认zh-Hans)
# zh-Hans 简体中文
# zh-Hant 繁體中文
# en      English
LANG = zh-Hans

部署使用

📦 1.拉取镜像

# 官方源
$ docker pull world56/website
# 阿里云源
$ docker pull registry.cn-hangzhou.aliyuncs.com/world56/website

🚀 2.启动容器

# 若从阿里云源拉取,启动的容器名 world56/website 改为 registry.cn-hangzhou.aliyuncs.com/world56/website
# 静态资源托管在/app/resource目录,请绑定数据卷(-v),防止资源丢失。
$ docker run -d -p 8001:3000 -e DATABASE_URL=mysql://root:mysql:3306/website -e SECRET=your_key -e LANG=zh-Hans -v ~/app/website/resource:/app/resource world56/website

注意事项

  🙋若使用Nginx代理,请添加如下参数:

server {
 ...
 location / {
  proxy_set_header X-Real-IP $remote_addr; # “访问日志”功能
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # “访问日志”功能
  proxy_pass http://127.0.0.1:8001;  # website服务端口
 }

 location /api/auth/upload {
  client_max_body_size 32M; # “上传资源”功能
  proxy_pass http://127.0.0.1:8001; # website服务端口
 }
}

项目链接

Github地址

DockerHub地址

部分截图

移动端 👇

                                     #      #

后台管理 👇

#

#

SEO效果👇

#

#

© 著作权归作者所有 转载请注明原链接