Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9409

SAP BTPのCloud Foundry EnvironmentにNode.jsアプリをデプロイする

$
0
0
この記事はNode.js Advent Calendar 2021の12日分の記事です。 今回はNode.js+expressのアプリを作ってSAP BTPのCloud Foundry環境にデプロイする方法について説明します 環境 OS:Windows10 Node.js:16.13.1 CF-CLI:V8 Node.jsとは サーバーサイドで動くJavaScriptの実行環境です。 SAP BTPのCloud Foundry環境について SAP BTPは、インテリジェントエンタープライズアプリケーションとデータベース、およびデータ管理機能、アナリティクス、統合機能、拡張機能が一つに統合された、クラウド環境とハイブリッド環境の両方に対応したプラットフォームです。 数百もの SAP アプリケーションとサードパーティアプリケーションの事前構築済み統合も含まれています。 SAP BTPのランタイム環境はCloud Foundry、Kyma、ABAPの3つがあります。 今回はCloud Foundryを使用します。 今回の流れ ・Node.jsアプリの作成 ・SAP BTP環境の設定 ・デプロイ Node.jsアプリの作成 準備 https://nodejs.org/en/ 上記からNode.jsをインストール アプリ作成 以下のコマンドを実行します $ mkdir nodeApp $ cd nodeApp/ $ npm init $ npm install express --save 新規ファイルapp.jsを作成 ポートは固定にしてしまうとBTP上で動かした場合、エラーになるので注意が必要です app.js var express = require("express"); var app = express(); // listen()メソッドを実行して3000番ポートで待ち受け var port = process.env.PORT || 3000 var server = app.listen(port, function () { console.log("Node.js is listening to PORT:" + server.address().port); }); // Hello Worldを表示 app.get("/", function (req, res, next) { res.send("Hello World"); }); package.jsonを編集します "start": "node app.js" をscriptsに追加しています package.json { "name": "nodeapp", "version": "1.0.0", "engines": { "node": "14.x.x" }, "description": "", "main": "app.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "node app.js" }, "author": "", "license": "ISC", "dependencies": { "express": "^4.17.1" } } ローカルでの実行確認 ローカルでアプリを実行 $ node app.js URLにアクセスしてプラウザでHello Worldが表示されることを確認 SAP BTP環境の設定 トライヤル環境に登録 SAP BTP環境の準備 Subaccount: trial - EntitlementsからCloud Foundry Runtimeを有効化 Create Spaceからスペースを作成 今回はdevって名前で作成 デプロイ時に使うのでAPI Endpointをメモしておく https://api.cf.us10.hana.ondemand.com デプロイ Cloud Foundry CLIのインストール https://github.com/cloudfoundry/cli#downloads ここらからCloud Foundry CLIをインストール 真ん中あたりにインストーラーがあります。 デプロイ 以下のコマンドでログイン後、BTPのメールアドレスとパスワード入力 cf login -a <URL> アプリをプッシュ cf push nodeApp --random-route アプリ(nodeApp)がBTP上に作成されていることを確認 アプリのメモリ等を設定したい場合は以下のファイルを作成 manifest.yml --- applications: - name: nodeApp memory: 128m instances: 1 buildpack: https://github.com/cloudfoundry/nodejs-buildpack.git manifest.ymlを参照するようになるのでcf pushのみでOKになる ※参考

Viewing all articles
Browse latest Browse all 9409

Trending Articles