Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions src/22.4/container/preamble.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Running the Greenbone Community Edition from containers requires knowledge about:

* Using a terminal
* Using [docker]
* Running services via [docker compose][docker-compose]
* Using a terminal/shell (e.g. {command}`bash` or {command}`sh`).
* Using [docker](https://www.docker.com/) and/or [podman](https://podman.io/).
* Running services via [docker compose](https://docs.docker.com/compose/).

Additionally, a basic knowledge about the {doc}`architecture </architecture>`
of the Greenbone Community Edition is required to understand the setup.
of the Greenbone Community Edition is required to understand the setup and inner workings.

```{note}
This guide is intended for users who want to test the newest features
Expand Down
147 changes: 26 additions & 121 deletions src/22.4/container/prerequisites.md
Original file line number Diff line number Diff line change
@@ -1,162 +1,67 @@
## Prerequisites

```{note}
Please follow the guide step by step. Later steps might require settings or
output of a previous command.
Please follow the guide step by step.
Later steps might require settings or output of a previous command.
```

The command {command}`sudo` is used for executing commands that require privileged
access on the system.
The {command}`sudo`-command is used for executing commands and binaries that require privileged access on the system.

### Install dependencies

There are a few dependencies required for the following steps like [curl](https://curl.se/), which is required for downloading files from this guide.
### Dependencies

There are a few dependencies required for the following steps like [curl](https://curl.se/)
and [docker](https://www.docker.com/),
of which the former is required to downloading files from this guide.
[curl](https://curl.se/) can be separately downloaded through the instructions below,
but it will also be installed when following the Docker engine installation docs.

`````{tabs}
````{tab} Debian/Ubuntu
```{code-block} shell
---
caption: Install ca-certificates, curl and gnupg Debian/Ubuntu packages
caption: Install ca-certificates and curl Debian/Ubuntu packages
---
sudo apt install ca-certificates curl gnupg
sudo apt install ca-certificates curl
```
````
````{tab} Fedora/CentOS
```{code-block} shell
---
caption: Install ca-certificates, curl and gnupg Fedora/CentOS packages
caption: Install ca-certificates and curl Fedora/CentOS packages
---
sudo dnf install ca-certificates curl gnupg
sudo dnf install ca-certificates curl
```
````
`````

### Installing Docker

[docker] is required for running the services within containers. Docker can be
installed by running the following commands (taken from the Docker Engine [install guide](https://docs.docker.com/engine/install/)):
[Docker](https://www.docker.com/) (alternatively [podman](https://podman.io/))
is the application with which the Greenbone stack will be deployed.
Docker can be installed by following the instructions provided directly by them.
Please refer to the: [Official Docker Engine Installation Guide](https://docs.docker.com/engine/install/):

`````{tabs}
````{tab} Debian
```{code-block} shell
---
caption: Uninstall conflicting Debian packages
---
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove $pkg; done
```
```{code-block} shell
---
caption: Set up the Docker repository
---
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
```
```{code-block} shell
---
caption: Install Docker Debian packages
---
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
```
````
````{tab} Ubuntu
```{code-block} shell
---
caption: Uninstall conflicting Ubuntu packages
---
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove $pkg; done
```
```{code-block} shell
---
caption: Set up the Docker repository
---
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
```
```{code-block} shell
---
caption: Install Docker Ubuntu packages
---
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
```
````
````{tab} Fedora
```{code-block} shell
---
caption: Uninstall conflicting Fedora packages
---
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
```
```{code-block} shell
---
caption: Install docker Fedora package
---
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager addrepo --from-repofile=https://download.docker.com/linux/fedora/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
```
```{code-block} shell
---
caption: Start Docker
---
sudo systemctl start docker
```
````
````{tab} CentOS
```{code-block} shell
---
caption: Uninstall conflicting CentOS packages
---
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
```
```{code-block} shell
---
caption: Install Docker CentOS package
---
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
```
```{code-block} shell
---
caption: Start Docker
---
sudo systemctl start docker
```
````
`````

### Setup
### Setting up Docker

To allow the current user to run {command}`docker` and therefore start the
containers, they must be added to the *docker* user group. To make the group change
effective, either logout and login again or use {command}`su`.
To allow the current user to run {command}`docker`-commands and therefore start the containers,
they must be added to the *docker* user group (or be run as root).
To make the group change effective, either logout and login again or use the {command}`su`-command.

```{code-block} shell
---
caption: Add current user to docker group and apply group changes for the current shell environment
caption: Add current user to docker group and apply group changes for the current shell environment
---

sudo usermod -aG docker $USER && su $USER
```

For downloading the Greenbone Community Edition docker compose file, a
destination directory should be created.
For downloading the Greenbone Community Edition docker compose file,
a destination directory should be created.

```{code-block} shell
---
caption: Create download directory
---
export DOWNLOAD_DIR=$HOME/greenbone-community-container && mkdir -p $DOWNLOAD_DIR
export DOWNLOAD_DIR=$HOME/greenbone-community-edition && mkdir -p $DOWNLOAD_DIR
```
1 change: 1 addition & 0 deletions src/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ and this project adheres to [Calendar Versioning](https://calver.org).
* Use environment variables for the settings of gsad
* Refresh the GSA dashboard image
* Revise the hardware specifications view
* Rewrite the containre pre-requisites and -amble files

## 26.2.0 - 2026-02-24

Expand Down
Loading