Graviton2のおかげでarm64アーキテクチャの環境が手軽に使えるようになりました。性能面もそうですがIntelやAMDより安価というメリットもあり積極的に使っていきたいと思っています。今のところスポットインスタンスで使えないのがちょっと痛いですが、使う人が増えてくればそのうち対応するでしょう。
とりあえずt4gインスタンスを立てて使おうとしたところdocker-composeのインストールでしばらく詰まったのでメモ。
環境
- t4g.microインスタンス
- Amazon Linux 2
何が問題か
Dockerはyum
でAWS公式提供のものをインストールできるので問題ないのですが、docker-composeは自分でインストールする必要があります。
で、リリースされているものはというと、ここにあるようにx86_64のものしか用意されていません。なので、pip
でインストールを試みます。
$ sudo yum install python3 python3-dev python3-pip gcc make openssl-devel libffi-devel
$ sudo pip3 install -U docker-compose
これが通らない。Cryptographyというパッケージのビルドでこけます。
どうしたか
Amazon Linux 2で普通にインストールできるOpenSSLは1.0系のものですが、CryptographyはOpenSSL1.0のサポートを打ち切ったようでした。このため、OpenSSL1.1系を用意する必要がありました。
$ sudo yum remove openssl openssl-devel
$ sudo yum install openssl11 openssl11-devel openssl11-libs
$ sudo pip3 install wheel
$ sudo pip3 install -U docker-compose
works for me.