亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

[afterCode] docker 速成班 6: docker-compose

Integ / 730人閱讀

摘要:通過的我們可以將多個(gè)有機(jī)的組合起來(lái)構(gòu)建出自己需要的服務(wù)但是這里有幾個(gè)小問題就是不利于分享步驟麻煩需要自己創(chuàng)建指定使用那如何解決上面的兩個(gè)問題呢第節(jié)例子中的服務(wù)可以通過創(chuàng)建一個(gè)這樣的文件來(lái)解決通過下面的命令就能將所有需要的啟動(dòng)起來(lái)

通過docker 的 network我們可以將多個(gè) container 有機(jī)的組合起來(lái)構(gòu)建出自己需要的服務(wù). 但是這里有幾個(gè)小問題就是

不利于分享.

步驟麻煩.(需要自己創(chuàng)建 network;指定container 使用 network;... )

那如何解決上面的兩個(gè)問題呢?

docker-compose.yml

第5節(jié)例子中的服務(wù)可以通過創(chuàng)建一個(gè)這樣的docker-compose.yml文件來(lái)解決.

version: "3"
services:
  nginx:
    image: nginx
    ports:
      - 8080:8080
    volumes:
      - ./conf.d:/etc/nginx/conf.d
    depends_on:
      - nodeapp
  nodeapp:
    build: "./"
    container_name: hello
    environment:
      - NODE_ENV=production

通過下面的命令就能將所有需要的 container 啟動(dòng)起來(lái).

docker-compose up

docker-compose.yml 文件可以理解為為了讓項(xiàng)目工作起來(lái)組織 docker container 的 yaml 格式的配置文件. 一個(gè) docker-compose.yml 文件就一個(gè)項(xiàng)目. 配置文件里面可以定義 services, volumesnetworks 三個(gè)主要部分. 我個(gè)人的喜好是直接使用映射的方式來(lái)配置 container 的持久化的磁盤空間,所以比較少的用
volumes 部分;而一個(gè) docker-compose.yml 啟動(dòng)起來(lái)之后,docker 會(huì)為這個(gè)項(xiàng)目創(chuàng)建一個(gè)默認(rèn)的 networks, 默認(rèn)情況下這些容器都是連接在這個(gè) network 中. 而且還支持用 container_name 的 dns 解析; 所以最重要的還是 services 的定義, 而 services 的定義就是根據(jù)項(xiàng)目需要列舉的 container 的定義.

對(duì)于 container 的定義大致有兩類, 直接可以使用的 docker hub 上 image 的. 如這個(gè)例子中的 nginx 容器;簡(jiǎn)單的通過 image 字段就能指定需要的 image; 再通過 ports,volumes, environment 字段來(lái)指定 container 的端口映射,磁盤映射和環(huán)境變量配置等等. 能通過 docker run 選項(xiàng)做到的事情 docker-compose.yml 中都能做到. 特別提一點(diǎn)的就是在磁盤映射的時(shí)候, 宿主機(jī)的路徑可以是用相對(duì)與docker-compose.yml的相對(duì)路徑. 例子中 nginx 的定義下面的命令行一樣的意義; 其中這個(gè) project_defaultdocker-compose.yml 啟動(dòng)時(shí)創(chuàng)建的默認(rèn) network.

$docker run --network project_default  
            -v $PWD/conf.d:/etc/nginx/conf.d -p 8080:8080 nginx

第二種定義的方式就基于 Dockerfile. 那容器是如何工作的就完全有 Dockerfile 來(lái)決定了. build字段是用來(lái)指定 Dockerfile所在的路徑. 例子中定義的 nodeapp 服務(wù), 還是用了 environment 來(lái)指定程序運(yùn)行的環(huán)境變量;用 container_name 指定了容器的名字, 如果不做指定的話, container 的名字使用 項(xiàng)目名_服務(wù)名 的格式來(lái)命名. 而且我們?cè)?nginx 服務(wù)反向代理的時(shí)候需要用 container 的名字來(lái)訪問 node 中的 web 服務(wù), 所以這里就定義了container 的名字.

通過 Dockerfiledocker-compose.yml 就能非常的方便的分享你項(xiàng)目運(yùn)行和開發(fā)環(huán)境的配置了.

希望大家喜歡.

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/27079.html

