gitlab-runnner ๋ฅผ ํ์ฉํ docker ๋ฐฐํฌ
์ฌ๊ธฐ์๋ gitlab ๊ณผ gitlab-runner (+ nexus) ๋ฅผ ์ค์นํ์ฌ ๋๋ ์๋์ ์ผ๋ก ๋น๋์ ๋ฐฐํฌ๊ฐ ๋๋๋ก CI (Continuous Integration) / CD (Continuous Deployment) ๋ฅผ ๊ตฌ์ฑ ํด๋ณด์์ต๋๋ค.
์ฌ๊ธฐ์๋ gitlab ๊ณผ gitlab-runner (+ nexus) ๋ฅผ ์ค์นํ์ฌ ๋๋ ์๋์ ์ผ๋ก ๋น๋์ ๋ฐฐํฌ๊ฐ ๋๋๋ก CI (Continuous Integration) / CD (Continuous Deployment) ๋ฅผ ๊ตฌ์ฑ ํด๋ณด์์ต๋๋ค.
๊นํ ๋ธ๋ก๊ทธ๋ฅผ ์์ฑํ๊ธฐ ์ํด์๋ ๋ก์ปฌ pc ์์ ruby ๋ฅผ ์ค์นํ๊ณ jekyll ํ๊ฒฝ ๊ตฌ์ฑ์ ํด์ผ ํฉ๋๋ค. ์ค๋ ํฌ์คํ ์ ์์ฑํ ๋ ค๊ณ ํ์ผ๋, windows ๋ฅผ ๋ค์ ๊น์๋ฒ๋ ค์ ์ธํ ํ๊ธฐ๊ฐ ๋๋ฌด ๊ท์ฐฎ๋๋ผ๊ตฌ์... ์ด๋ฒ ๊ธฐํ์ ์ ์ฒ๋ผ ์์ฃผ ์ด๋ฌ์ ๋ฆฌ ์ฎ๊ฒจ๋ค๋๋ ์ฌ๋๋ค์ ์ํด ์ด๋ฒ ๋ด์ฉ์ ์์ฑํ๊ฒ ๋์์ต๋๋ค.
์ค๋ ์ด ์๊ฐ์ phaser ๊ฒ์ ํ๋ ์์ํฌ๋ฅผ ์ด์ฉํด์ โ๋ผ์ดํ ๊ฒ์(Life of Game)โ ๋ฅผ ๊ตฌํํ๋ ๊ฒ์ ๋ชฉํ๋ฅผ ํ๊ฒ ์ต๋๋ค.
์ต๊ทผ์ react ํ๋ก์ ํธ์ typescript ํ๋ก์ ํธ๋ฅผ ๊ฑฐ์น๋ฉด์ webpack ์ ์์ฃผ ์จ๋ณด๊ณ ์ธํ ํด๋ณด๊ฒ ๋์์ต๋๋ค. ์ฒ์์๋ ๋์์ ์๋ฆฌ๋ณด๋ค `์์ฆ ์๋๊ฐ๋ ํ๋ก ํธ์๋ ๊ฐ๋ฐ ํ๊ฒฝ ๋ง๋ค๊ธฐ`๋ผ๋ ๋ชฉํ๋ก ์ธํ ํ์์ผ๋ ์ ์ ์ฒ์๋ถํฐ ์ฐจ๊ทผ ์ฐจ๊ทผ ๋ง์ง๋ฉด์, ๋ด๊ฐ ์ด๊ฑธ ๋ชฐ๋๊ตฌ๋ ์ด๊ฒ ์ด๋ฐ ๋ป์ด์๊ตฌ๋ ์์ผ ๋๋ผ๊ฒ ๋์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก PHP ์ ๋ฐฐ์ด์ ์ผ๋ฐ์ ์ธ ArrayList ๊ตฌํ์ด ์๋๋ผ, Hash Table ์ ๋๋ค. ๊ทธ๋ฌ๋ค๋ณด๋ php ๊ฐ๋ฐ์๋ค์ ๋ฐฐ์ด์ ๋ฐฐ์ด์ฒ๋ผ ์ฐ์ง ์๊ณ Hash Table ์ฒ๋ผ ์ด์ฉํ๋ ๋ถ๋ค์ด ๋ง์ต๋๋ค. (๋์๊ฑฐ ์๋์์!)
์ํ ๊ด๋ฆฌ๋ ๋ฌด์์ผ๊น์? ์ํค ์ค๋ช ์ ๋ฐ๋ฅด์๋ฉด ํ ์คํธ ํ๋ ๊ฐ์ ์ฌ๋ฌ๊ฐ์ UI ์ปจํธ๋กค์ ์ํ๋ฅผ ๊ด๋ฆฌํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
ํ์ผ ์ ๋ก๋ ๊ตฌํ์ด์ผ ๋ง์ด๋ค ํด๋ณด์ จ๊ฒ ์ง๋ง ์ฉ๋์ด ์ปค์ง๋ค๋ฉด? ์๊ฐ๋ณด๋ค ์ ๊ฒฝ์ธ๊ฒ ๋ง์์ง๋๋ค.