国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Doceker部署Node.js

ShevaKuilin / 2620人閱讀

摘要:前言項目中會用到做中間層,部署則是用到了,在這里總結(jié)記錄下部署要點(diǎn)和步驟關(guān)于的介紹和安裝這里就不贅述了,網(wǎng)上也有很多相關(guān)的教程和文章了,需要可自行搜索查看。

前言

????項目中會用到node做中間層,部署node則是用到了docker,在這里總結(jié)、記錄下部署要點(diǎn)和步驟;關(guān)于docker的介紹和安裝這里就不贅述了,網(wǎng)上也有很多相關(guān)的教程和文章了,需要可自行搜索查看。

項目結(jié)構(gòu)
`-- docker-node
    |-- data
    |-- server
        |-- app.js
        |-- Dockerfile
        |-- process.yml
        |-- package.json
    |-- docker-compose.yml
1、創(chuàng)建Node.js程序

app.js

const express = require("express");
const app = express();

app.get("/", (req, res) => res.send("hello world!"));

app.listen(3008);
2、創(chuàng)建Dockerfile
FROM node:8.9-alpine

RUN mkdir -p /usr/src/app

WORKDIR /usr/src/app

RUN npm set registry https://registry.npm.taobao.org/

RUN npm install 

CMD ["./node_modules/pm2/bin/pm2-docker", "process.yml"]

從Dockerfile中可以看到我們是通過pm2-docker運(yùn)行node應(yīng)用的,利用PM2我們可以監(jiān)聽文件變化,達(dá)到應(yīng)用重啟、日志分存等效果;這里我們需要一個process.yml的配置文件,相關(guān)用法可以查看PM2文檔。

process.yml

apps:
  - script   : "app.js"
    name     : "dokcer-node"
    exec_mode: "fork"
    watch    : true
    instances: 1
    log_date_format : "YYYY-MM-DD HH:mm Z"
    ignore_watch: ["node_modules"]
3、創(chuàng)建docker-compose.yml

生產(chǎn)環(huán)境上我們用到往往不只一個容器,我們可以通過一個配置文件來管理多個Docker容器,然后使用docker-compose來啟動,停止、重啟應(yīng)用。

docker-compose.yml

version: "3.0"
services:
  server_node:
    container_name: server-node
    build: 
      context: ./server
    volumes:
      - ./server:/usr/src/app
    ports:
      - "3008:3008"
    environment:
      - TZ=Asia/Shanghai

  portainer:
    image: portainer/portainer:1.11.4
    container_name: portainer
    expose:
      - "9000"
    ports:
      - "9000:9000"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./data/portainer:/data
    environment:
      - TZ=Asia/Shanghai
4、啟動容器

上述幾個文件創(chuàng)建完畢,我們執(zhí)行下面的命令,則會創(chuàng)建我們的鏡像并且啟動容器

$ docker-compose -f docker-compose.yml up -d
5、測試

1、訪問本地的3008端口

2、測試當(dāng)代碼變化,node自動重啟功能,我們把"hello world!"改為"restart!!!!",再次刷新頁面

3、利用Portainer管理容器;可視化的界面相比命令行來說,我們可以很方便、快速查看容器日志、容器配置、狀態(tài)、以及對進(jìn)行重啟、刪除等操作;我們訪問本地9000端口即可(docker-compese.yml中配置),結(jié)果如下。

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

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/99359.html

相關(guān)文章

  • centos7下Docker安裝

    摘要:由于之前沒安裝過這步跳過。安裝使用推薦方法設(shè)置的存儲庫并從中進(jìn)行安裝。設(shè)置存儲庫安裝所需的包。這些存儲庫包含在上面的文件中,但默認(rèn)情況下處于禁用狀態(tài)。執(zhí)行以上命令。 由于很多項目都需要在特定的環(huán)境下才能穩(wěn)定運(yùn)行,在網(wǎng)上搜索一番后,覺得Doceker是一個很不錯的容器化平臺,決定學(xué)習(xí)踩坑,先把Docker安裝上吧.Docker有兩個版本,社區(qū)版(CE),企業(yè)版(EE),這里的是社區(qū)版。服...

    starsfun 評論0 收藏0
  • 基于阿里云Serverless架構(gòu)下函數(shù)計算的最新應(yīng)用場景詳解(一)

    摘要:如果使用阿里云函數(shù)計算,您將高峰期每小時的訪問日志,或者低谷期每小時的訪問日志交給一個計算函數(shù)處理,并將處理結(jié)果存到中。下面結(jié)合阿里云的函數(shù)計算產(chǎn)品來講解各個應(yīng)用場景中架構(gòu)以及如何解決的場景中的痛點(diǎn)。 摘要: Serverless概念是近年來特別火的一個技術(shù)概念,基于這種架構(gòu)能構(gòu)建出很多應(yīng)用場景,適合各行各業(yè),只要對輕計算、高彈性、無狀態(tài)等場景有訴求的用戶都可以通過本文來普及一些基礎(chǔ)概...

    Eidesen 評論0 收藏0
  • 回顧Java 發(fā)展,看 Docker 與Mesos | 數(shù)人云COO謝樂冰@KVM分享實(shí)錄

    摘要:馬拉松會匹配每個和提供的資源,然后通過將任務(wù)下發(fā)下去。對外暴露的就是負(fù)載均衡的某個服務(wù),后面自動將流量轉(zhuǎn)發(fā)到某個容器的端口上。還有一直辦法是用內(nèi)網(wǎng)的,這個會維護(hù)現(xiàn)有的容器列表端口,并且返回任意一個的端口,頁實(shí)現(xiàn)了負(fù)載均衡和服務(wù)發(fā)現(xiàn)功能。 演講嘉賓 數(shù)人云COO 謝樂冰 在德國工作十年,回國后加入惠普電信運(yùn)營商部門,擁有多年項目經(jīng)驗(yàn)和創(chuàng)業(yè)公司工作經(jīng)驗(yàn)。在數(shù)人云負(fù)責(zé)產(chǎn)品售前和運(yùn)營,專注行...

    canger 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<