惯例先放网址,我这里参考了 好多,但是终究没有能抄的作业 hugo-theme-stack/config.yaml at master · CaiJimmy/hugo-theme-stack · GitHub 独立部署 | Waline waline/assets/waline.sqlite at main · walinejs/waline · GitHub 知乎 # 博客建站10 - 选择博客评论系统

系统架构

安装 waline

这里根据官方文档独立部署目录下的指引 以及评论区的提示,我就不走多余的路。直接拉取官方镜像 直接写 docker-compose.yml

显示已折叠代码(17 行)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
services:
  waline:
    container_name: waline
    image: lizheming/waline:latest
    restart: always
    ports:
      - 8360:8360
    volumes:
      - ${PWD}/data:/app/data
    environment: 
	  TZ: 'Asia/Shanghai' 
	  SQLITE_PATH: '/app/data' 
	  JWT_TOKEN: 'Your token' 
	  SITE_NAME: 'Your site name' 
	  SITE_URL: 'https://example.com' 
	  SECURE_DOMAINS: 'example.com' 
	  AUTHOR_EMAIL: '[email protected]'

这里配置的环境变量似乎都没怎么用上。说实话我没看明白这个配置。直接运行后。在上一篇文章提到的 nginx 中进行反代。

[!TIP] 这里我刚开始犯个小错误,nginx 刚开始反代的 127.0.0.1 但是访问不到,因为这里容器都没有用 host网络。所以在bridge下 宿主机的 ip 需要查看一下 在容器内执行,ip route | grep default 因为我nginx 那里用的不是默认的网段。默认一般宿主机是 执行docker network inspect bridge | grep Gateway可以看到 "Gateway": "172.17.0.1"

所以 nginx 需要反代 172.18.0.1:8360

还有一点很重要。刚开始没注意。这里参考多数据库服务支持 | Waline 使用 SQLite 时需要下载 waline.sqlite 文件至合适的位置。之后在项目中配置如下环境变量。

随后测试就能用了。其他的功能后续再研究