@ledsun blog

無味の味は佳境に入らざればすなわち知れず

Laravelの門を叩く

あらためてLaravelの門をくぐろうとしてdocker runコマンドの--pullフラグにつまずく - @ledsun blogの続きをします。

curl -s 'https://laravel.build/example-app?php=82' | bash

を実行します。

[+] Running 0/0
 ⠋ selenium Pulling                                                                                                                                 0.1s
 ⠋ redis Pulling                                                                                                                                    0.1s
 ⠋ meilisearch Pulling                                                                                                                              0.1s
 ⠋ mysql Pulling                                                                                                                                    0.1s
 ⠋ mailhog Pulling                                                                                                                                  0.1s
error getting credentials - err: exec: "docker-credential-desktop.exe": executable file not found in $PATH, out: ``
[+] Building 0.7s (3/3) FINISHED
 => [internal] load build definition from Dockerfile                                                                                                0.0s
 => => transferring dockerfile: 2.74kB                                                                                                              0.0s
 => [internal] load .dockerignore                                                                                                                   0.0s
 => => transferring context: 2B                                                                                                                     0.0s
 => ERROR [internal] load metadata for docker.io/library/ubuntu:22.04

エラーが起きています。 docker-credential-desktop.exeでググります。 【メモ】Docker Desktop for Windowsで”docker-credential-desktop.exe: Invalid argument” | Takeshi Yonezu を見つけました。

Issue #12355でコメントされている対応方法のうち、2つが簡単でエラーを解消することができています。

  • $HOME/.docker/config.jsonを削除してしまう。
  • $HOME/.docker/config.jsonを編集して、{"credsStore": "desktop.exe"}を{"_credsStore": "desktop.exe"}にする。

Docker Desktopの残骸のようです。 rm ~/.docker/config.jsonします。

curl -s 'https://laravel.build/example-app?php=82' | bash

をもう一度実行すると、すごい勢いでいろんなイメージをpullして環境構築されていきます。 普段使っているRuby on Railsに比べると大分豪快です。

つづいて指示に従ってcd example-app && ./vendor/bin/sail upを実行します。

6379ポートがかぶっています。

エラーが起きています。

Error starting userland proxy: listen tcp4 0.0.0.0:6379: bind: address already in use

ローカルで動いているRedisとポート番号が被っています。 初手でRedisまで連れてくるんですね。

sudo service redis stopして、もう一度

80番ポートが被っています。

WindowsApacheを起動しているのを忘れていました。 一旦ここまでです。