步驟2:CentOS7.5基于docker安裝nginx

1. 查看docker已經(jīng)下載的(已有的)鏡像

請忽略我已下載好的nginx鏡像

image.png

2. 去官方公有倉庫查詢nginx鏡像

其中第一個就是nginx官網(wǎng)鏡像斑唬,且STARS最多徒役,我們這次就用這個

image.png

3. 拉取該鏡像

因為我之前拉取過袍暴,所以后面的輸出和第一次拉取的輸出不是太一致

image.png

4. 再次查看本地鏡像

此時贞言,就看到本地有了該鏡像

image.png

5. 啟動一下該鏡像妄田,使用nginx服務酱塔,代理本機8080端口(測試是不是好使)

-d: 后臺運行
-p: 端口映射 冒號前是本機端口,冒號后是容器端口

image.png

訪問本機ip:8080 即可訪問該頁面赫舒,代表nginx啟動成功

image.png

6.關閉容器

docker stop XXXXX(容器id前幾位)

image.png

not end

至此 簡單的docker安裝nginx并啟動算是成功了,接下來就會產(chǎn)生一個疑問葵礼,如果我想修改nginx的配置怎么辦艰山,我想更改nginx中的資源文件怎么辦橡娄?接下來給出一個最實用的辦法瓶籽,就是將容器中的目錄和本機目錄做映射俏让,以達到修改本機目錄文件就影響到容器中的文件。

1.本機創(chuàng)建實例文件夾

/home文件夾下新建mutou文件夾茬暇,木頭文件夾下新建nginx文件夾首昔,nginx文件夾下新建conf.d文件夾,html文件夾糙俗,大致結(jié)構(gòu)如下:

/home
    |---mutou
           |----nginx
                  |----conf.d
                  |----html

2. 在conf.d文件夾下新建default.conf文件勒奇,內(nèi)容如下:

server {
    listen       80;
    server_name  localhost;
    # 原來的配置,匹配根路徑
    #location / {
    #    root   /usr/share/nginx/html;
    #    index  index.html index.htm;
    #}
    # 更該配置巧骚,匹配/路徑赊颠,修改index.html的名字,用于區(qū)分該配置文件替換了容器中的配置文件
    location / {
        root   /usr/share/nginx/html;
        index  index-test.html index.htm;
    }
}

3.在html中編寫index-test.html劈彪,用以判斷文件夾映射成功竣蹦,內(nèi)容如下:

<html>
  <body>
    <h2>it is html1</h2>
  </body>
</html>

4. 啟動nginx(8080),映射路徑

命令比較長沧奴,其實就是多加了兩個參數(shù)痘括,-v,-v的意思就是冒號前面代表本機路徑滔吠,冒號后面代表容器內(nèi)的路徑纲菌,兩個路徑進行了映射,本機路徑中的文件會覆蓋容器內(nèi)的文件疮绷。
nginx容器內(nèi)的一些文件位置:
日志位置:/var/log/nginx/
配置文件位置:/etc/nginx/
項目位置:/usr/share/nginx/html

啟動代碼如下:

docker run -d -p 8080:80 -v /home/mutou/nginx/conf.d:/etc/nginx/conf.d  -v /home/mutou/nginx/html:/usr/share/nginx/html nginx
image.png

5. 驗證

此時訪問ip:8080翰舌,發(fā)現(xiàn)展示的不是nginx的默認頁面了,而是我們新加入的頁面冬骚,這樣就證明我們兩個-v映射的文件夾都起作用了椅贱。

image.png

6. 開始反向代理

此時靜態(tài)頁面網(wǎng)站已經(jīng)部署上了懂算,但是還是會顯示一個端口8080出來,就十分不爽庇麦,怎么把端口干掉呢犯犁?而是換成XXXXX.com/demo1 或者 XXXXX.com/demo2這種效果呢?下面使用nginx的反向代理實現(xiàn)女器。

7. 增加文件夾酸役,達到下面的效果

/home
    |---mutou
           |----nginx
                  |----conf.d
                  |----html
                  |----conf.d2

我們在conf.d2中配置另一個nginx容器的配置文件,文件內(nèi)容如下:

server {
    listen       80;
    server_name  localhost;
    location /demo1 {
        # 在該位置配置反向代理驾胆,將ip/demo1請求攔截涣澡,發(fā)送給8080端口,如果不是本機請使用公網(wǎng)ip
        proxy_pass   http://你的剛才的ip地址:8080/;
    }
}

8. 再啟動一個nginx(80)丧诺,專門作為反向代理映射入桂,將本機80端口代理到nginx的80端口上,并映射兩端的配置文件地址驳阎。

docker run -d -p 80:80 -v /home/mutou/nginx/conf.d2:/etc/nginx/conf.d nginx

此時 訪問 ip/demo1 即可映射到了ip:8080上抗愁,成功完成反向代理。


image.png

9.拓展

當有了反向代理后呵晚,自然而然就引出了負載均衡,下面簡單實現(xiàn)負載均衡的效果蜘腌,實現(xiàn)該效果再添加一個nginx,所以要增加一個文件夾饵隙。

