supabase cliを使えるようにする

supabaseのテーブルから型を取得するのにcliを使うと便利らしいので導入する
supabase cliを使えるようにするには、dockerが必要のようなのでdocker desktopをインストールしようと思ったが、有料化されたみたいなので似たことができるrancher desktopを導入することに
rancher desktopインストール先 参考
インストール後に起動すると下記エラーが出て起動できない
Rancher Desktop is unable to start
Rancher Desktop cannot start because requirements are missing or not configured:
Requires WSL with kernel 5.15 or newer (have 0.0.0.0)
Please ensure all requirements are met and try again. Rancher Desktop will now close.
rancher desktopを使うにはwslが必要らしい
WSLについて
WSLはWindows上でLinuxのコマンドラインツールやGUIアプリケーションを直接実行できるようにする機能

UNIXとLinuxとは
Linuxを調べていると似た名前のUNIXというOSも存在するようだ、
どちらもWindowsやmacOSなどと同じOSの一種であり、UNIXは現在残っているOSの中で最も古いOS
で、さまざまなOSの基盤になった模様。
LinuxはUNIXをもとに開発されたOSの1つである
UNIXライクのOSがLinuxである
iosがUNIX系、androidがLinux系
想定している環境
UNIXは小さなコンピューターでの利用が想定されたOSで学術研究や開発などを目的に作られています。
対してLinuxは、ビジネスに利用することを想定して開発された。
ファイルシステム
UNIXとLinuxの違いの1つが、ファイルシステムです。UNIXではFFFS(Fat Fast File System)やZFS(Zettabyte File System)などが使われることが多い、
Linuxではext4(fourth extended file system)が使わるこれにより、機能面に違いが出ている
デフォルトシェル
UNIXとLinuxには、シェルという概念がある。シェルはコマンドを受け、カーネルへ命令を伝える部分。カーネルはLinuxオペレーティングシステムの中核部分を担い、ハードウェアとソフトウェアの通信を担当する
シェルにはさまざまな種類があり、UNIXとLinuxでは異なる種類のものが使われている、
UNIXではBsh(Bourne Shell)やtcshなどが使われることが多く、LinuxではBash(Bourne Again Shell)が使われることが主流。
参考

wsl Ubuntu rancherDesktop導入時エラーの解決方法
power shellでwsl --install を実行すると
インストール中: Linux 用 Windows サブシステム 致命的なエラーです。
というエラーがでる、これはHyper-Vが有効になっていないため起こっている
参考
有効化すると無事に起動できた、Ubuntuのインストールが始まる、
Ubuntuを起動すると下記エラーがでた
エラー文のURLへ飛び、kernel component を更新するとエラーが解消される
エラー解消後再起動すると
Installing, this may take a few minutes...
aasda few minutes. few minute
表示されるだけでユーザー登録画面が表示されなかったが、
ctrl+cを押したら表示された
Ubuntu設定参考

rancher desktop
起動すると初期設定画面が出るので、 Docker CLI を使いたいのであれば、dockerd (moby) を選択する

npx supabase startで起動する
dockerの環境構築が終わったのでsupabase startを実行したが、
というエラーが出るこれはconfigi.toml
のanalytics
をオフにすれば良い
[analytics]
enabled = false
これでsupabase startは無事実行できた
参考
rancher desktopは起動させるだけでsupabase cliが効くようになります
初期化 -> /supabaseフォルダが作成される
$ npx supabase init
プロジェクトとリンクさせる
Project Settings > General > General settings > Reference ID
npx supabase link --project-ref プロジェクトのReference ID
例 npx supabase link --project-ref abcd12345
ここで以下のエラーがでた
これはpower shellではなく、コマンドプロンプトで実行すると解決する
パスワードが間違ってしまうバグのようだ
参考
型情報を/schema.tsに出力
npx supabase gen types typescript --linked > schema.ts