User Tools

Site Tools


howto:docker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
howto:docker [2026/01/24 11:53] – created nathnahowto:docker [2026/01/25 11:00] (current) nathna
Line 20: Line 20:
 <code bash> <code bash>
 # Remove old versions (optional) # Remove old versions (optional)
-sudo apt remove docker docker-engine docker.io containerd runc+sudo apt remove -y docker docker-engine docker.io containerd runc
  
 # Install dependencies # Install dependencies
- 
 sudo apt update sudo apt update
 sudo apt install -y ca-certificates curl gnupg lsb-release sudo apt install -y ca-certificates curl gnupg lsb-release
  
 # Add Docker’s official GPG key # Add Docker’s official GPG key
- 
 sudo install -m 0755 -d /etc/apt/keyrings sudo install -m 0755 -d /etc/apt/keyrings
-curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg) | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg+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 sudo chmod a+r /etc/apt/keyrings/docker.gpg
  
 # Add Docker repository # Add Docker repository
- +echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] [https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu) $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null+
  
 # Install Docker Engine # Install Docker Engine
- 
 sudo apt update sudo apt update
-sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin </code>+sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 
 +</code>
  
-==== Enable & Start Docker ==== <code bash>+==== Enable & Start Docker ==== 
 +<code bash>
 sudo systemctl enable docker sudo systemctl enable docker
-sudo systemctl start docker </code>+sudo systemctl start docker 
 +</code>
  
 --- ---
  
 ===== 👤 3. Add Your User to the docker Group ===== ===== 👤 3. Add Your User to the docker Group =====
-This lets you run Docker without sudo. <code bash>+This lets you run Docker without sudo. 
 + 
 +<code bash>
 sudo usermod -aG docker $USER sudo usermod -aG docker $USER
-newgrp docker </code>+newgrp docker 
 +</code>
  
 --- ---
Line 63: Line 65:
 </code> </code>
  
-Verify: <code bash> +Verify: 
-docker-compose --version </code>+<code bash> 
 +docker-compose --version 
 +</code>
  
 --- ---
Line 101: Line 105:
  
 ===== ▶️ 7. Start Containers ===== ===== ▶️ 7. Start Containers =====
-Using Docker Compose v2: <code bash> +Using Docker Compose v2:
-docker compose up -d </code> +
- +
-Using docker-compose v1: <code bash> +
-docker-compose up -d </code> +
- +
---- +
- +
-===== 📌 8. Useful Docker Commands ===== +
-**View running containers:** <code bash> +
-docker ps </code> +
- +
-**View logs:** <code bash> +
-docker logs -f <container_name> </code> +
- +
-**Restart container:** <code bash> +
-docker restart <container_name> </code> +
- +
-**Stop all containers:** <code bash> +
-docker stop $(docker ps -q) </code> +
- +
-**Remove all stopped containers:** <code bash> +
-docker container prune </code> +
- +
---- +
- +
-===== 🛠️ 9. Useful Docker Compose Commands ===== +
-**Recreate after editing docker-compose.yml:** <code bash> +
-docker compose down && docker compose up -d </code> +
- +
-**Validate syntax:** <code bash> +
-docker compose config </code> +
- +
---- +
- +
-===== 🔄 10. Full Quick Setup (Copy/Paste) ===== +
-Use this block for rapid setup on every new VM. +
 <code bash> <code bash>
-sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y 
- 
-sudo apt install -y ca-certificates curl gnupg lsb-release 
-sudo install -m 0755 -d /etc/apt/keyrings 
-curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](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](https://download.docker.com/linux/ubuntu) $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 
- 
-sudo apt update 
-sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 
- 
-sudo systemctl enable docker 
-sudo systemctl start docker 
- 
-sudo usermod -aG docker $USER 
-newgrp docker </code> 
- 
---- 
- 
-If you’d like, I can also create a Portainer guide, Kubernetes migration steps, or a TorresVault VM baseline page. & Docker Compose Setup Guide for a Fresh Ubuntu VM 
-This page is designed for your TorresVault wiki. It provides a clean, repeatable checklist and command reference for preparing any new Ubuntu Server VM before deploying an app. This is the **standard baseline** you use across all your VMs. 
- 
---- 
- 
-## ✅ 1. Update & Upgrade the System 
- 
-These commands ensure the VM is fully patched before installing anything. 
- 
-```bash 
-sudo apt update && sudo apt upgrade -y 
-sudo apt autoremove -y 
-sudo reboot 
-``` 
- 
---- 
- 
-## 🐋 2. Install Docker 
- 
-The recommended officially supported installation method. 
- 
-```bash 
-# Remove old versions (optional) 
-sudo apt remove docker docker-engine docker.io containerd runc 
- 
-# Install dependencies 
-sudo apt update 
-sudo apt install -y ca-certificates curl gnupg lsb-release 
- 
-# Add Docker’s official GPG key 
-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 
- 
-# Add Docker repository 
-echo \ 
-  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ 
-  $(lsb_release -cs) stable" | 
-  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 
- 
-# Install Docker Engine 
-sudo apt update 
-sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 
-``` 
- 
-### Enable & Start Docker 
- 
-```bash 
-sudo systemctl enable docker 
-sudo systemctl start docker 
-``` 
- 
---- 
- 
-## 👤 3. Add Your User to the `docker` Group 
- 
-This lets you run Docker without `sudo`. 
- 
-```bash 
-sudo usermod -aG docker $USER 
-newgrp docker 
-``` 
- 
---- 
- 
-## 📦 4. Install Standalone Docker Compose (Optional) 
- 
-Ubuntu now includes **Docker Compose v2**, but for apps needing older v1 (`docker-compose`) you can install manually. 
- 
-```bash 
-sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 
-sudo chmod +x /usr/local/bin/docker-compose 
-``` 
- 
-Verify: 
- 
-```bash 
-docker-compose --version 
-``` 
- 
---- 
- 
-## 📁 5. Create App Directory Structure 
- 
-Standard layout for TorresVault app VMs. 
- 
-```bash 
-mkdir -p ~/apps/<app_name>/data 
-mkdir -p ~/apps/<app_name>/config 
-cd ~/apps/<app_name> 
-``` 
- 
---- 
- 
-## 🧱 6. Create a Standard `docker-compose.yml` 
- 
-Template to reuse for each app. 
- 
-```yaml 
-version: "3.9" 
-services: 
-  app: 
-    image: <image> 
-    container_name: <app_name> 
-    restart: unless-stopped 
-    ports: 
-      - "PORT:PORT" 
-    volumes: 
-      - ./config:/config 
-      - ./data:/data 
-    environment: 
-      - TZ=America/New_York 
-``` 
- 
---- 
- 
-## ▶️ 7. Start Containers 
- 
-Using Docker Compose v2: 
- 
-```bash 
 docker compose up -d docker compose up -d
-```+</code>
  
-Using standalone v1: +Using docker-compose v1: 
- +<code bash>
-```bash+
 docker-compose up -d docker-compose up -d
-```+</code>
  
 --- ---
  
-## 📌 8. Useful Docker Commands +===== 📌 8. Useful Docker Commands ===== 
- +**View running containers:** 
-### View running containers: +<code bash>
- +
-```bash+
 docker ps docker ps
-```+</code>
  
-### View logs: +**View logs:** 
- +<code bash>
-```bash+
 docker logs -f <container_name> docker logs -f <container_name>
-```+</code>
  
-### Restart container: +**Restart container:** 
- +<code bash>
-```bash+
 docker restart <container_name> docker restart <container_name>
-``` +</code>
- +
-### Stop all containers:+
  
-```bash+**Stop all containers:** 
 +<code bash>
 docker stop $(docker ps -q) docker stop $(docker ps -q)
-```+</code>
  
-### Remove all stopped containers: +**Remove all stopped containers:** 
- +<code bash>
-```bash+
 docker container prune docker container prune
-```+</code>
  
 --- ---
  
-## 🛠️ 9. Useful Docker Compose Commands +===== 🛠️ 9. Useful Docker Compose Commands ===== 
- +**Recreate after editing docker-compose.yml:** 
-### Recreate containers after editing `docker-compose.yml`+<code bash>
- +
-```bash+
 docker compose down && docker compose up -d docker compose down && docker compose up -d
-```+</code>
  
-### Validate syntax: +**Validate syntax:** 
- +<code bash>
-```bash+
 docker compose config docker compose config
-```+</code>
  
 --- ---
  
-## 🔄 10. Full Quick Setup (Copy/Paste) +===== 🔄 10. Full Quick Setup (Copy/Paste) =====
 Use this block for rapid setup on every new VM. Use this block for rapid setup on every new VM.
  
-```bash+<code bash>
 sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
  
Line 354: Line 169:
 sudo chmod a+r /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg
  
-echo +echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu +
-  $(lsb_release -cs) stable" | +
-  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null+
  
 sudo apt update sudo apt update
Line 367: Line 179:
 sudo usermod -aG docker $USER sudo usermod -aG docker $USER
 newgrp docker newgrp docker
-``` +</code>
- +
---- +
- +
-If you'd like, I can also create: +
- +
-* A printable PDF version +
-* A second page for **Portainer setup** +
-* A TorresVault “standard VM template” page+
  
howto/docker.1769273605.txt.gz · Last modified: by nathna

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki