阿里云linux+docker+WordPress搭建個(gè)人博客(docker微服務(wù)學(xué)習(xí))

前言

????????最近在學(xué)習(xí)docker脑漫,然后看到了阮一峰老師的博客,其中就有docker微服務(wù)的教程校翔,剛好手上有個(gè)阿里云的服務(wù)器踱稍,就想著試試看在阿里云上搭建一個(gè)個(gè)人博客練練手曲饱,話不多說,接下來就開始我們的操作珠月。

在開始之前扩淀,我們需要粗略的了解一下Docker和WordPress

一、Docker是什么啤挎?

????????在開始操作之前驻谆,我們先來了解一下Docker是什么,我們先看看百度上對(duì)Docker的描述吧

Docker 是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的Linux機(jī)器或Windows 機(jī)器上,也可以實(shí)現(xiàn)虛擬化,容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口胜臊。

????????簡(jiǎn)而言之勺卢,docker就是一個(gè)應(yīng)用容器引擎,就是一個(gè)引擎象对,那么黑忱,容器又是什么呢,我們來看官方對(duì)它的解釋吧

容器是一個(gè)標(biāo)準(zhǔn)化的軟件單元勒魔,它將代碼及其所有依賴關(guān)系打包甫煞,以便應(yīng)用程序從一個(gè)計(jì)算環(huán)境可靠快速地運(yùn)行到另一個(gè)計(jì)算環(huán)境。Docker容器鏡像是一個(gè)輕量的獨(dú)立的可執(zhí)行的軟件包冠绢。包含程序運(yùn)行的時(shí)候所需的一切:代碼危虱,運(yùn)行時(shí)間,系統(tǒng)工具唐全,系統(tǒng)庫(kù)和設(shè)置。

????????這樣看著是不是不太明白蕊玷?想必大家都用過虛擬機(jī)吧邮利,接下來我們來看個(gè)Docker與虛擬機(jī)的對(duì)比圖,大家就能更好的理解Docker了垃帅。

虛擬機(jī)
Docker

????????如上圖所示延届,在宿主機(jī)中安裝了系統(tǒng),系統(tǒng)中安裝了虛擬機(jī)贸诚,虛擬機(jī)虛擬出一臺(tái)計(jì)算機(jī)方庭,在虛擬計(jì)算機(jī)中安裝完整的系統(tǒng),再將服務(wù)部署在虛擬系統(tǒng)中酱固。部署的服務(wù)受虛擬機(jī)的內(nèi)核調(diào)度械念,虛擬機(jī)受主機(jī)的調(diào)度,多層及下主機(jī)資源產(chǎn)生了嚴(yán)重的浪費(fèi)运悲。如果要在一臺(tái)機(jī)器上部署多個(gè)服務(wù)龄减,還要環(huán)境隔離,那就需要有多個(gè)虛擬機(jī)班眯,所需要的資源也就不言而喻希停。
????????容器是在主機(jī)的操作系統(tǒng)中,隔離出單獨(dú)的用戶空間署隘,每個(gè)都是單獨(dú)的沙箱宠能,環(huán)境互不影響。需要的系統(tǒng)資源也只是服務(wù)所需要的資源磁餐,減少了虛擬主機(jī)的資源開銷违崇。
????????如果簡(jiǎn)單的來看,容器相當(dāng)于虛擬機(jī),但是容器跟虛擬機(jī)還是有很大不同的亦歉,虛擬機(jī)是硬件層面的虛擬化恤浪,而Docker容器是系統(tǒng)層面的虛擬化,每個(gè)容器化應(yīng)用都會(huì)共享相同的操作系統(tǒng)肴楷。容器可以看成一個(gè)裝好了一組特定應(yīng)用的虛擬機(jī)水由,它直接利用了宿主機(jī)的內(nèi)核,抽象層比虛擬機(jī)更少赛蔫,更加輕量化砂客,啟動(dòng)速度極快。在以前使用虛擬機(jī)的話呵恢,一臺(tái)服務(wù)器跑幾個(gè)服務(wù)就差不多了鞠值,而現(xiàn)在用了Docker,可以創(chuàng)建很多的容器渗钉,同時(shí)跑更多的服務(wù)彤恶。
????????更詳細(xì)的大家可以去看看阮一峰老師的博客docker入門教程

2、WordPress是什么鳄橘?

????????WordPress是使用PHP語(yǔ)言開發(fā)的博客平臺(tái)声离,用戶可以在支持PHP和MySQL數(shù)據(jù)庫(kù)的服務(wù)器上架設(shè)屬于自己的網(wǎng)站。也可以把 WordPress當(dāng)作一個(gè)內(nèi)容管理系統(tǒng)(CMS)來使用瘫怜。
????????WordPress是一款個(gè)人博客系統(tǒng)术徊,并逐步演化成一款內(nèi)容管理系統(tǒng)軟件,它是使用PHP語(yǔ)言和MySQL數(shù)據(jù)庫(kù)開發(fā)的,用戶可以在支持 PHP 和 MySQL數(shù)據(jù)庫(kù)的服務(wù)器上使用自己的博客鲸湃。
????????WordPress有許多第三方開發(fā)的免費(fèi)模板赠涮,安裝方式簡(jiǎn)單易用。不過要做一個(gè)自己的模板暗挑,則需要你有一定的專業(yè)知識(shí)笋除。比如你至少要懂的標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用HTML代碼、CSS炸裆、PHP等相關(guān)知識(shí)株憾。
????????WordPress官方支持中文版,同時(shí)有愛好者開發(fā)的第三方中文語(yǔ)言包晒衩,如wopus中文語(yǔ)言包嗤瞎。WordPress擁有成千上萬(wàn)個(gè)各式插件和不計(jì)其數(shù)的主題模板樣式。

介紹完docker和WordPress之后听系,我們就正式開始搭建個(gè)人博客了

1贝奇、Linux下安裝Docker

首先,我們打開Linux終端靠胜,獲取root權(quán)限掉瞳,輸入以下命令毕源,執(zhí)行,安裝Docker:

yum install docker -y
第一步

執(zhí)行完成后陕习,終端輸出如下
第一步完成

接下來霎褐,我們可以用以下命令查看Docker版本:

docker version

輸出如下:
Docker版本

然后我們這個(gè)時(shí)候在終端中輸入以下命令啟動(dòng)Docker,并把Docker設(shè)為開機(jī)啟動(dòng):

service docker start  #啟動(dòng)docker
chkconfig docker on  #將docker設(shè)置為開機(jī)啟動(dòng)
運(yùn)行結(jié)果

好了该镣,現(xiàn)在我們的Docker已經(jīng)安裝成功了冻璃。

2、Docker中配置WordPress

在這一步中损合,我們需要?jiǎng)?chuàng)建一個(gè)容器省艳,用來運(yùn)行WordPress,一起來操作一波吧嫁审。
首先跋炕,由于WordPress運(yùn)行需要Mysql數(shù)據(jù)庫(kù),所以我們需要把Mysql數(shù)據(jù)庫(kù)和WordPress的鏡像獲取到我們的主機(jī)律适。

獲取mysql鏡像

在終端中輸入以下命令:

docker search mysql #搜索mysql鏡像
docker pull mysql:5.7 #獲取mysql鏡像 :后為mysql版本 若不指定版本辐烂,則默認(rèn)為最新版
搜索mysql鏡像

獲取MySQL鏡像

獲取WordPress鏡像

docker search wordpress #搜索WordPress鏡像
docker pull wordpress #獲取WordPress鏡像,不加版本號(hào)默認(rèn)為最新
搜索wordpress鏡像

獲取WordPress鏡像

好了捂贿,我們把鏡像都獲取下來了纠修,接下來可以使用下面的命令查看我們的鏡像:

docker image ls 
查看鏡像