相關(guān)文章

  • [afterCode] docker 成班 7: 實(shí)戰(zhàn) 構(gòu)建基于graphtie/grafana監(jiān)

    摘要:由于公司沒有運(yùn)維又需要監(jiān)控服務(wù)器的一些數(shù)據(jù)信息想盡快的啟動(dòng)一個(gè)數(shù)值監(jiān)控系統(tǒng)技術(shù)評(píng)估了下打算的方式來(lái)建設(shè)是一個(gè)時(shí)間數(shù)列數(shù)據(jù)庫(kù)并且自帶一些簡(jiǎn)單圖形展示功能雖然展示方面不是很完美但是在收集時(shí)間數(shù)據(jù)上非常的方便和簡(jiǎn)單根據(jù)官網(wǎng)的例子只需要一個(gè)連接就能 由于公司沒有運(yùn)維, 又需要監(jiān)控服務(wù)器的一些數(shù)據(jù)信息, 想盡快的啟動(dòng)一個(gè)數(shù)值監(jiān)控系統(tǒng). 技術(shù)評(píng)估了下打算 graphite + grafana 的...

    jhhfft 評(píng)論0 收藏0
  • [afterCode] docker 成班 1: image

    摘要:在程序員英語(yǔ)娛樂主題節(jié)目的直播中介紹了下在網(wǎng)站學(xué)習(xí)的視頻由于時(shí)間倉(cāng)促只學(xué)習(xí)了一部分最近因?yàn)榈墓镜脑蛞矝]有時(shí)間繼續(xù)搞直播所以想寫一篇分享下自己的的學(xué)習(xí)經(jīng)驗(yàn)想學(xué)習(xí)簡(jiǎn)短有效的風(fēng)格所以就將文章題目定為速成班準(zhǔn)備本地已經(jīng)安裝好了現(xiàn)在各個(gè)操作系統(tǒng)上 在程序員英語(yǔ)娛樂主題節(jié)目http://www.douyu.com/aftercode的直播中介紹了下在 egghead 網(wǎng)站學(xué)習(xí) docker 的...

    waltr 評(píng)論0 收藏0
  • [afterCode] docker 成班 番外篇: 隨機(jī)容器名

    摘要:上一篇提到使用啟動(dòng)一個(gè)容器如果沒有使用來(lái)指定容器名字的話會(huì)自動(dòng)按照形容詞名人名的形式生成一個(gè)那這些名人是誰(shuí)呢源代碼說明一切自用一些著名的科學(xué)家和黑客名字來(lái)命名容器如果有你認(rèn)為有還沒有在這些列表中的話給項(xiàng)目提交哈哈想給牛逼項(xiàng)目提交嗎又多 上一篇 blog 提到使用 docker 啟動(dòng)一個(gè)容器如果沒有使用--name來(lái)指定容器名字的話,docker 會(huì)自動(dòng)按照 形容詞_名人名的形式生成一個(gè)...

    gxyz 評(píng)論0 收藏0
  • [afterCode] docker 成班 3: 使用 container 中的功能

    摘要:通過將執(zhí)行起來(lái)了不是為了看看容器的狀態(tài)而是想使用中的功能介紹兩種方式來(lái)使用容器中的功能通過端口訪問中的服務(wù)通過端口的方式來(lái)使用提供的服務(wù)是最簡(jiǎn)單的了只要通過或者選項(xiàng)來(lái)向宿主機(jī)暴露服務(wù)端口就可以了比如我們可以這樣在后臺(tái)啟動(dòng)一個(gè)服務(wù)并將中 通過docker 將 container 執(zhí)行起來(lái)了,不是為了看看容器的狀態(tài),而是想使用 container 中的功能.介紹兩種方式來(lái)使用容器中的功能....

    Rainie 評(píng)論0 收藏0
  • [afterCode] docker 成班 2: container

    摘要:本來(lái)想在一篇里面就寫完所有的內(nèi)容的但是考慮考慮到文章太長(zhǎng)會(huì)和風(fēng)格相背離所以就按連載的形式來(lái)容器是物質(zhì)基礎(chǔ)有了這個(gè)才能讓能運(yùn)行起來(lái)運(yùn)行起來(lái)的稱之為容器它使用中的一等公民直接啟動(dòng)使用啟動(dòng)一個(gè)容器如果你沒有下載過的話會(huì)自動(dòng)下載一個(gè)的指定方法和刪除 本來(lái)想在一篇 blog 里面就寫完所有的內(nèi)容的,但是考慮考慮到文章太長(zhǎng)會(huì)和 egghead 風(fēng)格相背離,所以就按連載的形式來(lái). 容器 contai...

    stormjun 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<