AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

生の lima から RancherDesktop + Docker に移行してハマったとこ 2 点

生の lima だとビルドできないプロジェクトが存在しており (/ が書き込み不可とかそういう系のやつ、回避する設定が結局わからなかった)、 RancherDesktop に移行したら解決したんだけど、移行時に詰まった点を書いておくなど。

docker.sock の参照先が lima 時代のままで Cannot connect to the Docker daemon at ... と言われる

自分の環境だと以下のような感じ。

❯ docker ps
Cannot connect to the Docker daemon at unix:///Users/donbulinux/.lima/docker_x86_64/sock/docker.sock. Is the docker daemon running?

ENV が更新されてないのかと思って source で再読み込みとか再起動したりしたけど解決されず悩んでいたんだけど、なんのことはなく環境変数に指定が残っている、という状態だった。

# lima to Docker
export DOCKER_HOST="unix:///Users/donbulinux/.lima/docker_x86_64/sock/docker.sock"

zsh にして prezto とか入れてから、読み込まれるファイルが複数存在して見通しが悪いのでなんとかならないかな、と思いつつなんともしていないのであった。

(.zsh_profile.zshrc だけ見ていたのが敗因だった)

dip provision (docker build) で permission denied になる

こんな感じ。

❯ dip provision
open /Users/donbulinux/.rd/docker.sock: permission denied

前述した socket の参照先問題は解決していて、 RancherDesktop の GUI でも動作しているし、 docker ps などすると一覧も参照できるのでプロセスも生きている。

で、なんでだろう、と思ったのだけどこれも似たような先人が居たのだった。

book-reviews.blog

ビルド時に buildx 使われるのがよくないらしく、環境変数で利用しないよう指定する事で回避できるとの事だったのでやってみる。

# RANCHER DESKTOP (disable DockerDesktop)
DOCKER_BUILDKIT=0

コレデヨイ。

追記: DockerDesktop で大丈夫な間はその方がいい

Docker 社の動向が分からなくて「環境更新のついでだから」と lima 系に移行したけど、正直なトコ、課金される事業規模でなければ DockerDesktop 使っておくのが面倒がない気がしている。

いやまあなんらかのリスク、というヤツを考えたら DockerDesktop やめたくなるのは理解できるし、僕もそうだったので……。