trilium

-
2022-07-23

Trilium

  Trilium 是一个笔记软件,我用过很多笔记软件,但是只有Trilium开源且有服务端,可以和服务端同步,并且可以共享笔记,且有个大佬前段时间突发奇想把这个分享页面改造成博客,但是缺点还是有的,毕竟常用的wordpress不仅是博客,还有一些安全策略和插件

部署

官网地址 
汉化地址 
汉化容器部署(汉化版本往往低于官网版本)

version: '3'
services:
 trilium-cn:
   image: nriver/trilium-cn
   restart: always
   ports:
     - "8080:8080"
   volumes:
     # 把同文件夹下的 trilium-data 目录映射到容器内
     - ./trilium-data:/root/trilium-data
   environment:
     # 环境变量表示容器内笔记数据的存储路径
     - TRILIUM_DATA_DIR=/root/trilium-data
   # 可选功能: 健康检查。需要启用的话,把下面的注释去掉
   #healthcheck:
   #  test: ["CMD-SHELL", "curl --fail http://localhost:8080/api/health-check | jq -e '.status == "ok"' || exit 1"]
   #  interval: 30s
   #  timeout: 10s
   #  retries: 3

官网容器部署

version: "3.3"

services:

    trilium:
        image: elestio/trilium:${SOFTWARE_VERSION_TAG}
        restart: always
        environment:
            - TRILIUM_DATA_DIR=/home/node/trilium-data
        ports:
            - "172.17.0.1:28080:8080"
        volumes:
            - ./data:/home/node/trilium-data

来自东东大佬的博客主题包 
https://github.com/dvai/Ankia-Theme/releases

在笔记页面直接导入笔记就行了 
注意: 
导入时关闭「safe import」选项;汉化版本就是导入时的第一个选项,取消勾选


Caddy反向代理

通过反向代理可以方便的把本地url反向代理到外网环境访问,caddy的优势是自带ssl证书不需要自己手动配置

直接系统安装caddy 
https://caddyserver.com/docs/install

容器安装caddy

services:
 caddy:
   image: caddy
   network_mode: "host" #因为caddy可能用的地方多这里用host模式
   restart: unless-stopped
   ports:
     - "80:80"
     - "443:443"
     - "443:443/udp"
   volumes:
     - ./Caddyfile:/etc/caddy/Caddyfile
     - ./site:/srv
     - caddy_data:/data
     - caddy_config:/config

volumes:
 caddy_data:
 caddy_config:

注意,要提前创建一个Caddyfile文件不是目录 
写入Caddyfile配置文件如果格式不对可以

caddy fmt --overwrite /etc/caddy/Caddyfile #格式化格式
docker exec -it [your_caddy_container_name] caddy reload #重载配置文

caddy配置文件写法

域名1 {
        reverse_proxy localhost:8080
}

#这里用域名1反向代理 localhost:8080
域名2 {
        rewrite / /share/Index
    

        @notShare {
        not path /share
    }
        rewrite @notShare /share{uri}
        reverse_proxy localhost:8080
}
#这里用域名二,二级代理 localhost:8080/share/Index
配置IP访问的静态页面

http:// {

    root * /usr/share/caddy

    encode gzip

    file_server

}


配置带域名的静态页面

域名 {

    root * /usr/share/caddy

    encode gzip

    file_server

}



配置带域名的反向代理

域名 {

    reverse_proxy 127.0.0.1:8080

    encode gzip

}



配置带域名的重定向
域名 {

    redir https://baidu.com{uri}

}



配置带域名的php动态站点

域名 {

    root * /usr/share/caddy/wordpress

    encode gzip

    php_fastcgi php:9000

    file_server

}

友链部分,友链部分需要单独设置关于的转跳,而且友链里面的东西需要要用逗号分隔


目录