融元旋
當(dāng)項(xiàng)目變得越來(lái)越復(fù)雜,一個(gè)服務(wù)已經(jīng)無(wú)法滿足需求時(shí),你可能需要同時(shí)部署數(shù)據(jù)庫(kù)、后端服務(wù)、前端網(wǎng)頁(yè)、緩存組件……這時(shí),如果還一個(gè)一個(gè)手動(dòng)dockerrun,簡(jiǎn)直是災(zāi)難
這就是DockerCompose登場(chǎng)的時(shí)機(jī)!
?一、什么是DockerCompose?為什么需要它?
DockerCompose是Docker官方推出的容器編排工具,用于定義和運(yùn)行多容器應(yīng)用。
通過(guò)一個(gè)docker-compose.yml文件,就可以用一條命令docker-composeup,一次性拉起整個(gè)項(xiàng)目中的多個(gè)服務(wù),像啟動(dòng)引擎一樣簡(jiǎn)單??
使用Compose的優(yōu)勢(shì):
一鍵啟動(dòng)/停止多個(gè)容器
配置集中管理,結(jié)構(gòu)清晰
支持服務(wù)依賴順序(如DB先啟動(dòng))
本地開(kāi)發(fā)、測(cè)試環(huán)境更輕松
更適合多人協(xié)作部署場(chǎng)景
二、docker-compose.yml文件結(jié)構(gòu)說(shuō)明
下面是一個(gè)典型的Compose配置文件結(jié)構(gòu):
version:"3.9"services:web:image:nginxports:-"8080:80"db:image:mysql:5.7environment:MYSQL_ROOT_PASSWORD:123456volumes:-db_data:/var/lib/mysqlvolumes:db_data:
關(guān)鍵結(jié)構(gòu)說(shuō)明:
三、常見(jiàn)服務(wù)組合案例
LAMP(Linux+Apache+MySQL+PHP)
services:apache:image:php:7.4-apacheports:-"8080:80"volumes:-./code:/var/www/htmlmysql:image:mysql:5.7environment:MYSQL_ROOT_PASSWORD:root
MEVN(MongoDB+Express+Vue+Node)
適用于現(xiàn)代前后端分離開(kāi)發(fā)架構(gòu):
services:frontend:build:./frontendports:-"3000:80"backend:build:./backendports:-"5000:5000"depends_on:-mongomongo:image:mongo
Compose可以靈活支持不同編程語(yǔ)言與框架組合,讓你更輕松實(shí)現(xiàn)項(xiàng)目整體容器化!
四、實(shí)戰(zhàn):一鍵部署多容器WordPress+MySQL
我們將部署一個(gè)最常見(jiàn)的實(shí)際案例:WordPress+MySQL組合。
創(chuàng)建項(xiàng)目結(jié)構(gòu):
wordpress-docker/├──docker-compose.yml
編輯docker-compose.yml:
version:"3.9"services:wordpress:image:wordpressports:-"8080:80"environment:WORDPRESS_DB_HOST:db:3306WORDPRESS_DB_USER:rootWORDPRESS_DB_PASSWORD:123456depends_on:-dbdb:image:mysql:5.7environment:MYSQL_ROOT_PASSWORD:123456volumes:-db_data:/var/lib/mysqlvolumes:db_data:
啟動(dòng)項(xiàng)目:
docker-composeup-d
打開(kāi)瀏覽器訪問(wèn)http://localhost:8080,你將看到熟悉的WordPress安裝界面!
?常用Compose命令匯總
總結(jié)一下
強(qiáng)推2023重量級(jí)好書《優(yōu)秀的人從來(lái)不會(huì)輸在表達(dá)上》,評(píng)價(jià)極高!
從此以后,一旦有別人解決不了的問(wèn)題,主管第一個(gè)想到的就是王鵬,可誰(shuí)又能想到他為了完成這些任務(wù)而在人后所做的艱苦努力呢? 那時(shí)候,王鵬還是一個(gè)毛頭小子,憑著一股子沖勁,他在別人都下班回家后獨(dú)自一個(gè)人在辦公室里加班加點(diǎn)。為了從客戶手里收回約定的錢款,王鵬不知道說(shuō)了多少好話,一雙嘴皮子都快要磨破了。只說(shuō)完了。
爆款!優(yōu)選圖書《優(yōu)秀的人從來(lái)不會(huì)輸在表達(dá)上》,揭秘實(shí)情讓你沉迷...
今日推薦:《優(yōu)秀的人從來(lái)不會(huì)輸在表達(dá)上》作者:王鵬--。點(diǎn)擊文末超鏈接開(kāi)始觀看吧~---精選段落--- 這樣說(shuō),就能化解困境小董聽(tīng)了老板的話,為剛才自己說(shuō)出的推卸責(zé)任的話羞愧得無(wú)地自容-。你看,同樣是在沒(méi)有辦好老板交代的事情的情況下,正是由于兩個(gè)人說(shuō)話的方式不同,才會(huì)產(chǎn)生天差地別的結(jié)果。小董不先是什么|。
鄭欽文商業(yè)前景一片大好,她完美湊齊了所有正面要素
同學(xué)們和老師們的鼓勵(lì)讓我樹(shù)立了信心,特別是我的班主任王鵬老師,多次對(duì)我進(jìn)行思想引導(dǎo)|-。無(wú)論是五次保送考試還是日常中,王老師總能在百忙之中為同學(xué)們排憂解難,團(tuán)結(jié)班級(jí),維持秩序,安排活動(dòng)_。在王老師的影響下,我努力拼搏,夙興夜寐,順利拿到了保送資格——。在??贾?,我也通過(guò)了俄語(yǔ)口試筆試與語(yǔ)文筆試,沒(méi)有辜負(fù)等我繼續(xù)說(shuō)。
來(lái)源:紅網(wǎng)
作者:靖惜雪
編輯:郭怡君
本文為紅辣椒評(píng)論 原創(chuàng)文章,僅系作者個(gè)人觀點(diǎn),不代表紅網(wǎng)立場(chǎng)。轉(zhuǎn)載請(qǐng)附原文出處鏈接和本聲明。