zoukankan      html  css  js  c++  java
  • 如何用阿里云ECS搭建网站

    欢迎访问我的押韵精灵,是一个在线查询押韵的诗、词、歌、字的工具网站,包含双押多押等。

    本文记录下如何在阿里云上搭建该网站。

    选型

      现在利用云计算的能力,个人或者小型企业都能快速的搭建网站,笔者也曾经用过多个公司的云计算产品,发现阿里云的产品用的最爽。搭建小型网站可选的有云虚拟主机,轻量应用服务器和云服务器ECS。云虚拟主机预装建站环境,用户不用自己维护服务器,自由度低,适用于新手入门。云服务器ECS技术门槛要求高一些,用户自由搭建环境,有系统最高权限,可弹性扩容。轻量应用服务器属于ECS服务器不过为了新手增加了不少辅助功能。

       阿里云官网有详细的功能对比:https://help.aliyun.com/knowledge_detail/36214.html。这里就涉及到常说的IaaS, PaaS和SaaS。其中云虚拟主机属于PaaS, ECS属于IaaS。网上找了一张对比图,蓝色的是需要开发者自己维护开发的部分。

    SaaS就是什么都不需要你开发,全部交给第三方。PaaS只需要你开发网站本身。IaaS只给你一个操作系统其他什么都需要你来弄。

    当初在选型的时候挺纠结用阿里云ECS 还是 云虚拟主机。云虚拟主机的技术栈是ASP.NET MVC 或者 PHP,用Visual Studio开发部署网站还是挺方便的,网站访问的各种指标监控都是现成。云虚拟主机还配套了MySQL 或者 SQLSRVER。但是本人无奈没有Windows电脑,况且在MAC上开发ASP.NET MVC 还是挺折腾人的,PHP也不熟悉。最后只能选择ECS,用ECS就比较自由,任选技术栈,笔者选择了 SpringBoot(java 框架)+ Theyleaf(前端页面) + 云数据库RDS版(MYSQL),当然用了ECS可以直接在机器上部署mysql而不用特意购买云数据库,主要还是购买用的方便,它提供了操作数据的页面以及已经各种工具。

     

    域名

      开发阶段其实不需要域名,用公网IP就可以访问已经部署的网站。上线后最好搞个域名绑定,可以从阿里云查询想要的域名是否还可用:https://wanwang.aliyun.com/domain/searchresult/#/?keyword=vector&suffix=com。 除了 .com 的域名外,其他域名相对都不贵。买到域名后需要备案,从购买域名到完成备案大概需要3周时间,最后它会给个网站备案号比如:  浙ICP备2021003795号-1,  它建议放到网站首页底部。流程如图:

     

    云虚拟主机

      购买云虚拟主机,会附带一个数据库和FTP账户,对于QPS不到15的网站,单核1G内存都够了,一年的费用就几百块,后面如果访问量上来了也还可以升级配置。云虚拟主机购买入口: https://wanwang.aliyun.com/hosting?spm=5176.19720258.J_8058803260.31.7b812c4aQevvEL。 笔者曾经用的是ASP.NET MVC为客户弄个了网站工具。用Visual Studio 直接publish 部署包到云虚拟主机,右键Solution 点击publish,选择FTP部署,填入云虚拟主机提供的FTP账户密码,如图:

           

    发布后在主机页面 启动站点,就能通过临时域名访问到了。如果想要通过正式域名访问,点击下面的域名管理,将域名和当前地址关联即可。点击流量状态申请后就能看到访问信息。这比ECS好太多了。

    点击数据库信息 -> 管理, 进入数据库管理,但是相比云数据库的管控页面,这个功能太简单了。云虚拟主机的各种功能,可以自己去探索,比较适合个人建站。

    ECS 

      单核1G按月收费的ECS服务器,一年也不会超过1000RMB,比云虚拟服务器上开发者能施展的空间大太多了。申请实例后就能看到实例详情,点击远程链接,进入机器控制台。

    通过控制台就可以按照所需要的软件了,还可以通过文件发送把本地机器文件发送到ECS服务器,但是文件大小不能大于32kB。对于SpringBoot应用,最基本的要

    1. 安装JDK&配置环境变量

    wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz

    tar -zxvf jdk-8u151-linux-x64.tar.gz

    vi /etc/profile

    加入内容如下:

    export JAVA_HOME=/usr/local/jdk1.7.0_71 #bin的上一级
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$JAVA_HOME/bin:$PATH

    重启profile :source /etc/profile

    2. 打包SpringBoot 应用

     mvn clean package

    3. jar包复制到ECS, 由于上传文件只有32k的限制,所有可以用scp

    scp /target/spring-boot-1.0.0.jar root@{ECS公网IP}:/root/deploy

    4. 关闭原先进程

    kill -9 $(ps -aux |grep spring-boot|grep -v grep |awk '{print $2}')

    5. 以守护进程运行,否则关闭远程连接后java进程就会推出

    nohup java -jar deploy/spring-boot-1.0.0.jar &

    6. 就可以直接通过IP访问了,比如

      http://47.114.131.31/index

    7. 绑定域名,在域名控制台新增记录,添加公网IP对应的域名即可。 

    最后能在ECS监控页面看到各种机器纬度的监控,业务纬度的监控就需要开发自己弄了。

    欢迎访问我的押韵精灵,是一个在线查询押韵的诗、词、歌、字的工具网站,包含双押多押等。

  • 相关阅读:
    数学基础
    Codeforces Beta Round 84 (Div. 2 Only)
    Codeforces Round 256 (Div. 2)
    Codeforces Round FF(Div. 2)
    Codeforces Round 254 (Div. 2)
    Python3 集合(无序的set)
    Python3 字典(map)
    Python3 元组
    Python3 列表
    初等数论及其应用——唯一分解定理
  • 原文地址:https://www.cnblogs.com/VectorZhang/p/14388994.html
Copyright © 2011-2022 走看看