0015. ローカルに何もインストールすることなくColabからFly.ioにCouchDBをセットアップする

さてみなさんこんばんは、きみのぶです。
Obsidianの愛用法はいったんお休みして。なんとなく思いついて、やってみたら出来てしまった方法を共有しておきます。
(個別の記事にしないのが、まだこれがセーフかどうかわからんので……なので英語記事もまだ書いてないです。ホヤホヤなネタです。あかんでしょと言う方は教えてください。)

みなさん、GoogleのColaboratoryというサービスは使用していますか? 僕はめちゃくちゃ使ってます。
Jupyter NotebookのGoogle版という感じのサービスで、PythonのスクリプトをGoogleのマシンで実行することができるサービスです。ちょっとした電卓代わりにめちゃくちゃ便利で。少し前にはStable Diffusionを動かしたりなんて記事もよく見ましたよね。僕もやりました。

さて、このColab、実はUbuntuが動いていて、行頭に!をつけるとシステムコマンドと称してLinuxコマンドが動きます。
勘のいい方はもうわかったと思いますが、これを使って、ローカルにクライアントをインストールすることなく、また半自動でFly.ioにCouchDBをインストールすることが出来るんじゃないか、という事を検証した記事がこちらになります。ええんかなこの使い方……。1まぁこんなにCouchDBのインスタンスを作って壊してしているのは僕ぐらいだと思いますが。

で、出来てしまった。まずは成果物がこちらです。
https://gist.github.com/vrtmrz/6715f01bf038c9f66e9d2768c3fdee36

※2023.09.12 こちらが新しい方です。どうして新しい方を使わないといけないかはすぐ記事を書きます。

https://gist.github.com/vrtmrz/37c3efd7842e49947aaaa7f665e5020a

Fly.ioのアカウントさえ持っていれば、上から順番にポチポチしていくとCouchDBをデプロイできます。まぁ読んでからでも遅くない。

ちなみに、GistにあるOpen in Colabボタンから、自分のColabに取り込むことが出来ますよ。

具体的な手順 #

  1. まず1つ目のセルにある、ユーザー名とパスワードを必ず変えてください。リージョンは日本のリージョンですが、どこか希望があればそこに変更してください。
    Pasted image 20221029234135.png
  2. 2つめのセルは何度か実行するためのものです。エラーが表示されますが正常です。やり直すときはここからやり直してください。
  3. 3つ目のセルが大切です。Fly.ioのクライアントをインストールし、ログインします。
    実行するとこんな感じでURLが出ます。 青いのはご覧の通りリンクなので、クリックして飛べます。
    Pasted image 20221029234350.png
    飛ぶとFly.ioの認証画面が表示されます。青い方のボタン(またはログインボタンかな)を押すと、なんか成功したっぽいメッセージが表示されます。
    Pasted image 20221029234313.png
    そのタブを閉じてColabに戻るとこんな感じでログインが完了してます。
    Pasted image 20221029234730.png
  4. サーバとデータ用のボリュームを作ります。ポチッと押すだけ。ホスト名はあえてランダムで作られるものにしています。(これ無料範囲内とはいえ課金対象なので、作りすぎないように気をつけてください。確認の方法と削除方法は一応最後に書きました。)
    Pasted image 20221029234833.png
  5. 設定ファイルを変えます。これも自動です。
    Pasted image 20221029235004.png
  6. 設定内容の表示です。
    Pasted image 20221029235039.png
  7. あとはポチポチと押していけばヨシです。
    Pasted image 20221029235109.png
  8. 最後まで無事に進むと、{"ok":true}という表示がでます。出たら、一つ前に出ているURLがあなたのCouchDBサーバです。
    Pasted image 20221030001014.png
  9. あとは、このURLをSelf-hosted LiveSyncに入れて、ユーザーIDとパスワードを設定、Database nameに好きな名前を入れた後、
    Pasted image 20221030001631.png
    Check database configurationを押して、出てきたFixを全部消せば、もうLiveSyncが使えます。
    Pasted image 20221030001704.png
  10. Fly.ioのdashboard を開くと、今存在するアプリが表示されます。削除する場合は該当のアプリを選んだ後、Settings -> Delete your appと進んでアプリ名を入力して、Yes, delete itボタンをクリックします。
    Pasted image 20221030001236.png

さて、という感じでCouchDBを簡単に作ることが出来ました。僕はバッチファイルを使っていたのですが、さすがにこの簡単さを覚えてしまうとColab使おうかなという気持ちになります。こうすると、推奨環境も統一できますしね。
ちなみに、サーバログもFly.ioのDashboardから見ることが出来るので、超楽です。

みなさん、さぁこれでIBM Cloudantだけではなく、Self-hostな開発にも参加してください(笑)

2022/10/30 45分


  1. ちなみに、規約では禁止されていなさそう。規約を確認しないといけない使い方があかんというのは同意です。 Pasted image 20221029233943.png ↩︎