Setup self hosted Chocolatey Repository/Proxy on Linux

To host a local repository for Chocolatey either as server for self-hosted packages or as proxy server for any NuGet server/the official chocolatey repository server we use Solartype Nexus3: sonatype.com - Nexus3

Therefore that Nexus3 required Java 8 it's recommended to use a Ubuntu Server (in this case 24) because Ubuntu still serves Java 8 from the official repository which Debian doesn't.

Installation

Download Ubuntu Server from here: ubuntu.com/download/server and install your machine.

Install Java8:

sudo apt install openjdk-8-jdk

Add Sonatype's APT repository to sources lists:

wget -P /etc/apt/sources.list.d/ https://repo.sonatype.com/repository/community-hosted/deb/sonatype-community.list

Add the repositories key:

nano sonatype-apt-repo.key

And paste the following content:

-----BEGIN PGP PUBLIC KEY BLOCK----- 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 =1ghU -----END PGP PUBLIC KEY BLOCK-----

Then update the repositories:

sudo apt update

And install Nexus3:

sudo apt install nexus-repository-manager

When everything was successful, enter the webservice with http://<ip>:8081/

The password for admin is located under /opt/sonatype/sonatype-work/nexus3/admin.password after entering the password, it's forced to be changed.

cat /opt/sonatype/sonatype-work/nexus3/admin.password

The installation of Nexus is now finished!

Setup Repository

Sourced from:

github.com/sonatype-nexus-community

howtoforge.com - install Nexus3 on Ubuntu22

stackoverflow.com - Nexus serve up chocolatey