既然鏡像都獲取好了,我們就可以創(chuàng)建容器了

在終端中輸入以下命令創(chuàng)建MySQL容器:

docker run -d --name wordpressdb --env MYSQL_ROOT_PASSWORD=123456 --env MYSQL_DATABASE=wordpress mysql:5.7

這里的幾個(gè)參數(shù)都什么意思呢眷蜓?
-d表示容器啟動(dòng)后,在后臺(tái)運(yùn)行
--name wordpressdb:容器的名字叫做wordpressdb
--env MYSQL_ROOT_PASSWORD=123456:向容器進(jìn)程傳入一個(gè)環(huán)境變量MYSQL_ROOT_PASSWORD胎围,該變量會(huì)被用作 MySQL 的根密碼吁系。
--env MYSQL_DATABASE=wordpress:向容器進(jìn)程傳入一個(gè)環(huán)境變量MYSQL_DATABASE,容器里面的 MySQL 會(huì)根據(jù)該變量創(chuàng)建一個(gè)同名數(shù)據(jù)庫(kù)

執(zhí)行結(jié)束后會(huì)產(chǎn)生一串字符串白魂,這串字符串為容器的ID


執(zhí)行結(jié)果

接下來汽纤,我們繼續(xù)創(chuàng)建WordPress容器:

docker run -d -p 80:80 --name wordpress --env WORDPRESS_DB_PASSWORD=123456 --link wordpressdb:mysql wordpress

其中:
?????????-p 80:80是將容器的80端口映射到主機(jī)的80端口
?????????--env WORDPRESS_DB_PASSWORD=123456 為數(shù)據(jù)庫(kù)密碼
?????????--link wordpressdb:mysql wordpress表示 WordPress 容器要連到wordpressdb容器,冒號(hào)表示該容器的別名是mysql


執(zhí)行結(jié)果

現(xiàn)在我們可以使用以下命令查看正在運(yùn)行的容器:

docker container ls #可以加--all查看所有容器福荸,包括停止運(yùn)行的
查看容器

好了蕴坪,大功告成,接下來我們?cè)L問主機(jī)的IP地址敬锐,就可以進(jìn)行WordPress配置啦

使用IP直接訪問

剩下的操作就是配置WordPress了背传,跟著流程走完即可。

參考:
http://www.reibang.com/p/477974212ba8
https://www.runoob.com/docker/docker-command-manual.html
http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末台夺,一起剝皮案震驚了整個(gè)濱河市径玖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌颤介,老刑警劉巖梳星,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赞赖,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡冤灾,警方通過查閱死者的電腦和手機(jī)前域,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來韵吨,“玉大人匿垄,你說我怎么就攤上這事⊙” “怎么了年堆?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)盏浇。 經(jīng)常有香客問我变丧,道長(zhǎng),這世上最難降的妖魔是什么绢掰? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任痒蓬,我火速辦了婚禮,結(jié)果婚禮上滴劲,老公的妹妹穿的比我還像新娘攻晒。我一直安慰自己,他們只是感情好班挖,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布鲁捏。 她就那樣靜靜地躺著,像睡著了一般萧芙。 火紅的嫁衣襯著肌膚如雪给梅。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天双揪,我揣著相機(jī)與錄音动羽,去河邊找鬼。 笑死渔期,一個(gè)胖子當(dāng)著我的面吹牛运吓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播疯趟,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼拘哨,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了信峻?” 一聲冷哼從身側(cè)響起宅静,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎站欺,沒想到半個(gè)月后姨夹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纤垂,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年磷账,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了峭沦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡逃糟,死狀恐怖吼鱼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情绰咽,我是刑警寧澤菇肃,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站取募,受9級(jí)特大地震影響琐谤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜玩敏,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一斗忌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧旺聚,春花似錦织阳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至碱璃,卻和暖如春弄痹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背厘贼。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工界酒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留圣拄,地道東北人嘴秸。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像庇谆,于是被迫代替她去往敵國(guó)和親岳掐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355