Skip to content

Commit

Permalink
Merge pull request #992 from JPRuskin/qsg-offline
Browse files Browse the repository at this point in the history
(doc) Updates C4B QSG to match Readme
  • Loading branch information
steviecoaster committed May 14, 2024
2 parents 41e8f65 + 940e41f commit 085968e
Showing 1 changed file with 13 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ As illustrated in the diagram above, there are four main components to a Chocola
- Installation of the Chocolatey Licensed extension (`chocolatey.extension`), giving you access to features like Package Builder, Package Internalizer, etc. (full list [here](https://docs.chocolatey.org/en-us/features/)).
<p></p>

1. **NuGet V2 Repository Server App (Nexus)**: Chocolatey works best with a NuGet V2 repository. This application hosts and manages versioning of your Chocolatey package artifacts, in their enhanced NuGet package (.nupkg) file format. The quick start guide helps you setup [Sonatype Nexus Repository Manager (OSS)](https://www.sonatype.com/products/nexus-repository).
1. **NuGet V3 Repository Server App (Nexus)**: Chocolatey works best with a NuGet V3 repository. This application hosts and manages versioning of your Chocolatey package artifacts, in their enhanced NuGet package (.nupkg) file format. The quick start guide helps you setup [Sonatype Nexus Repository Manager (OSS)](https://www.sonatype.com/products/nexus-repository).

1. **Chocolatey Central Management (CCM)**: CCM is the Web UI portal for your entire Chocolatey environment. Your endpoints check-in to CCM to report their package status. This includes the Chocolatey packages they have installed, and whether any of these packages are outdated. And now, with CCM Deployments, you can also deploy packages or package updates to groups of endpoints, as well as ad-hoc PowerShell commands. CCM is backed by an MS SQL Database. This guide will set up MS SQL Express for you.

Expand All @@ -60,10 +60,6 @@ Below are the minimum requirements for setting up your C4B server via this guide

### Step 0: Preparation of C4B Server

> :choco-warning: **WARNING**
>
> This guide utilizes code from a GitHub repository, namely: [choco-quickstart-scripts](https://github.com/chocolatey/choco-quickstart-scripts). Though we explain what each script does in drop-down boxes, please do your due diligence to review this code and ensure it meets your Organizational requirements.
1. Provision your C4B server on the infrastructure of your choice.

1. Install all Windows Updates.
Expand All @@ -74,21 +70,22 @@ Below are the minimum requirements for setting up your C4B server via this guide

1. Copy your `chocolatey.license.xml` license file (from the email you received) onto your C4B Server.

> :choco-warning:**DISCLAIMER**: This guide utilizes code from a GitHub repository, namely: [choco-quickstart-scripts](https://github.com/chocolatey/choco-quickstart-scripts). Though we explain what each script does in drop-down boxes, please do your due diligence to review this code and ensure it meets your Organizational requirements.
> :memo:**Offline Install**: If your C4B server does not have unrestricted access to the internet, you can download the `choco-quickstart-scripts` repository to a Windows machine that is connected to the internet and run `OfflineInstallPreparation.ps1`. This will use Chocolatey to save all of the required assets into the repository folder, which can then be transferred to the target C4B server.
### Step 1: Begin C4B Setup

> :choco-danger: **IMPORTANT**
>
> All commands should be run from an **elevated** PowerShell window (and **not ISE**), by opening your PowerShell console with the `Run as Administrator` option.
> All commands must be run from an **elevated** Windows PowerShell window (and **not ISE**), by opening your PowerShell console with the `Run as Administrator` option.
1. Open a PowerShell console with the `Run as Administrator` option, and paste and run the following code:
1. Open a Windows PowerShell console with the `Run as Administrator` option, and paste and run the following code:

```powershell
Set-ExecutionPolicy Bypass -Scope Process -Force
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::tls12
$QuickStart = 'https://raw.githubusercontent.com/chocolatey/choco-quickstart-scripts/main/Start-C4bSetup.ps1'
$Script = [System.Net.Webclient]::new().DownloadString($QuickStart)
$sb = [ScriptBlock]::Create($Script)
& $sb
Invoke-RestMethod https://ch0.co/qsg-go | Invoke-Expression
```

> <details>
Expand All @@ -103,9 +100,11 @@ Below are the minimum requirements for setting up your C4B server via this guide
> </ul>
> </details>
> :memo:**Offline Install**: You can now copy the `C:\choco-setup\` directory to any computer to continue the installation. To zip up that directory, run `Compress-Archive -Path C:\choco-setup\files\* -DestinationPath C:\choco-setup\C4B-Files.zip`. Move the archive to your new machine, and run `Expand-Archive -Path /path/to/C4B-Files.zip -DestinationPath C:\choco-setup\files -Force`. You should then run `Set-Location "$env:SystemDrive\choco-setup\files"; .\Start-C4bSetup.ps1`, and continue with the guide.
### Step 2: Nexus Setup

1. In the same **elevated** PowerShell console as above, paste and run the following code:
1. In the same **elevated** Windows PowerShell console as above, paste and run the following code:

```powershell
Set-Location "$env:SystemDrive\choco-setup\files"
Expand All @@ -127,7 +126,7 @@ Below are the minimum requirements for setting up your C4B server via this guide
> </ul>
> </details>
### Step 3: CCM Setup
### Step 3: Chocolatey Central Management Setup

1. In the same PowerShell Administrator console as above, paste and run the following code:

Expand All @@ -141,7 +140,7 @@ Below are the minimum requirements for setting up your C4B server via this guide
> <ul class="list-style-type-disc">
> <li>Installs MS SQL Express and SQL Server Management Studio (SSMS)</li>
> <li>Creates "ChocolateyManagement" database, and adds appropriate `ChocoUser` permissions</li>
> <li>Installs all 3 CCM packages (database, service, web), with correct parameters</li>
> <li>Installs all 3 Chocolatey Central Management packages (database, service, web), with correct parameters</li>
> <li>Outputs data to a JSON file to pass between scripts</li>
> </ul>
> </details>
Expand Down

0 comments on commit 085968e

Please sign in to comment.