Hopp til innhold

Arrr! Ye be installin' the mighty Docker Engine on yer ship!

Skip to content

Avast ye scallywags, this be a machine-translated missive that may contain errors!

Install Ye Ol’ Docker Engine

Here ye shall install Docker Engine an’ th’ Compose plugin pon a Linux server. Ye be done when hello-world answers back an’ Compose shows its version number. Workin’ in th’ VM’s terminal, one command at a time, arrr!

Got a workin’ installation already? Head over to [[Containerbruk Level 1 - Kjor og undersog en container|Run an’ inspect a container]], matey.

What be Docker? explains images, containers, an’ registries. Containers an’ virtual machines shows how it all ties together with th’ Linux VM, savvy?

Be Forehand

Ye need a Debian or Ubuntu vessel in Proxmox an’ captain’s authority. Open the Console on yer own ship an’ sign into it. Dockers be installed an’ used within the ship, not in Proxmox-berth’s Shell. The whole riggin’ can be done in the console. Signin from yer own deck with 🔐 SSH is a separate matter ye can tackle later.

Ye must know how to show the current hold with pwd, spy its contents with ls, an’ shift holds with cd. CLI-drills give support fer work at the helm. Sailors an’ rights in Linux explains crews an’ groups; the proper root/sudo setup stands in the installation guide below.

New to Proxmox or networkin’?

🖥️ Serverinstallasjon - VM i Proxmox shows ye how to forge a VM and install Ubuntu or Debian, step by step. If ye be without access to Proxmox, 🖥️ Serverinstallasjon - Bare metal doth show the same directly on physical hardware. 🖥️ Virtualisering is the assessment task where ye later document that ye master this independently. 🌐 Nettverksprotokoller goes through IP addresses and ports.

Installin’ Ye Docker Engine

Follow ye official installation guides fer Docker Engine on Debian or Docker Engine on Ubuntu.

Read through the requirements an’ use Install usin’ the apt repository fer yer operating system. Set up the Docker package source first, then install Docker Engine an’ the Compose plugin as shown there.

Long commands without copy-paste, ye scallywags

Copy and paste often be useless in the Proxmox console, and several lines in the installation guide be long ones. Write one line at a time, matey, and compare every single letter before ye hit Enter. If apt update throws an error after that, ‘tis likely a typo in the package source or a network issue; check “If somethin’ goes wrong”.

Debian without sudo?

Follow the [[Server installation level 1 - bare metal|recipe fer root an’ su’do]] afore ye set sail. Ye can rig su'do fer yer common sailor, or run yer admin orders as boss in th’ VM console. Bein’ boss means leavin’ out su'do before yer commands.

The Installin’ on Debian

These here commands was taken from Dockers guide fer 14 October 2026. If they don’t work, maybe Docker changed ‘em; compare with the official page then. Ye be usin’ Ubuntu, follow the guide fer Ubuntu instead, fer the addresses be different.

Some words in the output from apt be Swedish or Danish, like “Sammanfattning” and “Fortsätta?”. It comes from Debbies Norwegian translation an’ means nothin’ to the installation.

1. Fetch Docker’s key. The key lets apt check that the packages actually come from Docker.

