Azul Zulu Enterprise for AzureをUbuntuにインストールするには、以下の様な手順を踏みます。
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9 sudo apt-add-repository "deb http://repos.azul.com/azure-only/zulu/apt stable main" sudo apt-get -q update sudo apt-get -y install zulu-11-azure-jdk
しかし、Windows10(1804)*1のWSL上のUbuntu 18.04で実行すると、apt-key adv
コマンドを実行したところで以下の様なエラーになります。
[]:$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9 Executing: /tmp/apt-key-gpghome.Q3mT2gIxgQ/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9 gpg: connecting dirmngr at '/tmp/apt-key-gpghome.Q3mT2gIxgQ/S.dirmngr' failed: IPC connect call failed gpg: keyserver receive failed: No dirmngr
これはGitHubのIssue Ubuntu 18.04 gpg dirmngr IPC connect call failedに上げられているようにWSLの不具合で、他のIssueでのコメントによると、Windows10の最新アップデート(1809)では既に修正されているらしいです。*2
しかし、1809は例のファイル消失不具合の影響でロールアウトが大いに遅れていて、リリースはされたけどWindows Updateでの配信はまだ行われてないみたい…ということで、この場合の回避策が以下です。 --recv-keys
の後につけるキーを、curlコマンドのURLのクエリーにつけて、ダウンロードしたキーをパイプしてapt-key
コマンドにつなぐようにします。後は所定の手順と同様です。
curl -sL "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" | sudo apt-key add sudo apt-add-repository "deb http://repos.azul.com/azure-only/zulu/apt stable main" sudo apt-get -q update sudo apt-get -y install zulu-11-azure-jdk
以上、WSLのUbuntu 18.04でapt-keyコマンドを実行した時に「IPC connect call failed」のエラーになった時のワークアラウンドについてでした。