Skip to content

Commit ee2fd2a

Browse files
Create page for proxying the CCR
This commit creates the page for configuring an internal proxy repository for the Chocolatey Community Repository. This will allow organizations to use the CCR without breaking the Terms of Use or experiencing rate limiting. It provides details for configuring internal proxy repositories across the three repository solutions supported by the Chocolatey Support Team, and includes links to those repository solutions' documentation on proxy repository configuration.
1 parent f728a22 commit ee2fd2a

2 files changed

Lines changed: 104 additions & 0 deletions

File tree

.vscode/settings.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
"HKEY",
4545
"HKLM",
4646
"honor",
47+
"inedo",
4748
"inotify",
4849
"Internalizer",
4950
"Intune",
@@ -66,6 +67,7 @@
6667
"packageparameters",
6768
"pkgid",
6869
"pkgname",
70+
"proget",
6971
"programdata",
7072
"psobject",
7173
"qdeazure",
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
---
2+
order: 15
3+
xref: proxying-ccr
4+
title: Proxying the Chocolatey Community Repository
5+
description: Learn how to set up an internal proxy repository for the Chocolatey Community Repository
6+
---
7+
import Callout from '@choco-astro/components/Callout.astro';
8+
import Iframe from '@choco-astro/components/Iframe.astro';
9+
import Xref from '@components/Xref.astro';
10+
import TabsPane from '@choco-astro/components/tabs/TabsPane.astro';
11+
import TabsPaneContainer from '@choco-astro/components/tabs/TabsPaneContainer.astro';
12+
import TabsTabContainer from '@choco-astro/components/tabs/TabsTabContainer.astro';
13+
14+
## Summary
15+
16+
This document details the why and how of creating an internal proxy repository for the [Chocolatey Community Repository (CCR)](https://community.chocolatey.org/packages). We provide guidance for the repository solutions supported by the Chocolatey Support Team. It assumes that you have already configured an internal repository solution for hosting Chocolatey packages.
17+
18+
If you have not set up an internal repository solution, please see our repository setup documentation in our <Xref title="Repository Solution" value="organizational-repository-solution" /> within our <Xref title="Organizational Deployment Guide" value="organizational-deployment-guide" />.
19+
20+
Creating an internal proxy repository allows organizations to utilize the packages hosted on the Chocolatey Community Repository without breaking our <Xref title="Terms of Use" value="terms" /> as mentioned in [our blog post here](blogpostplaceholder) or experiencing <Xref title="rate limiting" value="community-packages-disclaimer" anchor="rate-limiting" />. As packages are requested from the CCR, they are downloaded and hosted in the proxy repository where they can be queried when needed.
21+
22+
### Configuring Your Internal Proxy Repository
23+
24+
* <Xref title="Setting up an internal proxy repository in Inedo ProGet" value="proxying-ccr" anchor="inedo-proget-tab" />
25+
* <Xref title="Setting up an internal proxy repository in JFrog Artifactory" value="proxying-ccr" anchor="jfrog-artifactory-tab" />
26+
* <Xref title="Setting up an internal proxy repository in Sonatype Nexus" value="proxying-ccr" anchor="sonatype-nexus-tab" />
27+
28+
export const tabs = [
29+
{ id: 'inedo-proget-tab', title: 'Inedo ProGet', isActive: true },
30+
{ id: 'jfrog-artifactory-tab', title: 'JFrog Artifactory' },
31+
{ id: 'sonatype-nexus-tab', title: 'Sonatype Nexus' },
32+
];
33+
34+
<TabsTabContainer content={tabs} />
35+
<TabsPaneContainer>
36+
<TabsPane content={tabs[0]}>
37+
38+
#### Inedo ProGet
39+
40+
<table>
41+
<tr>
42+
<th>Feed Type</th>
43+
<td>Chocolatey Packages</td>
44+
</tr>
45+
<tr>
46+
<th>New Feed</th>
47+
<td>Free/Open Source Chocolatey Packages</td>
48+
</tr>
49+
<tr>
50+
<th>Feed Name</th>
51+
<td>Type a name for your proxy repository.</td>
52+
</tr>
53+
</table>
54+
55+
For more information, visit Inedo ProGet's documentation on [HOWTO: Set Up a Proxy Feed of the Chocolatey Community Repository](https://docs.inedo.com/docs/proget/feeds/nuget/howto-nuget-proxy).
56+
57+
</TabsPane>
58+
<TabsPane content={tabs[1]}>
59+
60+
#### JFrog Artifactory
61+
62+
<table>
63+
<tr>
64+
<th>Repository Type</th>
65+
<td>Remote</td>
66+
</tr>
67+
<tr>
68+
<th>Package Type</th>
69+
<td>NuGet</td>
70+
</tr>
71+
<tr>
72+
<th>URL</th>
73+
<td>https://community.chocolatey.org/api/v2/</td>
74+
</tr>
75+
</table>
76+
77+
For more information, visit JFrog Artifactory's documentation on how to [Configure a Remote Repository](https://docs.jfrog.com/artifactory/docs/remote-repositories#configure-a-remote-repository).
78+
79+
</TabsPane>
80+
<TabsPane content={tabs[2]}>
81+
82+
#### Sonatype Nexus
83+
84+
<table>
85+
<tr>
86+
<th>Name</th>
87+
<td>Type a name for your proxy repository.</td>
88+
</tr>
89+
<tr>
90+
<th>NuGet Protocol Version</th>
91+
<td>Set the protocol version to **V2**.</td>
92+
</tr>
93+
<tr>
94+
<th>Remote Storage</th>
95+
<td>https://community.chocolatey.org/api/v2/</td>
96+
</tr>
97+
</table>
98+
99+
For more information, visit Sonatype Nexus' documentation on how to configure a [NuGet Proxy Repository](https://help.sonatype.com/en/nuget-repositories.html#nuget-proxy-repository).
100+
101+
</TabsPane>
102+
</TabsPaneContainer>

0 commit comments

Comments
 (0)