Gemini CLI in Docker on Raspberry Pi
gemini-cliをラズパイの上のdockerの上で動かしてみた

概要
巷が賑わっている

この手のAIエージェントはどうも環境を壊されるんじゃないかという不安がつきまとう.
とりあえず試すならコンテナでないと許せないのでやってみた.
ラズパイ(Raspberry Pi 4) の上で動かす場合,ヘッドレスだと認証でひと癖あるます.
結論
※ 20250710現在はこんなことしなくても認証突破できるようになってる(あとあとがき参照)
.gemini
を引きずり回せばいける.

経緯
ラズパイの上で,とりあえずdocker composeで立てる.

nodeのコンテナを使ってnpm installするDockerfileを書くだけでOK.問題はこのあと.

ラズパイは完全ヘッドレスでブラウザを持っていないので,本来ここでログイン画面が立ち上がるわけだが,そうはいかない.
これは予想がついていたが,飛べなかった用にURLを載せてくれていてそれを踏めば解決すると思ってた.ブラウザがないと完全にNGらしい.いくら待ってもこれ以上なにも起きない.(※20250720 今はできる)
諦めてAPIキーを発行するしかない.ただ,鍵を管理するのはめんどくさいのでどうにかしたい.
まあとりあえずいったん手元のMacで認証フローを踏んでみる.
ここでも環境が汚れるのは許せないので適当なディレクトリを切ってnpm installする

これで実行して,普通のフローでログインして認証する

そうすると,ホームディレクトリに.gemini
ディレクトリができる.まあそんな気がした.

この中に設定とか認証情報を保持してるっぽいので,これをラズパイに持っていけばいけるのでは?

あっちこっちに認証情報を引き回すのもどうかと思っているが,ご愛嬌
ラズパイでもう一回やってみる.

いけた
あとがき
Issueが上がってるので,そのうち解決しそう
しかも,同じような方法ですでにコメントされとりまひた
あとあとがき (20250720更新)
今ならCLIでログインURLが表示されて,ログインフローを踏める.

ブラウザでログインしたら認証コードが出るのでターミナルに打てば認証できる.これを待ってた.

すばらしい.この記事の有用性が見事にかき消された.