docker中使用nginx容器代理其他容器

Nginx is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by Igor Sysoev

概述

相信nginx大家也不陌生遥倦,大部分情況下都是在服務(wù)器中直接安裝Nginx代理,但是如今Docker當(dāng)?shù)勒季猓绾谓Y(jié)合Docker的容器化優(yōu)勢和Nginx的反向代理和域名設(shè)別袒哥?

下面利用一個(gè)Demo,搭建一組服務(wù)

  • Nginx
  • Ghost

利用Nginx容器內(nèi)聯(lián)到Ghost消略,轉(zhuǎn)發(fā)堡称,有以下優(yōu)點(diǎn):

  1. 服務(wù)器只需要開一個(gè)端口給Nginx容器作為入口
  2. 添加其他應(yīng)用的時(shí)候,只需要在Nginx中配置轉(zhuǎn)發(fā)規(guī)則就可以
  3. 所有應(yīng)用自帶開機(jī)重啟
  4. 部署內(nèi)容轉(zhuǎn)變?yōu)槲募蝿菀昭荩奢p松傳遞却紧、維護(hù)

放出Github地址: docker-nginx-demo

準(zhǔn)備

需要準(zhǔn)備Docker環(huán)境:

分析

demo的文件結(jié)構(gòu):

- docker-compose.yml  //docker-compose所需的文件,用于描述所有應(yīng)用的配置信息
- nginx
   - Dockerfile
   - sites-enabled
      - default   //nginx容器的配置文件胎撤,用于配置如何連接并解析其他的容器

docker-compose.yml:

version: "2"
services:
  ghost:
    image : ghost
    restart: always
    container_name: ghost

  nginx-host:
    build: ./nginx
    restart: always
    ports:
      - "80:80"
    links:
      - ghost
    container_name: nginx-host

注意: links節(jié)點(diǎn)是內(nèi)聯(lián)其他的容器晓殊,該處定義了兩個(gè)容器,一個(gè)是Ghost伤提,一個(gè)是Nginx巫俺,Nginx容器是基于./nginx文件夾進(jìn)行build的,端口只需要開通80指向nginx容器即可飘弧,其他的全部有nginx負(fù)責(zé)轉(zhuǎn)發(fā)

Dockerfile:

FROM tutum/nginx
ADD sites-enabled/ /etc/nginx/sites-enabled

sites-enabled/default:

server {
    #listen 443;
    listen 80;
   server_name blog.kelvv.com
    #ssl on;
    access_log /var/log/nginx/api-dev.log;
    error_log /var/log/nginx/api-dev.error.log;
    location / {
        proxy_pass      http://ghost:2368;
        proxy_set_header    Host $host;
        proxy_set_header    X-Real-IP $remote_addr;
        proxy_set_header    X-Forwarded-Proto https;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_connect_timeout   150;
        proxy_send_timeout  100;
        proxy_read_timeout  100;
        proxy_buffers       4 32k;
        client_max_body_size    8m;
        client_body_buffer_size 128;    
    }
}

注意:該處的ghost就是剛才docker-compose文件內(nèi)的links中的關(guān)聯(lián) , server_name為域名

運(yùn)行

$ cd docker-nginx-demo
$ docker-compose up -d

這個(gè)時(shí)候在瀏覽器中輸入 域名就可以自動連接到Ghost 识藤,服務(wù)器無污染

總結(jié)

最好是使用一個(gè)端口,然后所有應(yīng)用都是通過80端口連接服務(wù)器次伶,通過域名區(qū)分不同應(yīng)用痴昧。
還有一種方式就是使用多個(gè)端口,不同端口不同應(yīng)用冠王,這就需要在docker-compose.yml中開放多個(gè)端口赶撰,并且在nginx配置文件中配置多份server用于相應(yīng)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末柱彻,一起剝皮案震驚了整個(gè)濱河市豪娜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌哟楷,老刑警劉巖瘤载,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異卖擅,居然都是意外死亡鸣奔,警方通過查閱死者的電腦和手機(jī)墨技,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來挎狸,“玉大人扣汪,你說我怎么就攤上這事∠谴遥” “怎么了崭别?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長恐锣。 經(jīng)常有香客問我茅主,道長,這世上最難降的妖魔是什么侥蒙? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任暗膜,我火速辦了婚禮匀奏,結(jié)果婚禮上鞭衩,老公的妹妹穿的比我還像新娘。我一直安慰自己娃善,他們只是感情好论衍,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著聚磺,像睡著了一般坯台。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瘫寝,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天蜒蕾,我揣著相機(jī)與錄音,去河邊找鬼焕阿。 笑死咪啡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的暮屡。 我是一名探鬼主播撤摸,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼褒纲!你這毒婦竟也來了准夷?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤莺掠,失蹤者是張志新(化名)和其女友劉穎衫嵌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體彻秆,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡楔绞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年论悴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片墓律。...
    茶點(diǎn)故事閱讀 38,599評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡膀估,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出耻讽,到底是詐尸還是另有隱情察纯,我是刑警寧澤,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布针肥,位于F島的核電站饼记,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏慰枕。R本人自食惡果不足惜具则,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望具帮。 院中可真熱鬧博肋,春花似錦、人聲如沸蜂厅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽掘猿。三九已至病游,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間稠通,已是汗流浹背衬衬。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留改橘,地道東北人滋尉。 一個(gè)月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像唧龄,于是被迫代替她去往敵國和親兼砖。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評論 2 348

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