<aside> ๐ก Server: RaspberryPi4, Ubuntu 20.04 LTS(ARM64), 8GB RAM
</aside>
๋ด ์๋ฒ๋ RasbperryPi 4์ Ubuntu 20.04 LTS ๋ฒ์ ์ด ๊น๋ ค์๋ ์๋ฒ์ด๋ค.
RaspberryPi 4๋ ARM64 Bit ์ํคํ ์ฒ๋ฅผ ๊ฐ์ง๊ณ ์์
ํํ์ด์ง์ ๋งจ ์ฒซ์ค๋ถํฐ Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit
๋ผ ์๊ฐ๋์ด ์์
์ฆ, Github Actions ์ค์น๋ฅผ ํ ๋, ์ฒ์์ผ๋ก ๋ณด์ฌ์ฃผ๋ ํ์ด์ง๋ ๊ธฐ๋ณธ ๊ฐ์ธ AMD64 ์ํคํ
์ฒ ๋ฒ์
์ธ ๋ฆฌ๋
์ค๋ฅผ ๋ณด์ฌ์ค์ผ๋ก ์ด์ ์ ์ ์ํด์ผ ํ๋ค
๋ด ์๋ฒ์์ docker buildx ls๋ฅผ ์
๋ ฅํ๋ฉด platform์ผ๋ก linux/arm64, linux/arm/v7, linux/arm/v6
๋ฅผ ์ง์ํจ.
<aside>
๐ก ํ์ฌ MySQL 8.0.2 ์ด๋ฏธ์ง๋ arm64 ์ํคํ
์ฒ๋ฅผ ์ง์ํ์ง ์๊ธฐ
๋๋ฌธ์ ์ด๋ฅผ ์ง์ํ๊ธฐ ์ํ ์
ํ
์ด ํ์
</aside>
์ฐธ๊ณ ์๋ฃ
ํ์ฌ Docker๊ฐ ์ง์ํ๋ ์ํคํ ์ฒ๋ฅผ ํ์ธ. ๋ง์ฝ, ARM ์ํคํ ์ฒ๋ง ์ง์ํ๊ณ ์์ผ๋ฉด AMD ์ํคํ ์ฒ๋ ์ง์ํด์ฃผ๊ธฐ ์ํด ๊ณ์ ์งํํ๋ค.
docker buildx ls
Docker ์ด๋ฏธ์ง ์์์ ๋ค๋ฅธ ์ํคํ
์ฒ์ ๋ฐ์ด๋๋ฆฌ๋ฅผ ์คํํ ์ ์๊ฒ ํด์ฃผ๋ ๋๊ตฌ์ธ tonistiigi/binfmt
์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ค.
docker run --privileged --rm tonistiigi/binfmt --install all
# ๋ง์ฝ ํน์ ์ํคํ
์ฒ๋ฅผ ๋ค์ด๋ก๋ ๋ฐ๊ณ ์ถ๋ค๋ฉด
docker run --privileged --rm tonistiigi/binfmt --install amd64
<aside> ๐ก CI/CD๋ฅผ ์ํ Github Actions Runner๋ฅผ ์๋ฒ์ ์ค์นํด์ผ ํ๋ค.
</aside>
Github Repository์์ Settings์ ๋ค์ด๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ ์๋์ ๋นจ๊ฐ์ ๋ฐ์ค์ Actions
๋ฅผ ํด๋ฆญ ํ Runners
๋ฅผ ํด๋ฆญ
New self-hosted runner ๋ฒํผ ํด๋ฆญ