 Docker 安裝全流程:從入門到生產(chǎn)實(shí)踐)
1. 引言Docker 作為當(dāng)下最流行的容器化技術(shù)已經(jīng)成為開發(fā)、測(cè)試、部署環(huán)節(jié)中不可或缺的基礎(chǔ)設(shè)施。它通過(guò)將應(yīng)用及其依賴打包成標(biāo)準(zhǔn)化的鏡像實(shí)現(xiàn)了「一次構(gòu)建處處運(yùn)行」的目標(biāo)大幅降低了環(huán)境不一致帶來(lái)的部署難題。本文將從零開始帶你完整走一遍 Docker 部署的全流程從環(huán)境安裝、鏡像構(gòu)建到容器運(yùn)行、編排管理再到生產(chǎn)環(huán)境的落地實(shí)踐幫助你建立一套清晰、可復(fù)用的部署方法論。2. Docker 核心概念在動(dòng)手部署之前先厘清幾個(gè)核心概念它們是理解整個(gè)流程的基石。鏡像Image一個(gè)只讀的模板包含應(yīng)用代碼、運(yùn)行時(shí)、依賴庫(kù)和配置。鏡像是構(gòu)建容器的藍(lán)圖。容器Container鏡像的運(yùn)行實(shí)例是一個(gè)隔離的進(jìn)程。容器可以被啟動(dòng)、停止、刪除彼此之間相互隔離。Dockerfile一個(gè)文本文件用指令描述如何一步步構(gòu)建鏡像。倉(cāng)庫(kù)Repository存放鏡像的地方分為本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)如 Docker Hub、阿里云鏡像倉(cāng)庫(kù)。數(shù)據(jù)卷Volume用于持久化容器產(chǎn)生的數(shù)據(jù)避免容器刪除后數(shù)據(jù)丟失。網(wǎng)絡(luò)NetworkDocker 提供的網(wǎng)絡(luò)模式用于容器之間以及容器與宿主機(jī)的通信。3. 環(huán)境準(zhǔn)備與安裝3.1 安裝 Dockerdocker.io以 Ubuntu 為例安裝 Docker 主要有兩種方式方式一使用 apt 軟件源安裝推薦適用于大多數(shù) Ubuntu 版本通過(guò)系統(tǒng)軟件源安裝# 直接使用 Ubuntu 軟件源安裝 Dockerdocker.io 包含 Docker Engine 及 CLIsudoaptupdatesudoaptinstalldocker.io-y方式二使用官方安裝腳本適用于 Ubuntu 24 等新版本官方提供了便捷的安裝腳本會(huì)自動(dòng)檢測(cè)系統(tǒng)版本并安裝最新穩(wěn)定版 Docker# 1. 下載官方安裝腳本curl-fsSLhttps://get.docker.com-oinstall-docker.sh# 2. 查看腳本內(nèi)容可選建議檢查catinstall-docker.sh# 3. 使用 --dry-run 參數(shù)預(yù)覽安裝步驟可選sudoshinstall-docker.sh --dry-run# 4. 執(zhí)行安裝sudoshinstall-docker.sh注意方式二會(huì)安裝 Docker 官方倉(cāng)庫(kù)的最新版本而方式一安裝的是 Ubuntu 軟件源中的版本。對(duì)于 Ubuntu 24 等新版本系統(tǒng)推薦使用方式二獲取最新特性支持。3.2 驗(yàn)證安裝# 查看 Docker 版本docker--version# 查看 Docker 運(yùn)行狀態(tài)sudosystemctl statusdocker# 運(yùn)行 hello-world 驗(yàn)證sudodockerrun hello-world3.3 配置鏡像加速國(guó)內(nèi)訪問(wèn) Docker Hub 較慢建議配置鏡像加速器。這里使用 DaoCloud、1Panel 等公共鏡像源通過(guò)編輯/etc/docker/daemon.json寫入配置sudovi/etc/docker/daemon.json在文件中輸入以下內(nèi)容然后按ESC鍵輸入:wq!保存退出{registry-mirrors:[https://docker.m.daocloud.io,https://docker.1panel.live,https://hub.rat.dev]}保存后重啟 Docker 使配置生效sudosystemctl daemon-reloadsudosystemctl restartdocker3.4 拉取 nginx 鏡像驗(yàn)證服務(wù)配置完鏡像加速后拉取一個(gè) nginx 鏡像并運(yùn)行容器驗(yàn)證 Docker 服務(wù)是否正常工作# 拉取 nginx 鏡像sudodockerpull nginx# 查看本地鏡像列表sudodockerimages# 后臺(tái)運(yùn)行 nginx 容器映射宿主機(jī) 8080 端口到容器 80 端口sudodockerrun-d--namemy-nginx-p8080:80 nginx# 查看容器運(yùn)行狀態(tài)sudodockerps# 驗(yàn)證服務(wù)是否正常返回 nginx 歡迎頁(yè)即表示成功curlhttp://localhost:8080在瀏覽器中打開http://192.168.175.155:8080即可看到 nginx 的歡迎頁(yè)面效果演示如下執(zhí)行curl http://192.168.175.155:8080后如果能看到 nginx 的歡迎頁(yè)面說(shuō)明鏡像加速配置生效、Docker 服務(wù)運(yùn)行正常。