kcnet-blog

一个专注于多模态大模型和人工智能技术的个人博客,采用极简主义设计风格,内容优先的用户体验。

✨ 特性

🛠️ 技术栈

🚀 本地开发与部署指南

本指南将引导你完成从环境配置到项目部署的完整流程。

acme.sh 安装与使用完整命令指南

目标:使用 acme.sh 通过 Cloudflare 的 DNS API,为您的域名申请一张通配符证书,并将其安装到指定目录,同时配置好全自动续签。

前提


第 1 步:安装 acme.sh

执行官方安装命令,将 your_email@example.com 替换为您自己的真实邮箱。

curl https://get.acme.sh | sh -s email=your_email@example.com

第 2 步:配置 Cloudflare API 凭证

执行 export 命令,将【您的Cloudflare API令牌】替换为您保存的真实令牌字符串。

export CF_Token="【您的Cloudflare API令牌】"

第 3 步:设置默认证书颁发机构(CA)

为了避免遇到速率限制或默认 CA 的问题,建议明确指定使用 Let’s Encrypt。

默认是ZeroSSL
/home/ubuntu/.acme.sh/acme.sh --set-default-ca --server zerossl
也可以转换到letsencrypt
/home/ubuntu/.acme.sh/acme.sh --set-default-ca --server letsencrypt

第 4 步:签发证书

使用 acme.sh 的完整路径来执行签发命令。将 your_domain.com 替换为您自己的域名。

/home/ubuntu/.acme.sh/acme.sh --issue --dns dns_cf -d your_domain.com -d '*.your_domain.com' --ecc

第 5 步:安装证书到指定目录(核心步骤)

这是将证书部署到应用(如 Xray)并配置自动化的关键一步。

# 1. 创建用于存放证书的目录 (如果还没创建)
sudo mkdir -p /etc/app/certs

# 2. 执行安装命令
新建文件
vim /home/ubuntu/app/reload_services.sh
文件内容
#!/bin/bash
# 3. 重启 kcnet-blog 项目的 web 服务
echo "Reloading kcnet-blog..."
docker compose -f /home/ubuntu/app/kcnet-blog/docker-compose.yml restart web
# 4. 如果还有其他项目,继续在下面添加
# echo "Reloading project-three..."
# docker compose -f /path/to/project-three/docker-compose.yml restart service-name
echo "All services reloaded."

#将用户添加到docker组,需重新连接SSH会话生效
sudo usermod -aG docker ubuntu 

# 5. 安装
sudo /home/ubuntu/.acme.sh/acme.sh --install-cert -d your_domain.com --ecc \
--key-file       /etc/app/certs/private.key  \
--fullchain-file /etc/app/certs/certificate.crt \
--reloadcmd      "/home/ubuntu/app/reload_services.sh"

第 6 步:(可选,为方便) 添加别名

如果您觉得每次都输入完整路径很麻烦,可以执行以下命令,为 acme.sh 创建一个快捷方式。

echo 'alias acme.sh=/home/ubuntu/.acme.sh/acme.sh' >> ~/.bashrc && source ~/.bashrc

执行后,您就可以在任何地方直接使用 acme.sh 命令了。

第1步:环境准备 (Prerequisites)

在开始之前,请确保你的系统 (如 Ubuntu) 已安装 git。然后,你需要安装一个稳定版本的 Node.js 和 npm。

  1. 克隆项目

    git clone https://github.com/your-username/kcnet-blog.git
    cd kcnet-blog
    
  2. 安装 Node.js (推荐) 如果你的 npm 或 npx 命令遇到问题,强烈建议从 NodeSource 安装一个最新的长期支持版 (LTS)。这能从根源上避免很多环境问题。

    # (可选,但推荐) 卸载系统自带的旧版本
    sudo apt-get purge nodejs npm -y
    sudo apt-get autoremove -y
    
    # 从 NodeSource 安装 Node.js v20.x LTS
    curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
    sudo apt-get install -y nodejs
    

第2步:安装项目依赖

使用 npm 安装项目所需的所有开发工具,如 tailwindcss, postcss 等。

npm install

第3步:配置与构建

  1. 初始化 Tailwind CSS 如果项目是首次配置,运行此命令来生成 tailwind.config.js 和 postcss.config.js 配置文件。

    npx tailwindcss init -p
    
  2. 配置 Tailwind 扫描路径 编辑 tailwind.config.js 文件,在 content 数组中指定你的 HTML 文件路径,以便 Tailwind 能找到所有用到的样式类。

    content: ["./dist/**/*.{html,js}"],
    
  3. 构建 CSS 运行 build 命令。它会读取 src/input.css,扫描 dist/ 目录下的文件,并生成一个经过压缩优化的最终 CSS 文件到 dist/assets/css/style.css。

    npm run build
    

    重要提示: 每次修改了 HTML 文件中的样式类后,都需要重新运行此命令来更新 CSS 文件。

第4步:Docker 部署

项目已配置为通过 Docker 部署。

  1. 构建并启动容器 此命令会在后台构建 Docker 镜像并启动 Nginx 服务。

    sudo docker compose down --volumes
    sudo docker system prune -af
    sudo docker compose up --build -d
    
  2. 查看日志 你可以使用此命令来监控服务的运行日志。

    docker compose logs -f
    

📞 联系方式


⭐ 如果这个项目对你有帮助,请给它一个星标!