Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arm64コンテナイメージの提供 #68

Open
RyuSA opened this issue Nov 28, 2021 · 5 comments
Open

arm64コンテナイメージの提供 #68

RyuSA opened this issue Nov 28, 2021 · 5 comments

Comments

@RyuSA
Copy link

RyuSA commented Nov 28, 2021

vvakame/reviewのコンテナイメージはいずれもamd64のコンテナイメージのみ提供されており、arm64のコンテナイメージが欲しい場合は自前でビルドする必要があります。

現在、自分はM1 Macの環境でDockerfileを下記の通り修正して自前ビルドして使っています。PDFビルド等の挙動に問題はありません。

- RUN curl -sL -o /tmp/pandoc.deb https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_DEB_VERSION}-amd64.deb && \
+ RUN curl -sL -o /tmp/pandoc.deb https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_DEB_VERSION}-arm64.deb && \

各種依存関係もarm64対応しており、また最近はarm64のマシンの利用も増えてきましたのでarm64対応のコンテナイメージの提供があると非常に助かります。

@vvakame
Copy link
Owner

vvakame commented Dec 4, 2021

リクエストありがとうございますー
multi platformなimageのビルドやregistryに対してのpushの知識を全然持ってないんですがやり方とかってご存知ですか?

@vvakame
Copy link
Owner

vvakame commented Dec 4, 2021

@RyuSA
Copy link
Author

RyuSA commented Dec 4, 2021

multi platformなregistryへのpushは、archを特に意識せずにpushすれば大丈夫です!Dockerhub等、マルチプラットフォームな配信ができるようになっているので

たとえば、Golangであれば「linux/386」「linux/amd64」「linux/arm/v5」の3つにarchに対応したイメージをホストしていたります。

https://hub.docker.com/_/golang?tab=tags

コンテナイメージによっては、タグ名で分けたりしているプロダクトもあったりしますが……vvakame/reviewに関して言えば、特に気にせずarch違えど同じタグでpush/shipして良いと思います。

@RyuSA
Copy link
Author

RyuSA commented Dec 4, 2021

ビルドに関しては、ARGとしてarchを指定できるようにしておきDockerfileの中でuname -mで初期値を与えてあげる……とかが良さそうに見えます🤔

github actionで自動化される場合は、たとえばこんな感じに記述することで実現できます。

https://github.com/RyuSA/simple-accesspoint/blob/main/.github/workflows/main.yaml#L30

@vvakame
Copy link
Owner

vvakame commented Dec 5, 2021

おーなるほど ありがとうございます ちょっと勉強してみます〜

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants