Docker?Compose最常用命令(直接復(fù)制用)
整理 《Docker Compose 最常用命令 + 關(guān)鍵概念 + 常用 compose.yml 模板》表格形式。
這是 Docker Compose 的“新手 → 熟練者”最實(shí)用合集,可直接復(fù)制使用。
一、Docker Compose 命令全表(最常用 + 場景化)
| 命令語法 | 核心功能 | 常用參數(shù)說明 | 示例場景(可復(fù)制) |
|---|---|---|---|
docker compose up | 創(chuàng)建并啟動所有服務(wù) | -d 后臺運(yùn)行--build 構(gòu)建鏡像 | 啟動所有服務(wù)(后臺)docker compose up -d |
docker compose down | 停止并刪除容器、網(wǎng)絡(luò) | --volumes 刪除卷 | 停止并清理:docker compose down |
docker compose build | 構(gòu)建 compose 中定義的鏡像 | --no-cache 不使用緩存 | 重新構(gòu)建鏡像:docker compose build |
docker compose ps | 查看 compose 管理的容器 | — | docker compose ps |
docker compose logs | 查看所有服務(wù)日志 | -f 持續(xù)輸出 | 實(shí)時查看日志:docker compose logs -f |
docker compose restart | 重啟所有服務(wù) | 可指定服務(wù)名 | 重啟后端服務(wù):docker compose restart api |
docker compose exec SERVICE bash | 進(jìn)入容器終端 | — | 進(jìn)入后端:docker compose exec api bash |
docker compose stop | 停止服務(wù)但不刪除容器 | — | 停止所有服務(wù):docker compose stop |
docker compose start | 啟動已創(chuàng)建的服務(wù) | — | 重啟所有服務(wù):docker compose start |
二、Docker Compose 的核心概念(必懂)
| 名稱 | 意義 | 場景解釋 |
|---|---|---|
| services | 定義容器(Nginx、Node 等) | 多服務(wù)部署 |
| image | 使用的鏡像 | 拉取或構(gòu)建 |
| build | 構(gòu)建鏡像的目錄 | Node 項(xiàng)目 |
| ports | 端口映射 | 80:80 |
| volumes | 掛載文件 | 持久化數(shù)據(jù) |
| environment | 環(huán)境變量 | 傳遞配置 |
| depends_on | 啟動順序 | Web → API → DB |
| networks | 定義網(wǎng)絡(luò) | 服務(wù)互聯(lián) |
三、最常用的 Compose 模板(可直接復(fù)制)
1.Node + Nginx + Redis(前后端分離)
version: '3'
services:
frontend:
image: nginx
ports:
- "80:80"
volumes:
- ./dist:/usr/share/nginx/html
- ./nginx.conf:/etc/nginx/nginx.conf
depends_on:
- api
api:
build: ./server
ports:
- "3000:3000"
environment:
- NODE_ENV=production
depends_on:
- redis
redis:
image: redis:latest
ports:
- "6379:6379"
volumes:
- redis-data:/data
volumes:
redis-data:
2.MySQL + Adminer(后端常用)
version: '3'
services:
mysql:
image: mysql:8
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
volumes:
- mysql-data:/var/lib/mysql
adminer:
image: adminer
ports:
- "8080:8080"
depends_on:
- mysql
volumes:
mysql-data:
3.生產(chǎn)環(huán)境:前端(Vue/React)+ 后端(Node)+ 反向代理(Nginx)
version: '3'
services:
web:
image: nginx
ports:
- "80:80"
volumes:
- ./frontend/dist:/usr/share/nginx/html
- ./nginx.conf:/etc/nginx/nginx.conf
depends_on:
- api
api:
build: ./backend
ports:
- "3000:3000"
environment:
- NODE_ENV=production
networks:
default:
driver: bridge
四、最常用 Compose 操作流(直接復(fù)制用)
啟動所有服務(wù)(后臺)
docker compose up -d
重新構(gòu)建 + 啟動
docker compose up -d --build
停止所有服務(wù)
docker compose stop
停止并刪除容器 + 網(wǎng)絡(luò)
docker compose down
刪除所有并移除卷(非常干凈)
docker compose down --volumes
查看日志(所有服務(wù))
docker compose logs -f
進(jìn)入 api 容器
docker compose exec api bash
五、精簡記憶版(10 條即可掌握 Compose)
docker compose up -d docker compose up -d --build docker compose down docker compose down --volumes docker compose ps docker compose logs -f docker compose restart docker compose exec service bash docker compose stop docker compose start
總結(jié)
到此這篇關(guān)于Docker Compose最常用命令的文章就介紹到這了,更多相關(guān)Docker Compose常用命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
推送docker鏡像到harbor的實(shí)現(xiàn)方式
這篇文章主要介紹了推送docker鏡像到harbor的實(shí)現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-06-06
Docker獲取鏡像報錯docker: Error response from daemon
這篇文章主要介紹了Docker獲取鏡像報錯docker: Error response from daemon, 出現(xiàn)了鏡像獲取報錯的問題,找到了解決的方法記一下,需要的朋友可以參考下2018-08-08
使用Docker部署war包項(xiàng)目的實(shí)現(xiàn)
這篇文章主要介紹了使用Docker部署war包項(xiàng)目的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Docker容器定時備份數(shù)據(jù)庫并發(fā)送到指定郵箱(設(shè)計(jì)思路)
這篇文章主要介紹了Docker容器定時備份數(shù)據(jù)庫并發(fā)送到指定郵箱,文中寫了一下shell腳本,邏輯也很簡單,當(dāng)前時間與啟動時間相同時,則調(diào)用sendmail函數(shù)發(fā)送郵件,具體腳本跟隨小編一起看看吧2022-01-01
使用rpm安裝指定版本docker(1.12.6)的詳細(xì)步驟
為了防止安裝高版本的docker引發(fā)的錯誤,需要安裝1.12.6版本的docker,下面小編給大家?guī)砹耸褂胷pm安裝指定版本的docker(1.12.6)的步驟,感興趣的朋友一起看看吧2021-08-08
解決'nacos默認(rèn)secret.key配置不當(dāng)權(quán)限繞過漏洞'的問題
這篇文章主要介紹了解決“nacos默認(rèn)secret.key配置不當(dāng)權(quán)限繞過漏洞“的問題,解決這個問題需要對這個key的默認(rèn)值進(jìn)行修改,建議不要使用明文,可以用base64,key的長度要32位以上,下面介紹一下在兩種環(huán)境下的修改方法,感興趣的朋友一起看看吧2024-01-01
使用docker部署java項(xiàng)目運(yùn)行環(huán)境的實(shí)現(xiàn)步驟
本文主要介紹了使用docker部署java項(xiàng)目運(yùn)行環(huán)境的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01
Docker 制作鏡像Dockerfile和commit操作
這篇文章主要介紹了Docker 制作鏡像Dockerfile和commit操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
docker搭建redis哨兵集群并且整合springboot的實(shí)現(xiàn)
本文主要介紹了docker搭建redis哨兵集群并且整合springboot的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

