Open24
Ruby 2.1 系が動作する環境を Apple Silicon Mac に作成する
ピン留めされたアイテム
モチベーション
レガシーなアプリケーションをメンテする環境が必要だけど、Apple Silicon Mac で Ruby 2.1 系のビルドが難しいので多少重くても良いので x86 エミュレートな環境を持っておきたい。
ピン留めされたアイテム
あれ? ruby:2.1-slim で良いのでは?
ここまで来て、公式 Docker Image でも良いのでは?という点に気づいた。
$ docker run --rm -it --platform linux/amd64 ruby:2.1-slim ruby -v
ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-linux]
~/work/x86-docker
Ruby 2.1 系がリリースされていた時期は 2016 年頃
以降 ruby:2.1-slim での話
apt update
が失敗する
Image に含まれているパッケージのインデックスファイルの場所が古いため書き換える
(参考記事)
以下を Dockerfile に追加する
RUN echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list \
&& echo "deb http://archive.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list \
&& apt-get update
GPG error
docker build
でワーニングが出た
9.381 W: GPG error: http://archive.debian.org stretch/updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AA8E81B4331F7F50 NO_PUBKEY 112695A0E562B32A
9.381 W: GPG error: http://archive.debian.org stretch Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 04EE7237B7D453EC NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY EF0F382A1A7B6500
上の記事を参考に以下を追加した
RUN apt-get update \
&& apt-get install -y --force-yes debian-keyring debian-archive-keyring