在fly.io部署Memos并自动备份数据库

参考项目

https://github.com/hu3rror/memos-on-fly

准备工作

1.注册FLY.IO
用以部署memos
2.注册B2C
https://www.backblaze.com/cloud-storage
用以同步备份memos数据库
新建BUCKET,并获取<keyId><applicationKey>

安装flyctl

Install flyctl
以WINDOWS为例

pwsh -Command "iwr https://fly.io/install.ps1 -useb | iex"

其他系统请参照官方

新建APP

初始化

flyctl launch

按照提示选择会生成一个FLY.TOML文件

编辑FLY.TOML

添加以下内容

[build]
  image = "ghcr.io/hu3rror/memos-litestream:latest"
#如果不需要备份数据库则可以选择官方的docker镜像ghcr.io/usememos/memos:latest
#使用官方镜像可以删掉env的部分
[env]
  # Details see: https://litestream.io/guides/backblaze/
  LITESTREAM_REPLICA_BUCKET = "B2C桶名称"     # change to your litestream bucket name
  LITESTREAM_REPLICA_ENDPOINT = "s3.us-east-005.backblazeb2.com"     # change to your litestream endpoint url
  LITESTREAM_REPLICA_PATH = "memos_prod.db"     # keep the default or change to whatever path you want

[[mounts]]
  source = "memos_data"
  destination = "/var/opt/memos"

[http_service]
  internal_port = 5230
  force_https = true
  auto_stop_machines = false
  auto_start_machines = true
  min_machines_running = 0

添加1g存储空间

flyctl volumes create memos_data --region hkg --size 1

添加密钥

将B2存储的密钥添加到fly的密钥存储中,
使用官方镜像可以忽略此步骤

flyctl secrets set LITESTREAM_ACCESS_KEY_ID="<keyId>" LITESTREAM_SECRET_ACCESS_KEY="<applicationKey>"

部署

执行

flyctl deploy

看到成功的提示可打开域名查看

演示地址

https://memosim.fly.dev/
绑定域名演示
https://imad.top

下载数据库

fly.io部署artalk或者memos后,使用SFTP下载SQLite 数据库

flyctl sftp get ./data/artalk.db #数据库路径

评论

  1. 1 年前
    2023-11-01 13:48:32

    白嫖才是硬道理,又给自己的VPS省一点资源!

    • 博主
      老张博客
      1 年前
      2023-11-04 15:24:53

      没错,哈哈~

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