LoginSignup
7
0

More than 1 year has passed since last update.

M1 MacでDockerを使ってUbuntu環境上にMinicondaを導入する時にハマった

Last updated at Posted at 2022-04-16

結論

FROM 行に --platform=linux/amd64 を加える。

FROM --platform=linux/amd64 ubuntu:latest
# [以下省略]

経緯

M1 MacでDockerを使ってUbuntu環境上にMiniconda3をインストールしようとした。

Dockerfileおよびインストール用のシェルスクリプトは以下。

しかしビルド後 docker run してもipythonがunknownになった。
コンテナの中に入って確認してみると、/root/miniconda3/にはconda.exeしかなく、binディレクトリほかは生成されていなかった。
再度コンテナを生成する際にログを確認してみると、当然その後のpandasやipythonのインストールにも失敗していたことがわかった。

解決

こちらのstackoverflowの記事にたどり着いた。

Miniconda3のインストーラがx86-64とIntelのマイクロプロセッサ向けなので、Dockerコンテナの中のUbuntuがM1 Macと知らずにそのまま展開しようとするのが原因だった。
M1 MacであることをDockerコンテナに教えてあげるには、Dockerfileの FROM と ubuntu の間に --platform=linux/amd64 を入れてあげるとよかった。

FROM --platform=linux/amd64 ubuntu:latest
7
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
0