Skip to main content

이 버전의 GitHub Enterprise는 다음 날짜에 중단되었습니다. 2024-09-25. 중요한 보안 문제에 대해서도 패치 릴리스가 이루어지지 않습니다. 더 뛰어난 성능, 향상된 보안, 새로운 기능을 위해 최신 버전의 GitHub Enterprise Server로 업그레이드합니다. 업그레이드에 대한 도움말은 GitHub Enterprise 지원에 문의하세요.

공용 레지스트리에 대한 Dependabot 액세스 제거

공용 레지스트리에 대한 호출을 제거하여 개인 레지스트리에만 액세스하도록 Dependabot을(를) 구성하는 방법의 예시입니다.

누가 이 기능을 사용할 수 있나요?

쓰기 권한이 있는 사용자

개인 레지스트리에만 액세스하도록 Dependabot 구성에 관한 정보

Dependabot은(는) 기본적으로 퍼블릭 레지스트리에 액세스할 수 있으며, 프라이빗 레지스트리에 액세스하도록 Dependabot을(를) 구성할 수 있습니다. 개인 레지스트리 지원 및 구성에 대한 자세한 내용은 "Dependabot에 대한 개인 레지스트리 액세스 구성"을 참조하십시오 비공개 레지스트리를 구성할 때 참고할 권장 사항과 조언, 사용 가능한 옵션에 대한 심층적인 내용은 "Dependabot의 개인 레지스트리 구성에 대한 지침"을(를) 참조하세요.

공용 레지스트리에 대한 호출을 제거하여 개인 레지스트리_에만_ 액세스하도록 Dependabot을(를) 구성할 수 있습니다. 이 문서에 나열된 에코시스템에 대해서만 구성할 수 있습니다.

Note

Dependabot updates에 대한 구성에서 퍼블릭 레지스트리 액세스를 제거하기 전에 사이트 관리자가 필요한 프라이빗 레지스트리에 액세스할 수 있는 Dependabot 실행기를 설정했는지 확인하세요. 자세한 내용은 "제한된 인터넷 액세스를 사용하도록 Dependabot 구성"을(를) 참조하세요.

Bundler

개인 레지스트리에만 액세스하도록 번들러 에코시스템을 구성하려면 dependabot.yml 파일에서 true와 같이 replaces-base을 설정할 수 있습니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

번들러 에코시스템에서는 개인 레지스트리 URL이 포함된 Gemfile 파일을 저장소로 체크 인해야 합니다.

# Example Gemfile

 source "https://private_registry_url"

Docker

개인 레지스트리에만 액세스하도록 도커 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

replaces-base가 없는 dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

구성 파일에서 replaces-base: true을 제거합니다.

version: 2
registries:
  azuretestregistry: # Define access for a private registry
    type: docker-registry
    url: firewallregistrydep.azurecr.io
    username: firewallregistrydep
    password: ${{ secrets.AZUREHUB_PASSWORD }}

Dockerfile 파일에서 이미지 이름을 IMAGE[:TAG] 형식으로 추가합니다. 여기서 IMAGE은 사용자 이름과 저장소 이름으로 구성됩니다.

 FROM firewallregistrydep.azurecr.io/myreg/ubuntu:22.04

옵션 2

dependabot.yml 파일에서 true와 같이 replaces-base을 설정합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요. replaces-base로 구성된 레지스트리는 미러 또는 풀스루 캐시로 사용할 수 있습니다. 자세한 내용은 도커 설명서에서 레지스트리를 풀스루 캐시로를 참조하십시오.

Gradle

개인 레지스트리에만 액세스하도록 그래들 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

구성 파일에서 replaces-base: true를 제거하세요.

또한 build.gradle 파일 repositories 섹션에서 개인 레지스트리 URL을 지정해야 합니다.

# Example build.gradle file

repositories {
    maven {
        url "https://private_registry_url"
    }
}

Maven

개인 레지스트리에만 액세스하도록 메이븐 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 true와 같이 replaces-base을 설정합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

옵션 2

pom.xml 파일에 개인 레지스트리 URL만 사용하세요.

