Docker Manager
This page helps you install and configure Docker on your host machine. Select your operating system below for step-by-step instructions and basic settings.
Install Docker Desktop
- Download Docker Desktop for Windows
- Run the installer and follow the setup wizard
- Enable WSL 2 when prompted (recommended for better performance)
- Restart your computer if required
- Start Docker Desktop from the Start menu
Basic Configuration
- Resources: Docker Desktop → Settings → Resources — adjust CPU, memory, and disk
- WSL 2: Requires Windows 10 64-bit (Build 19041+) or Windows 11
- Hyper-V: Alternative to WSL 2 on older Windows versions
Install Docker Desktop
- Download Docker Desktop for Mac (choose Apple Silicon or Intel)
- Open the
.dmgfile and drag Docker to Applications - Launch Docker from Applications and complete first-run setup
- Grant permissions when prompted
Basic Configuration
- Resources: Docker Desktop → Settings (gear icon) → Resources — CPU, memory, swap, disk
- File sharing: Settings → Resources → File sharing — add directories for volume mounts
- VirtioFS: Recommended on Apple Silicon for faster file sharing
Docker Engine only — for headless Linux servers. Pick your distro: Debian and Ubuntu use different repositories.
Supported: Debian Bookworm 12, Bullseye 11, Trixie 13.
Step 1: Prerequisites and GPG key
sudo apt update
sudo apt install -y 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
Step 2: Add Docker repository (Debian)
echo "Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc" | sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null
sudo apt update
If you use a derivative (e.g. Kali), replace $(. /etc/os-release && echo "$VERSION_CODENAME") with your Debian codename (e.g. bookworm).
Step 3: Install Docker Engine
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl start docker
sudo systemctl enable docker
Step 4: Run without sudo (optional)
sudo usermod -aG docker $USER
# Log out and back in for changes to take effect
Step 5: Verify
sudo docker run hello-world
Step 6: Connect to GCP (pull/push GCR images)
To pull or push images from Google Container Registry (e.g. us.gcr.io/PROJECT_ID/IMAGE:TAG):
# Install Google Cloud SDK
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg
sudo apt update && sudo apt install -y google-cloud-cli
Authenticate — use a service account for servers (recommended); use interactive login only if you have a browser.
Option A: Service account (CI / server / recommended)
- In GCP Console → IAM → Service Accounts, create a service account (or use existing).
- Grant it Storage Admin or Artifact Registry Reader (for pull only) / Writer (for push).
- Create a JSON key: Actions ⋮ → Manage keys → Add key → Create new key → JSON. Save as
gcr-key.json. - Copy the key to the server (e.g.
scp gcr-key.json user@server:/path/). Secure it:chmod 600 /path/gcr-key.json.
# Authenticate with service account (no browser)
gcloud auth activate-service-account --key-file=/path/to/gcr-key.json
# Set default project (replace with your PROJECT_ID)
gcloud config set project aesthetic-honor-348318
# Configure Docker to use gcloud for GCR
gcloud auth configure-docker us.gcr.io
Option B: Interactive login (dev only, requires browser)
gcloud auth login
gcloud auth configure-docker us.gcr.io
Then pull or push as usual:
# Pull an image
docker pull us.gcr.io/aesthetic-honor-348318/voicelab-ui:0.3
# Tag and push (after building or tagging)
docker tag myimage:latest us.gcr.io/aesthetic-honor-348318/voicelab-ui:0.4
docker push us.gcr.io/aesthetic-honor-348318/voicelab-ui:0.4
Supported: Ubuntu Noble 24.04, Jammy 22.04, Focal 20.04, etc.
Step 1: Prerequisites and GPG key
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
Step 2: Add Docker repository (Ubuntu)
echo "Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc" | sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null
sudo apt update
Step 3: Install Docker Engine
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl start docker
sudo systemctl enable docker
Step 4: Run without sudo (optional)
sudo usermod -aG docker $USER
# Log out and back in for changes to take effect
Step 5: Verify
sudo docker run hello-world
Basic Configuration
- Daemon config:
/etc/docker/daemon.json— storage driver, log settings, etc. - Other distros: Docker Engine install docs for CentOS, Fedora, RHEL, etc.
Official Documentation
Get Docker · Debian · Ubuntu · Other distros