MACのコンピュータ環境のすべてのステップ
まず、環境を構成
図1に示すように、リモート・サーバに接続されています。
1、アリクラウドECSサーバーを購入し、私はubantu 14.0.4を使用します(64ビット)、購入パスワードの時刻が記録され設定されていない場合は、ECSでコンソールを変更することができる
クラウドプラットフォームに2、アリブラウザ- > ECSコンソール- >インスタンスのリストの
インスタンスを情報3、表示:(オス)、独自のIPを記録47.xxx.xxx.xxx
4、管理をクリックして、あなたはどのようなインスタンス名を変更することができ、デフォルトでは文字化けの貧しい人々の認識の文字列です。あなたは自分の心の中に取ることができます。
5、ローカルでターミナルを開き:$のssh [email protected] ECSサーバのパブリックIPリモートアクセスを入力して、リモートサーバubantuのパスワードを入力してください
以下の情報は、[はい]を選択して、リモートサーバーのパスワードパスワードの入力を求められる場合があります。Ubuntuのへようこそを参照してください。。。証明接続に成功
wjw$ ssh [email protected]
The authenticity of host '47.xxx.xxx.xxx (47.xxx.xxx.xxx)' can't be established.
ECDSA key fingerprint is SHA256:Nq44XG9TtdnZ7yNE6P0k0S2FOGmiz/sdSkmu2j7ze2k.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '47.xxx.xxx.xxx' (ECDSA) to the list of known hosts.
[email protected]'s password:
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 4.4.0-93-generic x86_64)
* Documentation: https://help.ubuntu.com/
Welcome to Alibaba Cloud Elastic Compute Service !
Last login: Sun Jun 2 15:22:59 2019
サーバーのアップグレードキットをインストールするには2、
$ sudoのapt-getの更新コマンドを使用して、1、
# sudo apt-get update
。。。
Reading package lists... Done
2、必要なパケットの設置工事
$ sudo apt-get install git vim openssl build-essential libssh-dev wget curl
中東は、[はい]を選択し、入力のように、パッケージをインストールするためのディスク領域が占有どのくらいのを思い出させます
私たちは、ノードのバージョンを管理するための3、インストールNVM(ノードバージョンマネージャ)、
githubの検索NVMで
https://github.com/nvm-sh/nvm
、インストールはページに合わせてコマンドを直接のように、我々は、カールがインストールされている第二のステップインストールコマンドを見つける
//raw.githubusercontent:カール-O- HTTPSを。 COM / NVM-SH / NVM / v0.34.0 / install.sh | bashの
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 13226 100 13226 0 0 7074 0 0:00:01 0:00:01 --:--:-- 7076
=> Downloading nvm from git to '/root/.nvm'
=> Cloning into '/root/.nvm'...
remote: Enumerating objects: 278, done.
remote: Counting objects: 100% (278/278), done.
remote: Compressing objects: 100% (249/249), done.
remote: Total 278 (delta 33), reused 88 (delta 16), pack-reused 0
Receiving objects: 100% (278/278), 142.36 KiB | 0 bytes/s, done.
Resolving deltas: 100% (33/33), done.
Checking connectivity... done.
=> Compressing and cleaning up git repository
=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
サーバーをインストールした後を有効にする私たちのNVMコマンドを作る、それを再接続する必要があります。
ケースnodeJS#のNVMのlsコマンドのバージョンを確認します
$ [email protected]
...
root@Jarvis:~# nvm ls
N/A
iojs -> N/A (default)
node -> stable (-> N/A) (default)
unstable -> N/A (default)
3、インストールnodeJS
$ nvm install node
#或者
$ nvm use v12.3.1
# 也可以用 以下命令 来指定默认版本
$ nvm alias default v112.3.1
# 最后 查看版本情况
$ nvm ls
root@Jarvis:~# nvm ls
-> v12.3.1
default -> node (-> v12.3.1)
node -> stable (-> v12.3.1) (default)
stable -> 12.3 (-> v12.3.1) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0 (-> N/A)
lts/dubnium -> v10.16.0 (-> N/A)
root@Jarvis:~#
4、サービス・ノードを作成します
1、文書のコピーは、ポート番号3010修正、サンプルコードの公式サイトをnodeJS
2.サーバーののルートディレクトリにserver.jsファイルを作成します
$ VIM server.js
ペーストのサンプルコードを:
const http = require('http');
const hostname = '127.0.0.1';
const port = 3010;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello, World!\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
3、保存を実行
$はノードserver.js
//ファイアウォール設定ubantu
$ sudoのviの/etc/iptables.up.rules
vimの入力を
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3010 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -s 127.0.0.1 -p tcp --soruce-port 3010 -m state --state ESTABL
ISHED -j ACCEPT
~
すべてのiptablesのは、以前にサーバーを設定されていないので、オープン/etc/iptables.up.rulesファイルが空であるので、あなたは、コマンドラインで次のコマンドを実行することができます
iptablesのを無効にします
$sudo iptalbes -F
$sudo iptables -X
$sudo iptables -Z
$sudo iptables -P INPUT ACCEPT
v$sudo iptables -P OUTPUT ACCEPT
$sudo iptables -P FORWARD ACCEPT
$sudo modprobe -r ip_tables
そして、有効
# 本地进程 lo 的 INPUT 和 OUTPUT 链接,eth0 的 INPUT 链
$sudo iptables -A INPUT -i lo -j ACCEPT
$sudo iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -jACCEPT
$sudo iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j LOG
$sudo iptables -A OUTPUT -o lo -j ACCEPT
#开放SSH端口22
iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT
#开放Web端口80
iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
#开放FTP端口21、20
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#删除FTP端口21、20
iptables -D INPUT -p tcp --dport 20 -j ACCEPT
iptables -D INPUT -p tcp --dport 21 -j ACCEPT
#允许loopback(不然会导致DNS无法正常关闭等问题)
IPTABLES -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP)
IPTABLES -A OUTPUT -o lo -p all -j ACCEPT (如果是OUTPUT DROP)
#保存iptables规则
iptables-save > /etc/iptables.up.rules
$sudo modprobe ip_tables
#修改 /etc/network/interfaces ,添加下面末尾2行脚本
auto eth0
iface eth0 inet dhcp
pre-up iptables-restore < /etc/network/iptables.up.rules
post-down iptables-save > /etc/network/iptables.up.rules
iptables.up.rulesファイルでは、あなたがCOMMITの一番上の行に必要なルールを追加することができます
# Generated by iptables-save v1.4.21 on Sun Jun 2 17:45:31 2019
*filter
:INPUT ACCEPT [1:40]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [465:67402]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -m state --state INVALID,NEW -j LOG
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
COMMIT
# Completed on Sun Jun 2 17:45:31 2019
その後、保存し
WQ:
リロードiptablesの
$ sudoをiptablesの-復元</etc/iptables.up.rules
不要なサービスをオフにします
sudo ufw stop
sudo service nginx stop
オープンserver.jsは、nodeコマンドを使用してサービスを実行します
root@Jarvis:~# node server.js
Server running at http://127.0.0.1:3010/
別の端末上のリモートサービスを再起動
し、コマンドラインを入力します。
http://127.0.0.1:3010カールディスカバリサービスが正常に開始されました
root@Jarvis:~# curl http://127.0.0.1:3010
Hello, World!
root@Jarvis:~#
//ノードのデフォルトのバージョンと使用バージョンとして指定された
$ NVM利用v10.16.0 && NVMエイリアスデフォルト v10.16.0