開通 AWS
首先在 https://aws.amazon.com/cn/ 注冊一個賬戶,會提供為期一年的免費服務(wù)。
隨后按照如下的步驟啟動一個 EC2 示例:



可以看出:
- 分配了公有 DNS:
ec2-18-222-176-214.us-east-2.compute.amazonaws.com - 分配了公有IP:
18.222.176.214(需要翻墻) - 關(guān)于密鑰名稱,這個是自己在創(chuàng)建 EC2 實例時設(shè)定的,并且會下載一個
XiangSecret.pem文件到本地
安裝 NodeJS
首先通過 SSH 連接到剛剛開通并啟動的 EC2 實例 ssh -i "XiangSecret.pem" ec2-user@18.222.176.214:

隨后通過如下的命令安裝 Node Version Manager (Node版本管理器):
參考 https://github.com/creationix/nvm#install-script
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
source ~/.nvm/nvm.sh
隨后通過如下的命令安裝 Node:
nvm install node
nvm use node
安裝完成后,可以通過:
-
node -v來查看 Node 的版本 -
npm -v來查看 NPM 的版本
查看 Node 的版本和 NPM 的版本
NodeJS Hello World
官網(wǎng):
Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行環(huán)境。
Node.js 使用了一個事件驅(qū)動、非阻塞式 I/O 的模型,使其輕量又高效。
Node.js 的包管理器 npm,是全球最大的開源庫生態(tài)系統(tǒng)。
首先創(chuàng)建一個目錄 helloworld,并在里面創(chuàng)建文件 index.js 和 package.json:
var http = require('http');
var server = http.createServer(function(request, response) {
response.writeHead(200, { 'Content-Type': 'text/plain'});
response.write("Hello, World");
response.end();
});
server.listen(1234);
{
"name": "helloworld",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node index.js"
},
"dependencies": {
}
}
隨后我們需要配置 AWS 的安全組,來開啟 1234 端口:


我們通過 forever 來啟動和關(guān)閉 node:
npm install -g forever
forever start index.js // 啟動
netstat -ntlp // 查看開啟的端口
forever list // 顯示所有運行的服務(wù)
forever stop index.js // 關(guān)閉
啟動后,通過如下兩種方式來訪問頁面:

適用于 Node.js 中 JavaScript 的 AWS 開發(fā)工具包
參考 https://aws.amazon.com/cn/sdk-for-node-js/
通過適用于 Node.js 中 JavaScript 的 AWS 開發(fā)工具包快速開始使用 AWS。該開發(fā)工具包提供 JavaScript 對象給許多 AWS 服務(wù),如 Amazon S3、Amazon EC2、DynamoDB 和 Amazon SWF 等,以避免進行復(fù)雜的編碼。
首先,如果我們想通過 AWS 的 SDK 來訪問 AWS 的資源,需要在 IAM 上創(chuàng)建用戶并設(shè)置訪問密鑰。
參考 https://docs.aws.amazon.com/zh_cn/sdk-for-javascript/v2/developer-guide/getting-your-credentials.html


隨后創(chuàng)建文件 ~/.aws/credentials,并將 ACCESS_KEY_ID 和 SECRET_ACCESS_KEY 填入:
[default]
aws_access_key_id = YOUR_ACCESS_KEY_ID
aws_secret_access_key = YOUR_SECRET_ACCESS_KEY
安裝 AWS-SDK:
npm install aws-sdk
一個實例:https://aws.amazon.com/cn/developers/getting-started/nodejs/
// Load the SDK and UUID
var AWS = require('aws-sdk');
var uuid = require('node-uuid');
// Create an S3 client
var s3 = new AWS.S3();
// Create a bucket and upload something into it
var bucketName = 'node-sdk-sample-' + uuid.v4();
var keyName = 'hello_world.txt';
s3.createBucket({Bucket: bucketName}, function() {
var params = {Bucket: bucketName, Key: keyName, Body: 'Hello World!'};
s3.putObject(params, function(err, data) {
if (err)
console.log(err)
else
console.log("Successfully uploaded data to " + bucketName + "/" + keyName);
});
});
執(zhí)行完成后,打開 S3 控制臺 https://s3.console.aws.amazon.com/s3/home?region=us-east-1,可以看到創(chuàng)建的桶 Bucket:

