283 字
1 分钟
把这台服务器变成博客:Astro + Docker 实录
记录一下这次把博客搬上服务器的过程,给以后的自己留一份说明书。
环境
- Ubuntu 24.04 / 4 核 / 3.6G 内存
- Node 24 + pnpm
- Docker 与 Docker Compose
一、拉主题、装依赖
git clone --depth=1 https://github.com/saicaca/fuwari.git blogcd blogpnpm installNOTEFuwari 用 pnpm 管理依赖。
preinstall里有一条only-allow pnpm,所以用npm install会直接退出。
二、改配置
站点信息集中在 src/config.ts,标题、语言、主题色、壁纸都在这里:
export const siteConfig: SiteConfig = { title: "星屑ノート", lang: "zh_CN", banner: { enable: true, src: "assets/images/banner.webp", },};三、构建
pnpm build产物在 dist/ 里,是纯静态文件,扔给任何一个 web server 都能跑。
四、用 Docker 跑 Nginx
docker-compose.yml:
services: blog: image: nginx:alpine ports: - "80:80" volumes: - ./dist:/usr/share/nginx/html:ro restart: unless-stoppeddocker compose up -dcurl -I http://127.0.0.1/看到 200 OK 就算成了。
踩到的坑
- 443 没开:云厂商安全组默认只放行 22 和 80,HTTPS 要手动加规则
- Docker Hub 拉不动:换成
m.daocloud.io/docker.io/library/nginx:alpine就顺畅了 - 非 root 绑不了 80:交给 Docker 做端口映射,不用改内核参数
下一步
等备案下来,把域名指过来,再上 HTTPS。静态站的好处就是——迁移的成本几乎为零。
把这台服务器变成博客:Astro + Docker 实录
https://yukisama-blog.pages.dev/posts/deploy-notes/