[Github] packages
github packages๋ ๋ค์ํ ํจํค์ง ์์คํ
๊ณผ์ ํธํ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ด๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก๋ private package๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ๊ฒ์ด๋ค.
Docker, Java Maven, ๋ท๋ท Maven, Ruby, nodejs์ npm ๋ฑ์ ์ ๊ณตํ๋ค.
๋ณธ ํฌ์คํธ์์๋ docker์ npm์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ง ๊ฐ๋ตํ ๋ค๋ค๋ณด๊ฒ ๋ค.
๋น์ฉ
๋น์ฉ์ github ์๋น์ค๋ค์ด ์ผ๋ ๊ทธ๋ ๋ฏ, ์ ์ก์ ํ์์ผ๋ก ๋๊ฐ๋ค.
๋ฌผ๋ก ๋ฌด๋ฃ ํ๋์์๋ ์ด๋์ ๋๋ ์์ ๋กญ๊ฒ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.

์ธ์ฆํ ํฐ ๋ฐ๊ธฐ (personal access token: PAT)
ํจํค์ง ์๋น์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๊ณตํต์ ์ผ๋ก ๊นํ ํ ํฐ์ ์ฌ์ฉํด์ผ ํ๋ค.
์ธํ
์ผ๋ก ๊ฐ์
personal access token ํญ์ผ๋ก ์ด๋.

์ ๋นํ ํจํค์ง ๊ถํ ์ฃผ๊ณ ๋ง๋ค๋ฉด

์ด๋ ๊ฒ ํ ํฐ๊ฐ์ด ๋จ์ด์ง๋ค.
๋๊ฐ๋ฉด ๋ค์ ๋ณผ ์ ์์ผ๋ ์ ๋ณด๊ดํ๋ค.
Docker ๋ฐฐํฌ
๋จผ์ ๊ธฐ๋ณธ ๋์ปคํ๋ธ์ ์ฌ์ฉ๋ฒ ๋ฑ์ ์์๋๋๊ฒ ์ข๊ฒ ๋ค.
๋ชจ๋ฅธ๋ค๋ฉด ๋จผ์ ์์๋ณด๊ธธ ๊ถํ๋ค.
์ฐธ์กฐ
https://blog.naver.com/sssang97/221996513575
๋จผ์ ๋ก๊ทธ์ธ์ ํ๋ค.
๊นํ๋ธ์์ ์ ๊ณตํ๋ ๋๋ฉ์ธ์ ghcr.io๋ผ์, ์ด๋ ๊ฒ ๋ก๊ทธ์ธ์ ์๋ํ๋ฉด ๋๋ค.
docker login ghcr.io -u ๋๋ค์
ํจ์ค์๋๋ ์๊น ๋ฐ์ ํ ํฐ์ ๋ฃ์ด์ค๋ค.
ghcr.io/์ ์ ๋ช
/์ด๋ฏธ์ง๋ช
์ ํํ๋ก ํ๊ทธ๋ฅผ ๋ถ์ฌ์ฃผ๊ณ , ํธ์ํ๋ฉด ๋์ด๋ค.
๋๋ ๊ทธ๋ฅ ์ฐ๋ถํฌ ์ด๋ฏธ์ง๋ฅผ ๊ทธ๋๋ก ์ฌ๋ ค๋ดค๋ค.
๊ทธ๋ผ ์ด๋ ๊ฒ ์ ์ฌ๋ผ๊ฐ ๊ฒ์ด๋ค.
์ฌ๋ผ๊ฐ ํจํค์ง๋ github ํจํค์ง ํญ์์ ํ์ธ ๊ฐ๋ฅํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋์ปค์ ๊ฒฝ์ฐ๋ ํ๋ผ์ด๋น์ผ๋ก๋ง ์ฌ๋ผ๊ฐ๋๋ฏ ํ๋ค.


Npm ๋ฐฐํฌ
npm ๋ฐฐํฌ ๊ฒฝํ์ด ์๋ค๋ฉด ์์๋๋ ๊ฒ์ด ์ข๋ค.
์ฐธ์กฐ
https://blog.naver.com/sssang97/222023436461
ํ๋ก์ ํธ ๋ฃจํธ๊ฒฝ๋ก์ .npmrc ๋ฑ์ผ๋ก ์ธ์ฆ๊ฐ์ ์์ฑํ๋ค.
//npm.pkg.github.com/:_authToken=ํ ํฐ๊ฐ

๊ทธ๋ฆฌ๊ณ package.json์ ์ข ๊ฑด๋๋ ค์ผ ํ๋ค.
์ด๋ฆ์ github ์ ์ ๋ค์์ ๋ฌ๊ณ


์ ์ฅ์๋ฅผ github ์ ์ฅ์๋ก ๋ฐ๊ฟ์ค๋ค.
"publishConfig": {
"registry": "https://npm.pkg.github.com"
}

๊ทธ๋ฌ๊ณ publishํ๋ฉด ๋์ด๋ค.


๊ทธ๋ผ ์ด๋ ๊ฒ ์ฌ๋ผ์์์ ๊ฒ์ด๋ค.
