Contents
ARM(主にラズパイ)で AWX をどうしても動かしてみたかったのでAWXのARM64版イメージを作ってみました。
awx-arm64arch
ビルド方法
ビルド環境の準備
ラズパイでも出来なくはないですが、ビルドするのに数時間かかるので今回はAWS(EC2)にあるRHEL 7.6のARM AMIを使ってビルドしました。
今回はビルドするだけなので、SELinuxは無効化しています。
必要なパッケージのインストール
リポジトリを有効化します。
1 2 3 4 |
[root@ip-172-31-31-111 ~]# yum repolist all [root@ip-172-31-31-111 ~]# yum-config-manager --enable 'Red Hat Enterprise Linux 7 for ARM - Extras (RPMs) from RHUI' --enable 'Red Hat Enterprise Linux 7 for ARM - Optional (RPMs) from RHUI' [root@ip-172-31-24-131 ~]# rpm -ivh https://dl.fedoraproject.org/pub/epel/7/aarch64/Packages/e/epel-release-7-11.noarch.rpm |
必要なパッケージをインストールいします。
1 2 3 |
[root@ip-172-31-31-111 ~]# yum -y install git ansible docker python-pip python-devel gcc [root@ip-172-31-31-111 ~]# pip install docker-compose |
Docker起動
Dockerを起動します。
1 2 |
[root@ip-172-31-24-131 ~]# systemctl start docker |
リポジトリクローン
ビルド用のリポジトリをクローンして指定のバージョンでブランチを作成します。
1 2 |
[root@ip-172-31-24-131 ~]# git clone https://github.com/sky-joker/awx-arm64arch.git |
イメージビルド
ARM64向けのイメージをビルドします。
1 2 3 4 5 |
[root@ip-172-31-24-131 ~]# cd awx-arm64arch/ [root@ip-172-31-24-131 awx-arm64arch]# git checkout -b 4.0.0 refs/tags/4.0.0 [root@ip-172-31-24-131 awx-arm64arch]# cd installer/ [root@ip-172-31-24-131 installer]# ansible-playbook build.yml -i inventory |
問題なく処理が完了すれば以下のイメージが作成されています。
1 2 3 4 5 6 7 8 9 |
[root@ip-172-31-24-131 installer]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE awx_task 4.0.0 6e6cd522fcc7 30 seconds ago 1.62 GB awx_task latest 6e6cd522fcc7 30 seconds ago 1.62 GB awx_web 4.0.0 48cf7f00d8e3 36 seconds ago 1.59 GB awx_web latest 48cf7f00d8e3 36 seconds ago 1.59 GB awx_sdist_builder 4.0.0 213651cc323f 30 minutes ago 617 MB docker.io/centos 7 7a51de8a65d5 7 weeks ago 238 MB |
後は、DockerHubなどにアップして管理します。
簡単に動作確認したもの
ARM64のイメージを以下にアップしてあります。