/home
    |---mutou
           |----nginx
                  |----conf.d
                  |----html
                  |----conf.d2
                  |----html3

html3中的代碼如下:

<html>
  <body>
    <h2>it is html3</h2>
  </body>
</html>

10. 啟動nginx(8081)

啟動命令如下:

docker run -d -p 8081:80 -v /home/mutou/nginx/conf.d:/etc/nginx/conf.d  -v /home/mutou/nginx/html3:/usr/share/nginx/html nginx

11. 訪問ip:8081

image.png

12.配置負載均衡撮珠,訪問ip/demo1時,平均分發(fā)到8080端口和8081端口上金矛,即it is html1it is html3間接出現(xiàn)芯急。

配置負載均衡,那就是配置在第二次的nginx上驶俊,就是反向代理的nginx上娶耍,我們?nèi)onf.d2文件夾下,修改default.conf文件饼酿,如下:

upstream group1{
    server 你的剛才的ip地址:8080;
    server 你的剛才的ip地址:8081;
}

server {
    listen       80;
    server_name  localhost;
    location /demo1 {
        proxy_pass   http://group1/;
    }
}

此時榕酒,查看所有運行中的docker容器:docker ps

image.png

然后重啟該容器,docker restart 容器id

13. 查看效果

訪問ip/demo1嗜湃,每次刷新頁面奈应,頁面都會在html1和html3中進行切換,此時負載均衡的效果就實現(xiàn)了购披。

https://raw.githubusercontent.com/xicunyang/images/master/change-page.gif

14. 配置負載均衡的權(quán)重

可以使用下面的配置修改兩個端口的權(quán)重(即誰被訪問的概率大)

upstream group1{
    server 你的剛才的ip地址:8080 weight=1;
    server 你的剛才的ip地址:8081 weight=10;
}

server {
    listen       80;
    server_name  localhost;
    location /demo1 {
        proxy_pass   http://group1/;
    }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市肩榕,隨后出現(xiàn)的幾起案子刚陡,更是在濱河造成了極大的恐慌惩妇,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件筐乳,死亡現(xiàn)場離奇詭異歌殃,居然都是意外死亡,警方通過查閱死者的電腦和手機蝙云,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門氓皱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人勃刨,你說我怎么就攤上這事波材。” “怎么了身隐?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵廷区,是天一觀的道長。 經(jīng)常有香客問我贾铝,道長隙轻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任垢揩,我火速辦了婚禮玖绿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘叁巨。我一直安慰自己镰矿,他們只是感情好,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布俘种。 她就那樣靜靜地躺著秤标,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宙刘。 梳的紋絲不亂的頭發(fā)上苍姜,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天,我揣著相機與錄音悬包,去河邊找鬼衙猪。 笑死,一個胖子當著我的面吹牛布近,可吹牛的內(nèi)容都是我干的垫释。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼撑瞧,長吁一口氣:“原來是場噩夢啊……” “哼棵譬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起预伺,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤订咸,失蹤者是張志新(化名)和其女友劉穎曼尊,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體脏嚷,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡骆撇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了父叙。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片神郊。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖趾唱,靈堂內(nèi)的尸體忽然破棺而出涌乳,到底是詐尸還是另有隱情,我是刑警寧澤鲸匿,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布爷怀,位于F島的核電站,受9級特大地震影響带欢,放射性物質(zhì)發(fā)生泄漏运授。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一乔煞、第九天 我趴在偏房一處隱蔽的房頂上張望吁朦。 院中可真熱鬧,春花似錦渡贾、人聲如沸逗宜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽纺讲。三九已至,卻和暖如春囤屹,著一層夾襖步出監(jiān)牢的瞬間熬甚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工肋坚, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留乡括,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓智厌,卻偏偏與公主長得像诲泌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子铣鹏,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 一敷扫、什么是docker? 1.Docker 是一個開源的應用容器引擎吝沫,讓開發(fā)者可以打包他們的應用以及依賴包到一個可...
    低俗小説閱讀 455評論 0 1
  • Docker簡介Docker是一個由GO語言寫的程序運行的“容器”呻澜; 目前云服務的基石是操作系統(tǒng)級別的隔離递礼,在同一...
    gakiww閱讀 534評論 0 0
  • docker 基礎 什么是Docker Docker 使用 Google 公司推出的 Go 語言 進行開發(fā)實現(xiàn),基...
    JAVA日知錄閱讀 619評論 0 4
  • 夜深了辫愉,身旁的孩子終于睡沉了栅受,均勻的呼吸聲在安靜的夜里格外地清晰,我卻有些睡不著恭朗,思緒拉到了很遠的地方屏镊。 ...
    candy_a1bc閱讀 371評論 1 2
  • 人生最大的錯誤膀值,是用健康換取身外之物棍丐; 人生最大的悲哀,是用生命換取個人的煩惱沧踏; 人生最...
    美若照輝閱讀 186評論 0 0