更新日:
IBM Cloud FoundryにCLIでデプロイする。言語はNode.js。ライトアカウント(無料でクレカ登録なし)でメモリ256MB使える。メルアドだけで登録できるぞ。
IBM Cloud Foundryとは
IBM CloudのPaaS(Platform as a Service)。
IBM Cloudのアカウントを作る
https://www.ibm.com/jp-ja/cloud
メルアドが必要。
プロジェクトをつくる
省略
CLIツールをインストール
基本CLIツールを使ってデプロイする。
ここに各OS用のインストーラがある。
https://github.com/IBM-Cloud/ibm-cloud-cli-release/releases/
初期設定をする
省略
ソースコード
manifest.yml
---
applications:
- name: プロジェクト名
random-route: true
memory: 256M
package.json
{
"name": "プロジェクト名",
"main": "server.js",
"scripts": {
"start": "node server",
"deploy": "ibmcloud cf push",
"rg": "ibmcloud cf rg プロジェクト名"
},
"engines": {
"node": "12.*"
},
"dependencies": {
"axios": "^0.21.1",
"express": "^4.17.1"
}
}
server.js
const express = require('express');
const axios = require('axios');
const app = express();
// postリクエスト使えるようにする
app.use(express.json({ extended: true, limit: '10mb' }));
app.use(express.urlencoded({ extended: true, limit: '10mb' }));
app.get('/get', async (req, res) => {
try {
const ret = await axios.get('http://httpbin.org/ip');
// 今回はサーバのグローバルIPを返す
res.send({ origin: ret.data.origin });
} catch (error) {
res.sendStatus(500);
}
});
app.listen(process.env.PORT || 8080);
console.log('start');
デプロイ
bash
$ npm run deploy