<project>
...
 <repositories>
  <repository>
    <id>central</id>
    <name>your custom repo</name>
    <url>https://private_registry_url</url>
 </repository>
...
</project>

Node

npm

개인 레지스트리에만 액세스하도록 npm 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

구성 파일에서 replaces-base: true을 제거합니다.

npm 에코시스템에서는 추가적으로 개인 레지스트리 URL이 포함된 .npmrc 파일을 저장소로 체크 인해야 합니다.

 registry=https://private_registry_url

옵션 2

.npmrc 파일에 정의된 글로벌 레지스트리가 없는 경우 dependabot.yml 파일에서 true과 같이 replaces-base를 설정할 수 있습니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

범위가 지정된 종속성(@my-org/my-dep)의 경우 Dependabot에 프로젝트의 .npmrc 파일에 대한 개인 레지스트리가 정의되어 있어야 합니다. 개별 범위에 대한 개인 레지스트리를 정의하려면, @myscope:registry=https://private_registry_url을 사용하세요.

Yarn

Yarn Classic 및 Yarn Berry 개인 레지스트리는 모두 Dependabot에서 지원되지만 Dependabot은(는) 개인 레지스트리에만 액세스하려면 에코시스템마다 다른 구성이 필요합니다.

Yarn 클래식

개인 레지스트리에만 액세스하도록 Yarn 클래식 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

참조: 구성 파일에서 replaces-base: true를 제거하세요.

프로젝트의 yarn.lock 파일에 개인 레지스트리가 종속성 소스로 나열되도록 하려면 개인 레지스트리 액세스 권한이 있는 시스템에서 yarn install를 실행합니다. Yarn은 개인 레지스트리 URL을 포함하도록 resolved 필드를 업데이트해야 합니다.

encoding@^0.1.11:
  version "0.1.13"
  resolved "https://private_registry_url/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
  integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
  dependencies:
    iconv-lite "^0.6.2"

옵션 2

yarn.lock 파일에 개인 레지스트리가 종속성 원본으로 나열되지 않는 경우 일반 패키지 관리자 지침에 따라 Yarn 클래식을 설정할 수 있습니다.

  1. dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요.

  2. 키 레지스트리를 사용하여 프로젝트 루트의 .yarnrc 파일에 레지스트리를 추가합니다. 또는 yarn config set registry <private registry URL>을(를) 실행합니다.

    registry https://private_registry_url
    

옵션 3

.yarnrc 파일에 정의된 글로벌 레지스트리가 없는 경우 dependabot.yml 파일에서 true과 같이 replaces-base를 설정할 수 있습니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

범위가 지정된 종속성(@my-org/my-dep)의 경우 Dependabot에 프로젝트의 .npmrc 파일에 대한 개인 레지스트리가 정의되어 있어야 합니다. 개별 범위에 대한 개인 레지스트리를 정의하려면, @myscope:registry=https://private_registry_url을 사용하세요.

Yarn Berry

개인 레지스트리에만 액세스하도록 Yarn Berry 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

참조: 구성 파일에서 replaces-base: true를 제거하세요.

프로젝트의 yarn.lock 파일에 개인 레지스트리가 종속성 소스로 나열되도록 하려면 개인 레지스트리 액세스 권한이 있는 시스템에서 yarn install를 실행합니다. Yarn은 개인 레지스트리 URL을 포함하도록 resolved 필드를 업데이트해야 합니다.

encoding@^0.1.11:
  version "0.1.13"
  resolved "https://private_registry_url/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
  integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
  dependencies:
    iconv-lite "^0.6.2"

옵션 2

yarn.lock 파일에 개인 레지스트리가 종속성 원본으로 나열되지 않는 경우 일반 패키지 관리자 지침에 따라 Yarn Berry를 설정할 수 있습니다.

  1. dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요.
  2. npmRegistryServer를 사용하여 프로젝트 루트의 .yarnrc.yml 파일에 레지스트리를 추가합니다. 또는 yarn config set npmRegistryServer <private registry URL>을(를) 실행합니다. npmRegistryServer: "https://private_registry_url"

Note

