融忻暢
當(dāng)項(xiàng)目變得越來越復(fù)雜,一個(gè)服務(wù)已經(jīng)無法滿足需求時(shí),你可能需要同時(shí)部署數(shù)據(jù)庫、后端服務(wù)、前端網(wǎng)頁、緩存組件……這時(shí),如果還一個(gè)一個(gè)手動(dòng)dockerrun,簡(jiǎn)直是災(zāi)難
這就是DockerCompose登場(chǎng)的時(shí)機(jī)!
?一、什么是DockerCompose?為什么需要它?
DockerCompose是Docker官方推出的容器編排工具,用于定義和運(yùn)行多容器應(yīng)用。
通過一個(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))
本地開發(fā)、測(cè)試環(huán)境更輕松
更適合多人協(xié)作部署場(chǎng)景
二、docker-compose.yml文件結(jié)構(gòu)說明
下面是一個(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)說明:
三、常見服務(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)代前后端分離開發(fā)架構(gòu):
services:frontend:build:./frontendports:-"3000:80"backend:build:./backendports:-"5000:5000"depends_on:-mongomongo:image:mongo
Compose可以靈活支持不同編程語言與框架組合,讓你更輕松實(shí)現(xiàn)項(xiàng)目整體容器化!
四、實(shí)戰(zhàn):一鍵部署多容器WordPress+MySQL
我們將部署一個(gè)最常見的實(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
打開瀏覽器訪問http://localhost:8080,你將看到熟悉的WordPress安裝界面!
?常用Compose命令匯總
總結(jié)一下
葉爾羌汗國(guó)前期:汗權(quán)的逐步穩(wěn)固
14世紀(jì)蒙古巴魯刺思部貴族帖木兒在推翻西察合臺(tái)汗國(guó)后創(chuàng)立了帖木兒帝國(guó),但他并非黃金家族的直系男嗣——。帖木兒的后代巴布爾在印度建立了印度歷史上最后一個(gè)封建王朝——莫臥兒王朝。由于莫臥兒王朝的黃金家族血統(tǒng)是來自母系,所以一般并不將莫臥兒王朝視為黃金家族后裔——。同樣俄羅斯在被蒙古人統(tǒng)治時(shí)期也存在羅斯王公等會(huì)說-。
突厥化蒙古人?帖木兒打起這哥倆都?jí)蚝?斯大林下令掘墓一探究竟
近代醫(yī)學(xué)在販奴貿(mào)易、帝國(guó)征戰(zhàn)和殖民統(tǒng)治中誕生18世紀(jì)中葉以前,西方的醫(yī)生顯然知道空氣對(duì)人類生存至關(guān)重要,但不知道在擁擠的空間里,人會(huì)如何受損。1756年6月,英國(guó)在孟加拉的一支駐軍被莫臥兒王朝孟加拉的世系統(tǒng)治者俘獲后,關(guān)押在閉塞、狹窄的空間中,總共146人身陷囹圄|_。被囚禁的人們不斷乞求看守給予水,但因?yàn)橄M隳軡M意|_。
鐵打的地盤流水的官 科普國(guó)家與王朝的區(qū)別
滿速兒接手的汗國(guó)不敵杜格拉特部,阿巴拜克攻陷阿克蘇,基本控制了祖先原有的向陽地,但也耗盡了力量。1514年,滿速兒的弟弟賽義德在表兄弟巴布爾(即日后莫臥兒帝國(guó)的創(chuàng)立者)的支持下奪取喀什噶爾政權(quán),阿巴拜克三十余年的統(tǒng)治迅速崩潰——-。阿巴拜克敗亡,一方面是自身殘暴所致,另一方面是杜格拉特內(nèi)部爭(zhēng)斗的結(jié)果。當(dāng)時(shí),..
來源:紅網(wǎng)
作者:經(jīng)旭珍
編輯:林義心
本文為紅辣椒評(píng)論 原創(chuàng)文章,僅系作者個(gè)人觀點(diǎn),不代表紅網(wǎng)立場(chǎng)。轉(zhuǎn)載請(qǐng)附原文出處鏈接和本聲明。