패키지 액세스를 일부 사용자들로 제한하거나, 폐색망 조직에 패키지 레지스트리 서버를 설정하려는 경우 자체 패키지 레지스트리 서버를 설정할 수 있습니다.
패키지 개발을 마친 후 다른 사용자들에게 공유하려는 경우 다음과 같은 여러 옵션을 이용할 수 있습니다.
||
| |-|
| | Compressed file | zip 파일을 다른 Unity 사용자에게 배포할 수 있습니다. 이렇게 하면 다른 사용자가 본인 컴퓨터의 로컬 폴더에 zip 파일의 압축을 해제한 후 디스크에서 패키지로 설치할 수 있습니다. |
|Tarball| 타르볼을 다른 Unity 사용자에게 배포할 수 있습니다. 이렇게 하면 로컬 타르볼에서 패키지를 직접 설치할 수 있습니다. |
| Git URL | 지원되는 프로토콜 중 하나를 사용하여 Git 저장소에 대한 링크를 배포할 수 있습니다. 그런 다음 사용자는 Git URL을 사용하여 패키지를 설치할 수 있습니다. Unity 패키지 관리자가 GitHub, GitLab과 같은 Git 저장소 호스팅 서비스에서 패키지를 가져올 수 있기 때문입니다. |
| Scoped Registry | npm 퍼블리시 커맨드를 사용하여 패키지를 호스팅하고 해당 레지스트리에 퍼블리시하도록 패키지 레지스트리 서버를 설정할 수 있습니다. 그런 다음 패키지의 소비자는 프로젝트에서 범위 지정 레지스트리 구성을 설정하여 자체 패키지 레지스트리에서 커스텀 패키지를 가져올 수 있습니다.
Unity 패키지 관리자는 npm 프로토콜을 기반으로 레지스트리를 지원합니다. 선택한 레지스트리 서버가 /-/v1/search 또는 /-/all 엔드포인트를 구현해야 합니다.
경고: 자체 패키지 레지스트리 서버를 설정할 때 Unity의 범위 지정 레지스트리와 호환되는 기능만 사용해야 합니다. 예를 들어, Unity는 npm이 지원하는 @scope 표기법을 사용하는 네임스페이스를 지원하지 않습니다.
대부분의 경우 로컬 네트워크 내에서 익명으로 액세스하면 보안 요구 사항을 충족할 수 있습니다. 그러나 범위 지정 레지스트리를 통해 패키지에 액세스하는 사람을 더 세부적으로 제어하려면 특정 사용자에 대해 npm 인증을 활성화할 수 있습니다. 패키지의 고객은 해당 npm 인증 토큰을 사용하도록 범위 지정 레지스트리를 구성할 수 있습니다. |