初版
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 38 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
@@ -0,0 +1,121 @@
|
||||
# 如何搭建web版本obsidian
|
||||
|
||||
## 背景
|
||||
|
||||
最近大神开源了一个 ignis 项目,可以通过网页访问 obsidian,但是默认是 http,且无密码,对于公网无法安全使用。
|
||||
|
||||
下面这个方案完善了安全访问,采用了加密的 https,并且有需要用户名登陆才能访问。
|
||||
|
||||
## 具体步骤
|
||||
|
||||
### 申请一个免费的域名,比如 ob.xxxx.cc
|
||||
|
||||
[搞一个免费 10 年的二级域名,公网访问飞牛 NAS](https://mp.weixin.qq.com/s?__biz=MzI2MTA5NzM5MA==&mid=2247499770&idx=1&sn=a5a1a3d78f3d729a45aa44204bb02694&scene=21&poc_token=HJpGeGqjYSRgiB6T6FdBh23s-6Fcjn90eBjF5E-6)
|
||||
|
||||
### 通过反向代理 caddy,通过 https 访问 web 版本 obsidian
|
||||
|
||||
1. 创建 4 个文件目录
|
||||
|
||||
- vaults
|
||||
- data
|
||||
- obsidian-app
|
||||
- caddy-data
|
||||
2. 建立一个 caddyfile.txt 文件放到 caddy-data 目录
|
||||
|
||||
caddy 文件内容如下,注意:
|
||||
|
||||
- ob.xxxx.cc 要改成自己的域名
|
||||
- localhost 要改成自己服务器的 IP
|
||||
- 默认用户名:Bob
|
||||
- 默认密码:hiccup
|
||||
|
||||
```yml
|
||||
# 全局选项
|
||||
{
|
||||
# 全局使用alidns
|
||||
acme_dns alidns {
|
||||
access_key_id LTAI5tQfd6bBCHDR7HUjpWQR
|
||||
access_key_secret b74sGYcTuwcvfiiQpTZtNWp5gCAQds
|
||||
}
|
||||
# 使用dnspod token
|
||||
# acme_dns dnspod 37456,ejbe9tb5tiasjz2yu5u688vrwegpm
|
||||
# 使用cloudflare api token
|
||||
# acme_dns cloudflare v3ipam6idiwcmfub4iee4yjqyvykx
|
||||
|
||||
# 储存目录默认映射
|
||||
storage file_system /data/cert
|
||||
# 注意storage目录文件默认权限不允许其他人访问
|
||||
# 如果需要被其他程序访问,可以自己手动chmod -R
|
||||
|
||||
# 关闭http自动重定向,可避免出现80端口占用问题(可手动加重定向配置)
|
||||
auto_https disable_redirects
|
||||
|
||||
# 尝试申请Google CA
|
||||
# 你需要到Google获取eab key来使用,详见:https://pki.goog/
|
||||
# eab key仅仅是使用这个服务的权限与域名无关,不管是哪个账号申请,都是通用的
|
||||
# 申请eab key不用会自动过期
|
||||
# 如果你有Google domains,可以一键申请https://domains.google.com
|
||||
# 注意:你需要自己解决https://dv.acme-v02.api.pki.goog/的科学访问
|
||||
# email exmaple@gmail.com
|
||||
# cert_issuer acme https://dv.acme-v02.api.pki.goog/directory {
|
||||
# eab <EAB_密钥_ID> <EAB_HMAC_密钥>
|
||||
# }
|
||||
# 失败回退常规acme
|
||||
# cert_issuer acme
|
||||
|
||||
# 屏幕打印日志,需要调试的时候可打开
|
||||
# log {
|
||||
# output stdout
|
||||
# format console
|
||||
# level debug
|
||||
# }
|
||||
}
|
||||
ob.xxxx.cc {#这里要改成自己的域名
|
||||
reverse_proxy http://localhost:88 #这里要改成自己服务器的IP
|
||||
basic_auth {
|
||||
# Username "Bob", password "hiccup"
|
||||
Bob $2a$14$Zkx19XLiW6VYouLHR5NmfOFU0z2GTNmpkT/5qqR7hx4IjWJPDhjvG
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
3. 使用以下 docker compose 文件建立 docker 服务
|
||||
|
||||
```yml
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
ignis:
|
||||
image: registry.cn-hangzhou.aliyuncs.com/yue-images/ignis:latest
|
||||
container_name: ignis2
|
||||
ports:
|
||||
- "88:8080"
|
||||
environment:
|
||||
- OBSIDIAN_VERSION=1.12.7
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
volumes:
|
||||
- ./vaults:/vaults
|
||||
- ./data:/app/data
|
||||
- ./obsidian-app:/app/obsidian-app
|
||||
restart: unless-stopped
|
||||
caddy:
|
||||
pull_policy: always
|
||||
image: registry.cn-hangzhou.aliyuncs.com/yue-images/caddy:latest
|
||||
container_name: caddy
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- DNS=223.5.5.5,8.8.8.8
|
||||
volumes:
|
||||
- ./caddy_data:/data
|
||||
ports:
|
||||
# - '8000:80'
|
||||
- '8001:443'
|
||||
```
|
||||
|
||||
### 结果
|
||||
|
||||

|
||||
|
||||

|
||||
Reference in New Issue
Block a user