범위가 지정된 종속성(@my-org/my-dep)의 경우 Dependabot에 프로젝트의 .yarnrc 파일에 대한 개인 레지스트리가 정의되어 있어야 합니다. 개별 범위에 대한 개인 레지스트리를 정의하려면, "@myscope:registry" "https://private_registry_url"을 사용하세요.

Nuget

Nuget 에코시스템이 개인 레지스트리에만 액세스할 수 있도록 하려면 dependabot.yml 파일을 구성하면 됩니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Nuget 에코시스템에서는 nuget.config 파일을 저장소로 체크인해야 하며, < clear /> 섹션에 <packageSources> 태그가 있거나 nuget.config 파일의 disabledPackageSources 섹션에 있는 key nuget.org가 true여야 합니다.

해당 예시는 nuget.configpackageSources 섹션에 있는 < clear /> 태그의 예입니다.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <packageSources>
   < clear />
   <add key="example-nuget" value="https://private_registry_url/nuget/example-nuget/index.json" />
 </packageSources>
</configuration>

해당 예시는 nuget.configdisabledPackageSources 섹션에 true로 nuget.org 키를 추가하는 방법입니다.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="example-nuget" value="https://private_registry_url/nuget/example-nuget/index.json" />
  </packageSources>
  <disabledPackageSources>
    <add key="nuget.org" value="true" />
  </disabledPackageSources>
</configuration>

Dependabot이(가) 개인 피드와 공용 피드에 모두 액세스하도록 구성하려면 registries 아래에 구성된 public 피드가 포함된 다음 dependabot.yml 예제를 확인하십시오:

version: 2
registries:
  nuget-example:
    type: nuget-feed
    url: https://nuget.example.com/v3/index.json
    username: $
    password: $
  public:
    type: nuget-feed
    url: https://api.nuget.org/v3/index.json
updates:
  - package-ecosystem: nuget
    directory: "/"
    registries: "*"
    schedule:
      interval: daily

Python

Pip, Pip-compile, Pipenv 및 Poetry는 Python 에코시스템이 현재 지원하는 4개의 패키지 관리자입니다.

Pip

개인 레지스트리에만 액세스하도록 Pip 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

참조: 구성 파일에서 replaces-base: true를 제거하세요.

pip.conf 파일의 [global] 섹션에 개인 레지스트리 URL을 추가하고 리포지토리로 파일을 체크 인하세요.

[global]
timeout = 60
index-url = https://private_registry_url

옵션 2

dependabot.yml 파일에서 true와 같이 replaces-base을 설정합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Pip-compile

개인 레지스트리에만 액세스하도록 Pip-compile 에코시스템을 구성하려면 다음 구성 방법을 사용할 수 있습니다.

옵션 1

dependabot.yml 파일에서 true와 같이 replaces-base을 설정합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

옵션 2

dependabot.yml 파일에서 개인 레지스트리 구성을 정의하세요. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

참조: 구성 파일에서 replaces-base: true를 제거하세요.

requirements.txt 파일에 개인 레지스트리 URL을 추가하고 리포지토리로 파일을 체크 인하세요.

--index-url https://private_registry_url

Pipenv

개인 레지스트리에만 액세스하도록 Pipenv를 구성하려면 dependabot.yml 파일에서 replaces-base을 제거합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

Note

참조: 구성 파일에서 replaces-base: true를 제거하세요.

Pipfile 파일의 [[source]] 섹션에 개인 레지스트리 URL을 추가하고 리포지토리로 파일을 체크 인하세요.

[[source]]
url = "https://private_registry_url"
verify_ssl = true
name = "pypi"

Poetry

개인 레지스트리에만 액세스하도록 Poetry를 구성하려면 dependabot.yml 파일에서 true와 같이 replaces-base을 설정합니다. 자세한 내용은 "dependentabot.yml 파일 구성 옵션"을(를) 참조하세요.

pyproject.toml 파일의 [[tool.poetry.source]] 섹션에 개인 레지스트리 URL을 추가하고 리포지토리로 파일을 체크 인하세요.

[[tool.poetry.source]]
name = "private"
url = "https://private_registry_url"
default = true