Docker 201 :使用してNGinxはNodeJSサーバーのための逆プロキシとして2020年に!📦 🙌 (実用ガイド)


私は、「何か/理由をスキップします」それはポイントにまっすぐにする部分!🤝
目標:私たちはNadeJSサーバーの逆プロキシとして使用するつもりです.⧚
そのために、私はDockerハブから2つのDocker画像を使います🤞
行動でこれを見ましょう!
私はすでにインストールされている-
  • NODEJS
  • ドック
  • 簡単なノードサーバを作成します.私たちはhttp ノードからモジュールを作成し、簡単なHTTPサーバを作成します.server.js ファイルは、サーバーのコードを含みます
    var http = require('http');
    
    var server = http.createServer(function (request, response) {
      response.writeHead(200, {"Content-Type": "text/plain"});
      response.end("Node & Docker Running...");
    });
    
    server.listen(3333);
    
    console.log("Node HTTP Server started at http://localhost:3333/");
    
    我々が走るならばnode server.js 端末では、localhostの3333ポートでサーバを起動します.
    我々はブラウザを開くことができますし、ヒットhttp://localhost:3333/ そしてサーバーがテキストノードとDockerを実行しているのを見ることができます.
    ものすごい👏
    さて、ノードサーバ用のDockerイメージを作成します.これを行うには、ファイル名を作成する必要がありますDockerfile 以下のコマンドで-
    FROM mhart/alpine-node
    COPY server.js .
    EXPOSE 3333
    CMD node server.js
    
    ここで私はmhart/alpine-node NODEJJS環境を持っているために.EXPOSE 3333 手段3333 ポートは公開予定です.
    我々が我々を持つ今Dockerfile 準備ができたら、このファイルからDockerイメージを作成します.端末で動くことができます.
    docker build -t docknode .
    
    *では、docknode がイメージ名です.任意の名前を使用できます.
    私は今、私たちのためのコンテナを作るDockerイメージを実行します
    docker run -d -p 3333:3333 --name node-server  docknode
    
    使いました-d これはコンテナをバックグラウンドで実行するのに役立ちます.
    このコマンドを実行した後、私たちのNodeJSサーバはnode-server .
    今、私は任意のブラウザを開き、ヒットhttp://localhost:3333 , サーバーが走っているのを見ることができます🎉
    OK、すごい!ノードDockerイメージの中のNODEJSサーバが走っているので、次にNGinx Reverse Proxyを追加する必要があります.
    私たちはDockerHubから公式NGinxイメージを使用します.
    を作成しましょうDockerfile そのために.
    FROM nginx
    COPY default.conf /etc/nginx/conf.d/
    
    私はファイルを作成するつもりですdefault.conf nginxでは以下の設定を行います.
    server {
      location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://server:3333;
      }
    }
    
    ここでは、構成では、我々は注意してくださいhttp://server:3333 . この3333 我々のNODEJS Dockerコンテナからのポートです.私は来るserver この記事の後半.
    ターミナルに行きましょう.
    docker build -t docknginx .
    
    これはnginx用のDockerイメージを構築します.コマンドを実行した後に、次のように表示されます-

    そして、我々のイメージがローカルマシンで利用可能であることを確認するために、以下のコマンドを実行してリストを見ることができます.
    docker images
    

    Coolio!私たちは両方の画像がここで利用できるのを見ることができます👏
    私たちの目標は、NGinxを我々のNodeJSサーバーの逆プロキシとして持つことです.nginxイメージを実行するとき、nodejsサーバをnginxにリンクする必要があります.
    そのためには、端末で以下のコマンドを実行します-
    docker run -d -p 8080:80 --link node-server:server --name nginx-proxy  docknginx
    
    こちらです.--link 私たちのNodeJSコンテナをこのNGinxコンテナに結びつけるのを手伝っています.あなたが二重チェックするならば、私はNodeJSコンテナとして名前をつけましたnode-server . そして:server nginxの設定の中で使用されます.🤝
    コマンドを実行した後、我々は今我々のブラウザに移動し、ヒットhttp://localhost:8080/ , 我々は我々のnodejsアプリを見ることができる今このポート上で実行されて🎉

    私たちは実際にそれが逆のプロキシとして働いているので、Nginxを通してNodeJSサーバを攻撃しています.
    ものすごい🙌
    閉じるこの動画はお気に入りから削除されています.そして、まだあなたがDockerを使用していないならば、私は、あなたが2020年にそれを試みるべきであると思います!
    次の記事でお会いしましょう.
    その時まで
    乾杯!
    👋
    私はウェブ上でコンテンツを投稿しようとしているので、これらのすべてに費やす私の時間のコーヒーを買うことができます❤️😊🌸