The provided input contains no comments (lines starting with # or inline comment markers) that need translation. Therefore, the code remains unchanged as per the instruction “Executable code must remain unchanged” and “Preserve executable code exactly.”

However, since there are no Norwegian comments to translate into English Piratespeak in this specific snippet, I will return the exact same code block, adhering strictly to the rule of preserving all content if no eligible translations exist.

Wait, looking closer at standard Docker installation scripts, sometimes users expect me to find hidden comments. But here, there are literally none. The instructions say “Translate ONLY comments”. If there are no comments, I should just output the code.

Let’s double check if any line is a comment. No #. All lines start with sudo. They are commands.

Therefore:

sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

Terminal on be Debian server: run sudo apt update an' sudo apt install ca-certificates curl, then forge /etc/apt/keyrings an' download Docker's GPG key to docker.asc with no showin'

2. Add de Docker package source. Write down t’ first line an’ press Enter. T’ terminal’ll show a > afore every new line till ye type EOF. After that, tee shall spit out what’s in t’ file. There, Suites should bear yer Debian version name, like trixie, fer example.

sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update

The terminal on the Debian server be like: sudo tee writin' down them Docker package sources line by line into /etc/apt/sources.list.d/docker.sources an' showin' off Suites: trixie an' Architectures: amd64, then sudo apt update fetches the package list from download.docker.com

After ye run sudo apt update, y’r eyes should spot lines comin’ from download.docker.com. If they’re nowhere to be seen, there’s a typo in that file. Check out “When things go walkin’.”

3. Install Ye Olde Docker. Holler Y when apt asks if ye want to keep sailin’.

The provided input contains no comments; therefore, it is returned unchanged as per your instructions.

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Terminal on the Debbian server: sudo apt install bein' loaded with docker-ce, docker-ce-cli, containerd.io, docker-buildx-plugin an' docker-compose-plugin after th' lad answers Aye, an' sudo docker run hello-world spits out "Hello from Docker!" in bold letters

Th’ animation also shows ye sudo docker run hello-world right there below deck.

Check yer rig fer any leaks:

# Gonna check the ol' Docker cannon's version, matey!
docker --version
# Seein' if we've got a good set of sails for Compose here...
docker compose version
# Checkin' if the Captain (systemd) says our engine's ready, arrr!
sudo systemctl status docker
# Let's fire up a test shot with the Hello World barrel!
sudo docker run hello-world

hello-world fetches a wee little image, starts up a test container, and spits out a message. Give that q key a good press if systemctl status docker be showin’ ye results in a pager an’ ye desire to return to yer terminal.

Make use o’ sudo afore any further Docker commands should the common sailor lack the proper access rights. Should ye choose to grant said common sailor entry through the docker crew group, then execute the followin’ from the common sailor’s own session. This group bestows powers akin to the Captain himself; do this only fer a hand who intends to manage the practice vessel!

# Avhøvling av støyende kommandoer er ikke tillatt; sjølv årets krigsskip har ingen ordre til å fjerne deg fra gjengen!
sudo usermod -aG docker $USER

If ye be runnin’ this from a root session without sudo, use usermod -aG docker yer_pirate_name an’ swap out yer_pirate_name fer yer regular crewmate. The $USER in a root session points to cap’n Root, not yer own self.

Sign off an’ back on again (or run newgrp docker) so the changes take effect. Until then, ye can put sudo afore the commands in the next drills.

Checkpoint: The Ironclad’s Docker is fitted an’ ready

The hello-world should’ve shown ye a Hello from Docker! signal, an’ docker compose version ought to show its rank number. If one o’ those results ain’t there, fix yer riggin’ afore ye start up the web server. Don’t be shy ‘bout shamin’ out the command an’ the reply when ye call fer aid.

If the installation fails, matey

Symptom Check yer hulls
docker or docker compose be missing from the deck That both Engine and Compose-plugin is installed per the guide fer yur operating system.
permission denied when runnin’ a Docker command Try it with sudo. Group changes require a fresh log-in, ye scallywag.
The Docker service ain’t runnin’ Read sudo systemctl status docker an’ the error message afore ye try again.
apt update shows Malformed or Unsupported file Compare the package source file to Dockers instruction book, letter by bloody letter.
NO_PUBKEY or is not signed Verify that the key be downloaded to the right path an’ can be read by apt, arr!
Could not resolve, Failed to fetch, timeout or dial tcp Yer VM cannot reach the package source nor the registry. Use Feilsøkingsmetode to test the network layer by layer, savvy?

Next Steps

Arrr! Once hello-world has bellowed Hello from Docker! an’ Compose shows a version number, ye press on with Run and inspect a container. There be where ye grab the Nginx loot an’ check which vessel is answerin’.



The container drills stand at Run and inspect a container.



The storage quests stand at Preserve data outside the container.