参考 新手上云指南 >> 完成 注册账号 和 个人实名认证。
点击 前往云服务器ECS >>,点击 立即购买
。
接下来主要给大家简单介绍购买环节中该如何选择,未提到的表示保持推荐默认即可,仅供参考:
① 基础配置
-
付费模式:「包年包月」;
-
包年包月:7x24 小时流量稳定时选择(推荐);
-
按量付费:用多少是多少,一般用于流量在某个期间突增的情况,比如上线一个抢红包活动什么的;
-
-
地域:「西南1(成都)」
-
网络及可用区:「默认专有网络」、「随机分配可用区」
② 实例和镜像
-
实例:「2vCPU / 4GiB」
- 一般个人用 2核4G 应该够了,根据需要来,然后在结果列表中选一个价格合适的即可。
- 如果你选择的是 突然性能实例 规格族,则无需打开突发性能实例(单独收费)
-
镜像:「CentOS - 7.9 64位 」
- CentOS社区已宣布CentOS 8在2021年12月31日停止服务,一般选择
^7.9
- 安全加固默认即可
- CentOS社区已宣布CentOS 8在2021年12月31日停止服务,一般选择
③ 存储
-
系统盘:「ESSD云盘 - 40Gib」
- 根据需求来,如果你只是测试,或者学习用,直接拉到
20Gib
- 根据需求来,如果你只是测试,或者学习用,直接拉到
-
数据盘:根据需要(额外收费)
-
快照服务:根据需要(单独收费)
④ 带宽和安全组
- 公网IP:勾选 分配公网 IPv4 地址
- 带宽计费模式:「按使用流量」
- 带宽峰值:「5Mbps」(根据需要)
- 安全组:「新建安全组」
- 开通IPv4端口:勾选 「HTTP(80) HTTPS(443) SSH(22)」 即可
⑤ 管理设置
- 登录凭据:「自定义密码」
- 登录名:默认 root
- 登录密码/确认密码(记得保存好)
⑥ 高级选项(选填)
- 实例名称:默认即可
- 描述:选填
- 主机名:在终端显示的名称,终端显示效果如:
[root@Li-HONGYAO ~]#
- ...
⑦ 确认订单
-
选择购买时长(是否自动续费根据个人情况来定);
-
勾选服务协议,确认下单即可;
-
如果你选择3个月,获取域名备案码,不然得花100元1个,其实就是捆绑销售;
-
仔细检查一下所选配置 / 在这里你也可以修改之前配置;
-
前往 万网 >> 查询 → 购买域名;
-
前往 ICP 备案 >>,点击右下角 我要备案 然后根据提示进行即可;
- 管局审核时间约为10天
- 建议域名购买3天后再去备案(工信部同步数据)
- 提示:备案需购买至少3个月的ECS服务器才让你备(万恶的捆绑销售呀)
-
前往 云解析 DNS >>,进入控制台 → 域名解析 → 选中要解析的域名点击操作 / 解析设置 → 添加记录
- 你可以绑定多个子域名来使用,设置面板中,你只需将 记录值 指向你的 公网IP 即可。
- 前往 对象存储 OSS >> 开通
- Bucket 列表 → 创建Bucket
- Buket 名称:随意填写
- 地域:「有地域属性」-「西南1(成都)」
- 存储类型:「标准存储」
- 存储冗余类型:「本地冗余存储」
- 读写权限:「公共读」
- 所属资源组:「默认资源组」
- 版本控制:「未开通」(按需:单独计费)
- 服务端加密方式:「无」
- 实时日志查询:「未开通」(按需:单独计费)
- 定时备份:「未开通」(按需:单独计费)
- 跨域设置
- 登录阿里云后台,在对象存储OSS中进入对应的Buket → 数据安全 → 跨域设置 → 创建规则
- 来源 / 允许 Headers:「*」
- 允许 Mthods:「根据需要选择即可」
- 登录阿里云后台,在对象存储OSS中进入对应的Buket → 数据安全 → 跨域设置 → 创建规则
登录阿里云账号 → 进入云服务器 ECS 控制台 → 左侧菜单栏选择实例与镜像 → 实例 查看实例信息
在实例列表中 操作 列中选择 远程连接 → 选择 Workbench 远程连接
通过网页可以对ECS实例进行远程控制,支持复制粘贴文本,支持多操作系统用户登录同一台实例,支持可视化查看系统文件资源。
Tips: 直接在实例点击远程连接,不用安装工具,网页内操作,但是操作不是很方便。
包管理工具:yum >>
常用指令:
-
列出所有可更新的软件清单命令:
yum check-update
-
更新所有软件命令:
yum update
-
仅安装指定的软件命令:
yum install <package_name>
-
仅更新指定的软件命令:
yum update <package_name>
-
列出所有可安裝的软件清单命令:
yum list
-
删除软件包命令:
yum remove <package_name>
-
查找软件包命令:
yum search <keyword>
安装指令:
$ yum -y install nginx
配置文件:/etc/nginx/nginx.conf
静态文件路径:/usr/share/nginx/html
更改配置文件 → 启动:nginx [-s reload/stop]
-
前往 清华大学开源软件镜像站 >>,搜索
mongodb
,找到你要安装的版本 -
配置文件目录:
/etc/mongod.conf
-
启动:
systemctl start/stop/restart mongod
-
查看进程列表:
ps auxf |grep mongod
# mongod.conf
# for documentation of all options
# see:http://docs.mongodb.org/manual/reference/configuration-options/
# 写入日志数据的位置
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# 数据库存储位置
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
# 流程如何运行
processManagement:
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
#security:
security:
authorization: enabled
1)前往 清华大学开源软件镜像站 >>,搜索 nodejs-release
,找到你要安装的版本,并根据系统 / 位数选择对应的压缩包,鼠标右键 复制链接地址
。
2)切换到服务器,输入如下指令进行下载
$ curl -O https://mirrors.tuna.tsinghua.edu.cn/nodejs-release/v16.15.0/node-v16.15.0-linux-x64.tar.gz
Tips:
O
是大写字母,不要下载太高的版本,最好和本地node保持一致。
3)解压下载文件
# 解压
$ tar xvzf node-v16.15.0-linux-x64.tar.gz
# 移动至/usr/local/nod目录并添加软连接
$ cp -af node-v18.1.0-linux-x64 /usr/local/node && ln -s /usr/local/node/bin/* /usr/bin
5)验证
[root@lee node-v16.9.1-linux-x64]# which node
/usr/bin/node
[root@lee node-v16.9.1-linux-x64]# node -v
v16.9.1
6)删除不必要的文件
$ rm -rf xxx
前端项目建议存放的位置:/usr/share/nginx/html
后端项目建议存放的位置:/usr/share/apis
**提示:**一般来说,如果我要部署多个项目,我会将其部署至二级目录,并且通过项目来分类。比如我现在有一个项目叫 hope520
,其中包括了 H5
页面和一个后台管理系统 Admin
,那么我的目录结构大致是这样的:
/usr/share/nginx/html/
.
├── hope520 # 项目名
├── hope520-h5 # H5代码部署位置
└── hope520-admin # Admin代码部署位置
...
下面直接给配置表,仅供参考:
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
worker_processes auto;
worker_rlimit_nofile 10240;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 10240;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 4096;
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
# 公网ip访问(刷新)跳转
#server {
#listen 80 default;
#return 200 404.html;
#}
# 新希望520活动
server {
listen 443 ssl;
ssl_certificate m.zhishidaren.cn.crt;
ssl_certificate_key m.zhishidaren.cn.key;
server_name m.zhishidaren.cn;
location /hope520-h5/ {
alias /usr/share/nginx/html/hope520/hope520-h5/;
try_files $uri $uri/ /hope520-h5/index.html;
}
location /hope520-admin/ {
alias /usr/share/nginx/html/hope520/hope520-admin/;
try_files $uri $uri/ /hope520-admin/index.html;
}
location /bLHmc4ic08.txt {
root /usr/share/nginx/html/hope520;
}
location /xW4vpPkPvo.txt {
root /usr/share/nginx/html/hope520;
}
location / {
proxy_pass http://127.0.0.1:8888;
#proxy_hide_header Content-Security-Policy;
}
}
# Settings for a TLS enabled server.
#
# server {
# listen 443 ssl http2;
# listen [::]:443 ssl http2;
# server_name _;
# root /usr/share/nginx/html;
#
# ssl_certificate "/etc/pki/nginx/server.crt";
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 10m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
}
node 部署通常使用 pm2 >> 管理
你在远程服务器上的node项目结构应该是这样的:
/usr/share/apis
.
├── 项目A
├── 项目B
...
cosystem.config.js
关于 pm2 如何管理 node 项目,请 参考这里 >>
systemctl start/stop/restart mongod
:启动/停止/重启服务ps auxf |grep mongod
:查看进程whereis xxx
:查看某个软件的安装位置pwd xxx
:查看某个文件的位置cat
:查看某个文件的内容s
更多命令,参考这里 >>