selfhost自部署指南

文章目录
  1. 1. bitwarden/self-host
  2. 2. RSS搜集
  3. 3. 照片同步

参考链接

Tcoo.cc - 精选开源自托管项目推荐与指南

Self-Hosted Software and Apps

主要是适合自己自部署的服务推荐还有两个自托管项目的网站

目前可以在Paas服务类似 fly.io和 render ,国内有aliyun,tencent云,但是完全没有限额

也可以使用esc,云主机来运行容器或者二进制文件

下面一fly.io的例子

bitwarden/self-host

使用bitwarden/self-host:2024.2.0-beta 来维护密码,之前经历过 lastpass 服务很慢,而且虽然声明加密但是也出现过泄密的情况,后面都是用的chrome,但是跨平台支持不行,而且在安卓和iOS下填充支持不足,后面一直使用 microsoft authenticator 有多个原因

  1. 大厂出品,而且微软在国内访问还算稳定
  2. 支持多平台
  3. 加密和支持two-factor 两步验证
  4. 对outlook账号安全相关的功能很全

但是目前2025.1 月不支持chrome,没有办法又要考虑下替代的选择

用了这么多密码管理器基本需求都清楚,主要是

  1. 可以自己部署(速度,安全,方便备份)
  2. 支持多客户端
  3. 支持多种登录协议方便后续拓展 两步验证,账号密码,passkey,存储 token和其他的账号信息

最后基本bitwarden是最符合

img

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
app = "keep-pass"
primary_region = "hkg"
swap_size_mb = 1024

[build]
image = "bitwarden/self-host:2024.2.0-beta"

[env]
BW_DB_PROVIDER = "sqlite"
BW_DOMAIN = "bitwarden.fly.dev"
BW_ENABLE_EVENTS = "true"
BW_ENABLE_SCIM = "true"
BW_ENABLE_SSO = "true"
BW_ICONS_PROXY_TO_CLOUD = "true"
HOSTNAME = "0.0.0.0"
BW_INSTALLATION_ID = ""
BW_INSTALLATION_KEY = ""

[http_service]
auto_start_machines = false
auto_stop_machines = false
internal_port = 8080
min_machines_running = 1
processes = ["app"]

[http_service.concurrency]
hard_limit = 200
soft_limit = 200
type = "connections"

[[mounts]]
destination = "/etc/bitwarden"
source = "bitwarden_data"

[[services]]
internal_port = 8080
protocol = "tcp"

[[services.ports]]
handlers = ["http"]
port = 80

[[services.ports]]
handlers = ["http", "tls"]
port = 443

RSS搜集

Freshrss

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
app = "fresh-rss"
kill_signal = "SIGINT"
kill_timeout = "5s"
primary_region = "hkg"

[build]
image = "freshrss/freshrss:1.20.1"

[env]
ADMIN_API_PASSWORD = "freshrss"
ADMIN_PASSWORD = "freshrss"
CRON_MIN = "*/20"

[experimental]
auto_rollback = true

[[mounts]]
destination = "/var/www/FreshRSS/data"
source = "freshrss_data"

[[services]]
internal_port = 80
processes = [ "app" ]
protocol = "tcp"

[services.concurrency]
hard_limit = 25
soft_limit = 20
type = "connections"

[[services.ports]]
force_https = true
handlers = [ "http" ]
port = 80

[[services.ports]]
handlers = [ "tls", "http" ]
port = 443

[[services.tcp_checks]]
grace_period = "1s"
interval = "15s"
timeout = "2s"

[[vm]]
cpu_kind = "shared"
cpus = 1
memory_mb = 256

照片同步

todo