開通 AWS
首先在 https://aws.amazon.com/cn/ 注冊(cè)一個(gè)賬戶划咐,會(huì)提供為期一年的免費(fèi)服務(wù)箱熬。
隨后按照如下的步驟啟動(dòng)一個(gè) EC2 示例:
可以看出:
- 分配了公有 DNS:
ec2-18-222-176-214.us-east-2.compute.amazonaws.com
- 分配了公有IP:
18.222.176.214
(需要翻墻) - 關(guān)于密鑰名稱窄俏,這個(gè)是自己在創(chuàng)建 EC2 實(shí)例時(shí)設(shè)定的蹂匹,并且會(huì)下載一個(gè)
XiangSecret.pem
文件到本地
安裝 NodeJS
首先通過 SSH 連接到剛剛開通并啟動(dòng)的 EC2 實(shí)例 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 是一個(gè)基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境限寞。
Node.js 使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式 I/O 的模型仰坦,使其輕量又高效履植。
Node.js 的包管理器 npm,是全球最大的開源庫生態(tài)系統(tǒng)悄晃。
首先創(chuàng)建一個(gè)目錄 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
來啟動(dòng)和關(guān)閉 node:
npm install -g forever
forever start index.js // 啟動(dòng)
netstat -ntlp // 查看開啟的端口
forever list // 顯示所有運(yùn)行的服務(wù)
forever stop index.js // 關(guān)閉
啟動(dòng)后妈橄,通過如下兩種方式來訪問頁面:
適用于 Node.js 中 JavaScript 的 AWS 開發(fā)工具包
參考 https://aws.amazon.com/cn/sdk-for-node-js/
通過適用于 Node.js 中 JavaScript 的 AWS 開發(fā)工具包快速開始使用 AWS庶近。該開發(fā)工具包提供 JavaScript 對(duì)象給許多 AWS 服務(wù),如 Amazon S3眷蚓、Amazon EC2鼻种、DynamoDB 和 Amazon SWF 等,以避免進(jìn)行復(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
一個(gè)實(shí)例: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 控制臺(tái) https://s3.console.aws.amazon.com/s3/home?region=us-east-1,可以看到創(chuàng)建的桶 Bucket: