Closed6

litestreamでcloudflare r2にレプリケートする

siroyakasiroyaka

環境はUbuntu 22.04.1 LTS
dockerコンテナでlitestreamを動作させる

siroyakasiroyaka

R2でバケットとAPIトークンを作成する。アクセス許可は編集。
APIトークンで作成したアクセス キー IDとシークレット アクセス キーはメモしておくこと。作ったタイミングにしか表示されない。

siroyakasiroyaka

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互換ストレージの場合は必須

siroyakasiroyaka

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にクローズされました