Nexus - goraebab/docker GitHub Wiki
sonatype/nexus3
ํฌํธ ์ค์
ํฌํธ | ์ฉ๋ |
---|---|
8081 | Nexus์ ์ |
8082 | docker image (PULL/PUSH) |
๋ณผ๋ฅจ ์ค์ nexus official image ์์ user ๋ฅผ 200 ์ผ๋ก ์ฌ์ฉํจ
mkdir ~/nexus-data && sudo chown -R 200 ~/nexus-data
์คํ
docker run -d -p 8081:8081 -p 8082:8082 --name nexus -v /home/nexus-data:/nexus-data sonatype/nexus3
Docker Registry
Docker Image๋ฅผ ๊ด๋ฆฌํ๋ ํ๋ก์ ํธ
- group : ์ฌ๋ฌ๊ฐ์ repository ๋ฅผ ๋ฌถ์
- hosted : docker Registry
- proxy : docker hub ๋๋ ์ฌ์ค docker registry ์บ์์ฉ๋
Name : docker-registry
HTTP : 8082
Enable Docker V1 API : ์ฒดํฌํด์ผ๋ง HTTP ํต์ ์ด๊ฐ๋ฅ v2๋ https๋ง ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ v1์ ์ฌ์ฉ
๊ตฌ์ถ๋ Nexus ์ ์ฅ์๋ฅผ ์ด์ฉํ ์ ์๋๋ก insecure-registry ์ต์ ์ ๋ถ์ฌ ํด์ผํจ
CentOS๊ธฐ์ค
/etc/docker/daemon.json
$ sudo mkdir -p /etc/docker
$ sudo vi /etc/docker/daemon.json
{
"insecure-registries": ["127.0.0.1:8082"]
}
*Mac ๊ธฐ์ค *
์ค์ ํ docker ์ฌ์์
docker login -u admin -p admin123 127.0.0.1:8082
- Docker Hub์์ ๋ฐ์ Hello-world Image ํ๊น
- Nexus ๋ ํ์งํ ๋ฆฌ PUSH
- Nexus ๋ ํ์งํ ๋ฆฌ์ ๋ด๊ธด Image PULL
NPM ๋ ํ์งํ ๋ฆฌ๋ก ๋ง๋ค๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์ํ๋ค https://blog.sonatype.com/using-nexus-3-as-your-repository-part-2-npm-packages
- ๊ฐ์ธ์ฉ(npm-private)
- ๊ณต์์ฉ(npm-registry)
- ํ๋์ URL์์ ๊ฐ์ธ, ๊ณต์์ฉ ์ ์ฅ์๋ฅผ ์ ๊ณตํ๋ ๊ทธ๋ฃน์ฉ ์ ์ฅ์(npm-group)
Create New Repository ์ ๊ฐ๋ฉด, ๊ฐ๊ฐ npm-private๋ npm-hosted, npm-registry๋ npm-proxy, ๊ทธ๋ฃน์ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ ํ, private์ hoted ๋ฅผ ๋ชจ๋ ๊ทธ๋ฃนํ
ํ ์คํธ
npm --registry http://0.0.0.0:8080/repository/npm-group/ install -g vue
npm ERR! code E401
npm ERR! Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"
์์ ๊ฐ์ด ์๋ฌ๊ฐ ๋ฌ์ ๊ฒฝ์ฐ, ๋ฅ์์ค๋ก ๊ฐ์ Security-Realm์ npm Bearer Token Realm ๋ฅผ ์ถ๊ฐ