Docker & Docker Compose安裝教程
1. 環(huán)境信息
| 項(xiàng)目 | 值 |
|---|---|
| 操作系統(tǒng) | Ubuntu 22.04.1 LTS (Jammy) |
| 內(nèi)核版本 | 5.15.0-164-generic |
| 存儲(chǔ)位置 | /var/lib/docker (根分區(qū),282G可用) |
| 文件系統(tǒng) | XFS |
2. 安裝方案概述
2.1 安裝方式
采用 Docker 官方 APT 倉庫安裝,確保獲取最新穩(wěn)定版本和安全更新。
2.2 安裝組件
| 組件 | 說明 |
|---|---|
| docker-ce | Docker Engine 社區(qū)版 |
| docker-ce-cli | Docker 命令行工具 |
| containerd.io | 容器運(yùn)行時(shí) |
| docker-buildx-plugin | 構(gòu)建擴(kuò)展插件 |
| docker-compose-plugin | Docker Compose V2 插件 |
2.3 生產(chǎn)級(jí)配置
| 配置項(xiàng) | 設(shè)置 | 說明 |
|---|---|---|
| 存儲(chǔ)驅(qū)動(dòng) | overlay2 | Ubuntu 默認(rèn),性能最優(yōu) |
| 日志驅(qū)動(dòng) | json-file | 默認(rèn)驅(qū)動(dòng),配置輪轉(zhuǎn)限制 |
| 日志大小限制 | 100MB/文件,3個(gè)文件 | 防止日志占滿磁盤 |
| 開機(jī)自啟 | 啟用 | systemd 管理 |
| 用戶權(quán)限 | 當(dāng)前用戶加入 docker 組 | 免 sudo 運(yùn)行 |
| 鏡像加速 | 國內(nèi)鏡像源 | 加速鏡像拉取 |
3. 實(shí)施步驟
3.1 卸載舊版本(如有)
sudo apt-get remove -y docker docker-engine docker.io containerd runc 2>/dev/null || true
3.2 安裝依賴包
sudo apt-get update
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
3.3 添加 Docker 官方 GPG 密鑰
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
3.4 添加 Docker APT 倉庫
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
3.5 安裝 Docker Engine
sudo apt-get update
sudo apt-get install -y \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
3.6 配置 Docker Daemon(生產(chǎn)級(jí)配置)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json > /dev/null <<EOF
{
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"storage-driver": "overlay2",
"live-restore": true,
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.xuanyuan.me"
]
}
EOF
配置說明:
| 參數(shù) | 說明 |
|---|---|
| log-driver | 日志驅(qū)動(dòng),json-file 為默認(rèn) |
| max-size | 單個(gè)日志文件最大 100MB |
| max-file | 最多保留 3 個(gè)日志文件 |
| storage-driver | 存儲(chǔ)驅(qū)動(dòng),overlay2 性能最優(yōu) |
| live-restore | 容器在 daemon 重啟時(shí)保持運(yùn)行 |
| registry-mirrors | 國內(nèi)鏡像加速器地址 |
3.7 啟動(dòng) Docker 并設(shè)置開機(jī)自啟
sudo systemctl daemon-reload sudo systemctl enable docker sudo systemctl start docker
3.8 配置用戶權(quán)限
sudo usermod -aG docker $USER
注意: 執(zhí)行后需要重新登錄或執(zhí)行 newgrp docker 使權(quán)限生效。
3.9 驗(yàn)證安裝
# 檢查 Docker 版本 docker --version # 檢查 Docker Compose 版本 docker compose version # 檢查 Docker 服務(wù)狀態(tài) sudo systemctl status docker # 運(yùn)行測(cè)試容器 docker run --rm hello-world
4. 驗(yàn)證清單
| 檢查項(xiàng) | 預(yù)期結(jié)果 | 命令 |
|---|---|---|
| Docker 版本 | 顯示版本號(hào) | docker --version |
| Compose 版本 | 顯示版本號(hào) | docker compose version |
| 服務(wù)狀態(tài) | active (running) | systemctl status docker |
| 開機(jī)自啟 | enabled | systemctl is-enabled docker |
| 用戶權(quán)限 | 免 sudo 運(yùn)行 | docker ps |
| 存儲(chǔ)驅(qū)動(dòng) | overlay2 | docker info | grep "Storage Driver" |
| 測(cè)試容器 | Hello from Docker! | docker run --rm hello-world |
5. 常用命令參考
# 查看 Docker 詳細(xì)信息 docker info # 查看運(yùn)行中的容器 docker ps # 查看所有容器 docker ps -a # 查看鏡像列表 docker images # 清理未使用資源 docker system prune -a # 查看磁盤使用情況 docker system df
6. 故障排查
6.1 服務(wù)啟動(dòng)失敗
sudo journalctl -xeu docker.service
6.2 權(quán)限問題
# 確認(rèn)用戶在 docker 組 groups $USER # 重新加載組權(quán)限 newgrp docker
6.3 網(wǎng)絡(luò)問題
# 檢查 Docker 網(wǎng)絡(luò) docker network ls # 重置 Docker 網(wǎng)絡(luò) sudo systemctl restart docker
7. 文檔信息
| 項(xiàng)目 | 值 |
|---|---|
| 創(chuàng)建時(shí)間 | 2026-01-10 |
| 目標(biāo)系統(tǒng) | Ubuntu 22.04.1 LTS |
| Docker 版本 | 29.1.4 |
| Docker Compose 版本 | v5.0.1 |
| containerd 版本 | 2.2.1 |
8. 總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker 本地部署 CSR 前端項(xiàng)目完整指南
本文詳細(xì)介紹了使用Docker部署Vue3+Vite前端項(xiàng)目的完整流程,通過這套方案,開發(fā)者可以輕松實(shí)現(xiàn)前端項(xiàng)目的容器化部署,確保開發(fā)、測(cè)試和生產(chǎn)環(huán)境的一致性,感興趣的可以了解一下2026-01-01
docker-swarm之使用Docker secret管理敏感數(shù)據(jù)
就Docker Swarm集群服務(wù)而言,secret 是塊狀數(shù)據(jù),例如密碼、SSH私鑰、SSL證書或其他不應(yīng)通過網(wǎng)絡(luò)傳輸或未加密存儲(chǔ)在Dockerfile或應(yīng)用程序源代碼中的數(shù)據(jù),我們可以使用Docker secret 集中管理這些數(shù)據(jù),所以接下來就帶大家了解一下如何使用Docker secret 管理敏感數(shù)據(jù)2023-08-08
Docker進(jìn)入容器運(yùn)行命令的詳細(xì)指南
Docker 是一個(gè)開源的容器化平臺(tái),廣泛應(yīng)用于開發(fā)和生產(chǎn)環(huán)境中,它允許開發(fā)者打包應(yīng)用程序及其依賴項(xiàng)到容器中,本文將詳細(xì)介紹如何通過 Docker 進(jìn)入容器內(nèi)部運(yùn)行命令,探討不同的場(chǎng)景和工具,并提供相關(guān)代碼示例,需要的朋友可以參考下2024-11-11
docker?Desktop安裝WSL?--update報(bào)錯(cuò)問題成功解決辦法
這篇文章主要介紹了如何在Windows?11上設(shè)置WSL2為默認(rèn)版本,解決WSL2安裝和卸載過程中遇到的問題,包括強(qiáng)制中斷命令、wsl--uninstall命令無效以及手動(dòng)刪除Linux發(fā)行版的方法,需要的朋友可以參考下2025-02-02
vscode 遠(yuǎn)程連接服務(wù)器docker容器的設(shè)置方法
本文主要介紹了vscode 遠(yuǎn)程連接服務(wù)器docker容器的設(shè)置方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
Docker使用Buildx多架構(gòu)鏡像構(gòu)建指南
Docker Buildx支持多平臺(tái)鏡像構(gòu)建,解決ARM/x86架構(gòu)兼容性問題,提升部署效率,通過QEMU模擬與跨平臺(tái)功能,實(shí)現(xiàn)一次構(gòu)建多架構(gòu)鏡像,本指南將逐步介紹如何使用Buildx構(gòu)建多架構(gòu)鏡像,并優(yōu)化構(gòu)建性能,感興趣的朋友一起看看吧2025-08-08

