Closed6
litestreamでcloudflare r2にレプリケートする
環境はUbuntu 22.04.1 LTS
dockerコンテナでlitestreamを動作させる
R2でバケットとAPIトークンを作成する。アクセス許可は編集。
APIトークンで作成したアクセス キー IDとシークレット アクセス キーはメモしておくこと。作ったタイミングにしか表示されない。
litestreamのdockerイメージはlitestream/litestream
litestreamのymlコンフィグファイルは下記のように書く
dbs:
- path: レプリケートするdbのファイルパス
replicas:
- type: s3
endpoint: r2のバケットの画面で確認したurlを書く
bucket: バケット名
path: バケットに作成される親ディレクトリ名のようなやつ
region: auto
access-key-id: ここに作成したアクセスキーIDを書く
secret-access-key: ここに作成したシークレットアクセスキーを書く
sync-interval: デフォルトだと1sなので変えたいときには書く
endpointを書かないとAWSのs3だと判定されるので、s3互換ストレージの場合は必須
docker-composeファイルは以下のような感じ
version: '3.9'
services:
litestream:
image: litestream/litestream
volumes:
- type: bind
source: 上の工程で作ったlitestreamのymlのファイルパス
target: /etc/litestream.yml
- type: bind
source: ./sqlite
target: litestreamのpathに書いたパスになるように書く
command: replicate
このスクラップは2023/02/27にクローズされました