请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
搜索

如何将自己开发的网站部署到阿里云上?

iamevin 2018-11-26 12:57:55 显示全部楼层 阅读模式
例如自己自在本地开发好了一个java web网站,如何部署到阿里云上,让别人访问?请大神指教
回复

使用道具 举报

大神点评20

cy911 2018-11-26 12:58:23 显示全部楼层
呐呐呐,做人呢,最重是要开心啦。
呐呐呐,做Java呢,最重要是要把自己的“作品” 部署到公网上去啦。
特别是初学者,需要向面试官证明自己会什么,这个真的就很重要啦,空口无凭,为什么面试官就相信你的简历内容是真的呢? 最好的办法当然就是把作品放在公网上,show 他一脸啦
对于已经参加工作的同事,这个反倒是比较简单的,因为在工作中,部署一个项目无非就是通过ftp把.war(或者其他形式)传递上去,然后重启tomcat, 等一等就完成了。 可是,如果是学习者,比已经工作的人员面临的挑战更大,为什么呢? 因为手上没有一个已经搭建好的环境,没有一个“上传,重启” 就一切ok的环境,如果是不熟悉Linux一套的同学,面临的挑战,不亚于从未学过编程,要从Hello开始学习Java的难度呢
为了解决这个问题,做了一个系列教程,从零开始,从空环境开始,一直做到能够在公网上看到一个可以跑起来的效果。
期间不仅把每个步骤全部都记录下来了,而且需要用到的软件和工具,也提供了下载,减少学习的曲线(因为有些软件真的有点难找呢)。


    首先选购阿里云服务器。阿里云服务器有很多种,因为是学习需要,所以帮大家找了最便宜的14.76一周的。。。 一周时间,怎么都够掌握这个了~


如何将自己开发的网站部署到阿里云上?-1.jpg
2. 购买每步详细讲解
阿里云服务器的购买参数是很多的,对于新手而言知道该怎么选安全组吗?知道如何选最便宜的吗?(默认不是最便宜的),知道如何选镜像和操作系统吗,这些对于熟手完全不是问题的,却会让新手抠脑壳抠半天去了,所以这部分我都做了详细的记录和说明
如何将自己开发的网站部署到阿里云上?-2.jpg
3. 购买之后,连接上服务器
服务器是Linux,和Windows不一样。 Windows远程连接过去就可以用了,Linux连接上去需要专门的工具。
如何将自己开发的网站部署到阿里云上?-3.jpg
成功连接之后看到的也不是图形化界面,而是命令行界面,需要对这些命令熟练运用。
如何将自己开发的网站部署到阿里云上?-4.jpg
最后还得专门练习练习使用vi工具,掌握如何编辑和保存配置文件。
如何将自己开发的网站部署到阿里云上?-5.jpg
4. 紧接着是ftp服务器。 ftp服务器用来接受从pc端上传文件到linux服务器。 这个啊,也是颇大的一个坑啊,其中涉及到用户,权限,ftp服务器安装,端口开启,相关配置,ftp客户端,反正也是一大坨东西呢
如何将自己开发的网站部署到阿里云上?-6.jpg
5. Java环境安装
这个最简单,一句话就好了呢
如何将自己开发的网站部署到阿里云上?-7.jpg
6. Mysql
部署J2EE应用,不会只有jsp嘛,总归是要连接数据库的。 所以Mysql还是要自己安装和配置的呢
如何将自己开发的网站部署到阿里云上?-8.jpg
7. Tomcat
到这个地方,才轮到Tomcat上场呢
如何将自己开发的网站部署到阿里云上?-9.jpg
8. 部署J2EE 应用
到了这里最后一步,才部署J2EE应用呢,这里就要把前面的ftp利用起来做上传,也要进行mysql的配置和tomcat的配置啦
如何将自己开发的网站部署到阿里云上?-10.jpg
9. 教程地址:
http://how2j.cn/k/deploy2linux/deploy2linux-breif/1591.html?tid=107
教程根据个人经验制作,有不足之处,请多指教,谢谢
回复

使用道具 举报

acarphier 2018-11-26 12:58:41 显示全部楼层
同学你好,阿里云云市场提供了多种快速建站工具以及帮助文档,小编梳理如下:
部署Java Web项目_部署Jave Web_建站教程_云服务器 ECS-阿里云Tomcat 作为一个开源且免费的 Java Web 服务器,常用来作为 web 开发的工具。它可以托管由 servlet,JSP 页面(动态内容),HTML 页面,js,样式表,图片(静态内容)组成的 Java Web 应用程序。
部署方式

在阿里云服务器下部署 JAVA 提供三种部署方式:
JAVA 镜像部署一键安装包部署手动部署(源码编译安装/YUM安装)一般推荐使用镜像部署,尤其适合新手,使用更加快捷方便(阿里云的云市场提供了丰富的镜像软件,点击查看)。而安装包部署以及手动部署适合对 Linux 命令有基本了解的用户,可以满足用户个性化部署的要求。本文主要介绍镜像和手工部署的方式。
镜像部署

    单击 JAVA 环境(CentOS7.2 Nginx Tomcat8 JDK)进入镜像详情页。单击 立即购买,按提示步骤购买 ECS 实例。登录 ECS 管理控制台。在左边导航栏中,单击 实例,进入 ECS 实例列表页。选择所购 ECS 实例所在的地域,并找到所购 ECS 实例,在 IP 地址 列获取该实例的公网 IP 地址。在浏览器地址栏中输入公网 IP 地址,下载操作文档。
详细布署帮助文档请点击这里查看:部署Java Web项目_部署Jave Web_建站教程_云服务器 ECS-阿里云
----------------------------------------------------------------------------------
wordpress博客:
https://yq.aliyun.com/articles/73814?spm=5176.100239.0.0.Gzue5F
discuz论坛:
https://yq.aliyun.com/articles/79148?spm=5176.100239.0.0.Gzue5F
Magento电商:
https://help.aliyun.com/document_detail/50704.html?spm=5176.doc50604.6.659.61EnEb
Drupal建站:
https://help.aliyun.com/document_detail/51375.html?spm=5176.doc50704.6.661.VaZpeV
手动建站(Windows环境):
https://help.aliyun.com/document_detail/43245.html?spm=5176.doc51375.6.663.9UYa4I
快速使用AMH建站:
https://help.aliyun.com/document_detail/53319.html?spm=5176.doc53099.6.673.U87X3i
Joomla建站:
https://help.aliyun.com/document_detail/53543.html?spm=5176.doc53319.6.675.TeVEhz
phpwind论坛:
https://help.aliyun.com/document_detail/53855.html?spm=5176.doc53543.6.676.KDs5sh

更多建站软件及教程尽在云市场开发者软件频道,https://market.aliyun.com/developer”
回复

使用道具 举报

moumou.oicp.net 2018-11-26 12:59:03 显示全部楼层
如过是NODE + MONGO项目的话,我之前倒是部署过,当时我也是完全不知道要怎么弄,部署完之后感觉自己其实还是不是很懂,仅仅是成功了,但是每个步骤具体是什么意思自己也不太了解。于是就写了篇教程给自己。免得自己下次要做又不会了。

目录
一、阿里云申请/购买服务器
二、下载及安装putty和Xftp
三、为云服务器安装环境
01. 连接云服务器
02. 安装node.js
03. 安装mongoDB
四、上传代码
五、启动应用
六、大功告成




一、阿里云申请/购买服务器
01. 进入阿里云官方网站,找到云服务器ECS。阿里云云服务器


02. 重点看这里,由于是个人小网站,就没有必要买那么贵的啦,这个1核1G的就可以了。每年330块钱,折合每个月不超过30块。操作系统我选的是centOS 6.5。点击立即购买。
如何将自己开发的网站部署到阿里云上?-1.jpg
03. 点击立即购买之后进入到确认订单页, 会有一个设置密码。这个密码设置好之后要记住,待会儿要用到。设好密码之后点击去下单。
如何将自己开发的网站部署到阿里云上?-2.jpg
04. 好了,去付钱吧。


05. 买好云服务器之后,你在阿里云的首页,登陆之后可以直接点击右上角的控制台
如何将自己开发的网站部署到阿里云上?-3.jpg
06. 在左边点击云服务器ECS
如何将自己开发的网站部署到阿里云上?-4.png


07. 找到你刚才购买地区,运行中字样的图标。我买的是云服务器,有一个在运行中,就是这个,点击
运行中1
如何将自己开发的网站部署到阿里云上?-5.jpg


8. 这时候你就可以看到你买到的云服务器了,注意我用红框框出来的位置,这个IP地址就是你的公网IP,后面要用到。
如何将自己开发的网站部署到阿里云上?-6.jpg
二、下载及安装putty和Xftp
putty 是用于连接你手头上这台电脑以及你刚才购买的阿里云服务器,没有这个软件,你都不知道上哪儿敲部署教程里面的那些个字母(没错,我就是白痴到竟然在这个步骤走了许多弯路)
Xftp 用于部署好之后把你本地写好的程序上传到云服务器
tips:putty直接下载就可以用了,Xftp下载好之后安装,一直下一步也可以了。
三、为云服务器安装环境
01. 连接云服务器
A.
双击putty
如何将自己开发的网站部署到阿里云上?-7.png


B.
出现的这个页面填写红框内信息,host name那里填写刚才申请的阿里云的公网IP,port一般是22,选择SSH,only on clean exit。点击open
如何将自己开发的网站部署到阿里云上?-8.jpg


C.
然后进入这个状态,
如何将自己开发的网站部署到阿里云上?-9.jpg


输入root,回车。这是它会让你输入密码(tips),回车。出现
如何将自己开发的网站部署到阿里云上?-10.png


的时候,表示连接远程服务器成功了。
tips:注意linux系统,输入密码的时候不会出现任何字符包括空格或者*号,放心吧不是电脑坏了。当初我做的时候从来没有用过linux系统,一度怀疑我自己是不是又哪里操作错了,导致没反应
02. 把yum更新到最新版本:
yum -y update
03. 我们将使用最新源代码构建Node.js,要进行软件的安装,需要一组用来编译源代码的开发工具:
04. 安装node.js
A.
开始安装Node.js,先进入/usr/src文件夹,这个文件夹通常用来存放软件源代码:
B.从 Node.js的站点 中获取压缩档源代码, 我选择的版本为v6.9.1:
tips:以上安装nodejs的地址所包含的版本号,你需要跟根据不本地配置使用的nodejs版本来决定,先找到自己的版本号,然后把以上地址的‘6.9.1’替换成你使用的版本号
C.
解压缩源文件,并且进入到压缩后的文件夹中:
D.
执行配置脚本来进行编译预处理:
E.
开始编译源代码
F.
当编译完成后,我们需要使之在系统范围内可用, 编译后的二进制文件将被放置到系统路径,默认情况下,Node二进制文件应该放在/user/local/bin/node文件夹下
G.
现在已经安装了Node.js, 可以开始部署应用程序。首先要使用Node.js的应用管理模块,pm2(用于启动程序并在需要时重启非常有用的模块):


H.
建立超级链接, 不然 sudo node 时会报 "command not
found"


05. 安装docker
A. 添加yum仓库(vim是编辑的意思,如果不存在该文件则会创建)
B. 将docker.repo需要的内容贴入出现的空白里
C. 按下ESC,然后:wq保存并退出编辑文本
D. 安装docker
E. 启动docker
F. 完成后查看安装是否成功(出现client和server则表示安装成功)
G. 设置开机启动


06. 使用docker可以非常简单的安装mongoDB(数据库)
A. docker 下载mongodb
B. 下载完成后直接启动它
C. 使用docker ps直接就可以查看 mongodb 已经启动成功了
D. 还可以进入docker的mongo容器,对mongodb进行具体的操作
E. 其实经过简单的第一第二步,mongo就已经下载安装成功并且运行起来了,不过数据库嘛,安全还是很重要的,接下来我们就进入数据库设置一下账号密码,首先使用D步骤的方式进入docker 容器(这个容器其实就相当于进入了一台linux机器)。进入之后,进入mongo
F. 使用 admin 数据库(即便没有这个数据库也没关系)
G. 创建管理员账户
tips: mongodb中的用户是基于身份role的,管理员账户的 role是 userAdminAnyDatabase。 userAdmin代表用户管理身份,’AnyDatabase’ 代表可以管理任何数据库。
H. 验证用户是否添加成功


tips:程序连接数据库,我的程序使用的是mongoose,那么我用mongoose来举例,如果你们用的是其他的npm包,那就自己去查查资料了哦。
mongodb://<mongo用户名>:<mongo密码>@$<ip地址>:<port端口号>/<数据库名>?authSource=admin
比如说刚才我设置的用户名是test,密码是123,ip地址是192.168.2.2(刚才买的阿里云服务器的外网ip),端口号是27017(没有重新设置的mongo端口号都是27017),想要连接的数据库名是mybase。那么我应该写成
mongodb://test:123@192.168.2.2:27017/mybase?authSource=admin


tips:
据说曾经有人设密码的时候密码里有"@"字符,这你就要想想你为什么要作死了[doge]


四、上传代码
这个时候云服务器的环境其实已经装好了,可以暂时告别一下putty了
01. 双击打开Xftp
如何将自己开发的网站部署到阿里云上?-11.jpg


02. 点击新建
如何将自己开发的网站部署到阿里云上?-12.jpg


03. 出现一下窗口,名称自己取一个项目名称。主机,填写阿里云服务器的公网IP,协议选择SFTP,端口使用22,用户名root,密码为购买阿里云的时候要你记住的密码。最后点击确定。
如何将自己开发的网站部署到阿里云上?-13.jpg


04. 你将进入你所创建的阿里云内的root文件夹,双击
如何将自己开发的网站部署到阿里云上?-14.jpg
去到上一层,
如何将自己开发的网站部署到阿里云上?-15.jpg


找到home文件夹,双击进入。
05. 左边框的文件夹就是你本机电脑中的文件夹,在当中找到你在本机建立的项目的所有文件,点击右键,传输。那么你就可以在下面的框中看到传输的过程。这时候耐心等待传输完毕。
五、启动应用
代码已经上传完了,这时候我们回到putty
01. 进入存放代码的目录,存放在/home/app目录下,server.js为程序入口文件
如何将自己开发的网站部署到阿里云上?-16.jpg
出现这个画面(或者类似的画面,因为pm2初次启动可能会显示一些更多的画面),恭喜你,部署成功了。


tips:以上home文件夹下的app文件夹为你项目所在的文件夹,server.js为你程序的入口文件,可以根据你的实际情况改变为你实际所写的名称。--name后面跟的是你为你的应用程序取的名字。方便以后你查看你的应用运行情况的时候比较清晰。


tips2:以上其实已经结束了。不过如果你的服务器是多核的,你想通过将node应用集群化的方式来完成利用好自己服务器的多核(由于node是单线程的,直接启动只能利用到一个核,当你的服务器是多核的,只用一个核就有些浪费了,而集群化利用好多核有助于分担应用压力),而pm2就是一个非常方便用来将node 应用集群化的模块。
后面加上 -i表示将该应用集群化布置为4份,因为我的电脑是4个核的。想要知道你的电脑是几核的。可以这样得出
得出来的数字是几就是几核。(如果你只是想要帮助自己理解一下部署,而部署并不是你发展的方向,可以跳过tips2)


tips:检视运行中的应用:
如果需要关闭应用,命令如下:
如果需要删除应用,命令如下:
如果需要查看应用日志,命令如下:
六、大功告成
这时打开你的浏览器,输入你所购买的阿里云的公网IP 加上 你入口程序server.js中所listen的端口号(比如我阿里云的公网ip为1.1.1.1,listen的端口号为8000,那么我输入的网址就是http://1.1.1.1:8000)打开看看是不是你的网站
happy endding




本教程参考资料(侵删):
01. 把Node.js项目部署到阿里云服务器(CentOs) - 推酷
02. 开机/etc/rc.local 不执行的问题
03. http://jingyan.baidu.com/article/19192ad820877be53e5707e3.html
04. linux上安装Docker(非常简单的安装方法) - 我走小路的博客 - CSDN博客
05. Docker Mongo数据库开启用户认证


其他:
本教程买阿里云服务器的地址系推广地址。
一个领取优惠券的小程序
如何将自己开发的网站部署到阿里云上?-17.jpg


更新时间线:
2017-12-03    换成pm2模块部署node应用
2017-12-13    mongo数据库添加用户密码
2018-09-30 使用docker中的mongo代替直接使用mongo编译(操作更加的简单[如果这片文章之前还有印象,会发现少了一大段],便于管理[比如说以后需要用其他的数据库或者是什么环境,也可以直接通过docker pull安装,一两条命令解决,非常方便])
回复

使用道具 举报

abab1133 2018-11-26 12:59:36 显示全部楼层
先买一台云主机,获得了账号密码后,ssh连上,scp拷贝,然后,就和本地部署一样了。
回复

使用道具 举报

happy66.net 2018-11-26 13:00:10 显示全部楼层
谢邀。
如何打造类似数据虫巢官网系列教程之三:架设网站
可以参考一下,基本上是一个部署阿里云的过程,包括域名、服务器选择之类的。
回复

使用道具 举报

sy2526 2018-11-26 13:01:05 显示全部楼层
在国内,一个网站要对外服务,大概需要做以下准备:
1、网站程序开发;
2、注册域名;
3、域名工信部和接入商备案;
4、把程序部署到服务器,并将服务器接入互联网上线;
       网站的程序开发完成后,只是在本地开发环境运行,如果要把它发布到互联网上,首先需要一个域名,但这一点大家都很了解,所以这里2和3就不展开说明了。
       我想题主所关心的问题应该是第4点,如何把网站部署到服务器并发布到互联网中。
       要是在几年以前,大部分人的做法是先购买一台服务器,然后找个IDC机房进行托管,再购买相应的机位、带宽资源和若干个固定的公网IP。然而到现在,随着云计算的普及,大家逐渐接受了云主机这样一个已经不算新的产品,用户只需要在提供云计算服务的网站上注册一个账号,然后按照自己的需要来选择配置、带宽等资源,就可以拥有一台云主机了,再远程接入这台云主机将程序部署上去,即可对外进行服务。
      题主的网站程序开发完成后,可以到阿里云购买云主机,然后便可以将网站程序部署到云主机上,最后上线发布。文件上传部署可以使用Xftp或者FTP,不过向您推荐一下我们行云管家的文件上传功能,比FTP更好用,无需部署FTP,通过内网访问助手,可以获带宽,不占用公网带宽和云主机资源。
      行云管家提供了一个一站式的云主机管理平台,像题主一样的用户可以在这里管理自己的主机,我们提供了主机管理、主机监控、安全审计、自动化运维等等一系列的功能特性,彻底解决云主机管理的难题
      传送门:功能特性 - 行云管家
回复

使用道具 举报

vvenufedun 2018-11-26 13:02:01 显示全部楼层
希望这边的系列文章能够帮到你。


视频教程《手把手教你如何将自己开发的网站部署到阿里云上》
Alibaba Cloud Toolkit - 播单 - 优酷视频

开发笔记6 | 部署 Java 应用程序到阿里云 ECS开发笔记7 | 部署 Go 应用程序到阿里云 ECS开发笔记9 | 部署 Java 应用程序到阿里云 EDAS开发笔记11 | 部署 Spring Boot 应用到云VM开发笔记13 | 部署 Node.js 应用程序到云 ECS
回复

使用道具 举报

6363 2018-11-26 13:02:46 显示全部楼层
知乎首答,小学生一个,不周之处请多多包涵。
自己写的几个小小小小小小网站部署在了阿里云上,部署的时候全靠自己摸索,当时也是有心,记下了过程。
今天看到这个问题,把这个过程发出来希望帮助像我一样的小白找到学习的动力。


另附(自己只是初初初学者,里面的东西毫无营养,全是自己为了找成就感,各大牛口下留情):
JavierXDD/fleaMarketPS:里面网站的demo链的就是阿里部署上去的。
阿里云部署项目(jdk+mysql+tomcat)

版本:Java运行环境(Centos7 64 | JDK8|Tomcat8)
因为购买的是拥有java运行环境的版本。磁盘预装了jdk8、tomcat8。后来发现里面还装好了mysql 但是有问题不能使用。下面会修改配置。
jdk8根目录:/user/java/jdk1.8.0_111/..
tomcat8根目录:/home/tomcat/apache-tomcat-8.5.8/..
mysql根目录: 没找到。。。

    安装AppNode
参照 :https://www.appnode.com/install
可视化、简易高效、操作透明、高可扩展的 Linux 服务器集群管理面板。
用面板,主要用文件管理、上传下载功能。省去配置ftp的麻烦。
问题:安装后无法进入面板(上述安装端口号设置为5555)
解决:修改阿里云ECS安全组规则(入方向)
添加安全组规则
设置协议类型:自定义TCP
设置端口范围:5555/5555(相应的端口号)
设置授权对象:0.0.0.0/0

    登录AppNode面板
节点列表中,安装受控端
    修改mysql密码
1、编辑 MySQL 配置文件 my.cnf(以实际 my.cnf 配置文件路径为准)
vim /etc/my.cnf[mysqld]skip-grant-tables  #增加
2、重启 MySQL 服务(以实际启动脚本位置为准)
/etc/init.d/mysqld restart
3、登录数据库
/usr/bin/mysql 输入如下命令:
UPDATE user SET authentication_string = password ('root') WHERE User = 'root' ;
4、删除或者注释第一步骤中添加的 spip-grant-tables
5、重启 MySQL 服务
/etc/init.d/mysqld restart
6、使用新密码测试
    导入项目sql文件
1、把本地的sql文件上传到服务器上。利用AppNode上传功能很方便。记着上传路径。
2、首先建空数据库
mysql>create database abc;
3、导入数据库 方法一(我用的,亲测可用):
(1)选择数据库
mysql>use abc;  
(2)设置数据库编码
mysql>set names utf8;  
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;  # /home/abc/abc.sql是上传的sql文件
mysql -u用户名 -p密码 数据库名 < 数据库名.sql #mysql -uabc_f -p abc < abc.sql

    启动tomcat
1、进入Tomcat下的bin目录
cd //home/tomcat/apache-tomcat-8.5.8/bin
2、使用Tomcat关闭命令
./shutdown.sh
3、查看Tomcat是否以关闭
ps -ef|grep java
4、如果显示以下相似信息,说明Tomcat还没有关闭
root      7010     1  0 Apr19 ?        00:30:13 /usr/local/java/bin/java
-Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
-Djava.awt.headless=true
-Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m
-XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m
-XX:+DisableExplicitGC  -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.endorsed.dirs=/usr/local/tomcat/endorsed
-classpath /usr/local/tomcat/bin/bootstrap.jar
-Dcatalina.base=/usr/local/tomcat
-Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
5、如果你想直接干掉Tomcat,你可以使用kill命令,直接杀死Tomcat进程
kill -9 7010
6、然后继续查看Tomcat是否关闭
ps -ef|grep java
7、如果出现以下信息,则表示Tomcat已经关闭
root      7010     1  0 Apr19 ?        00:30:30 [java] <defunct>
8、最后,启动Tomcat
./startup.sh

    上传war包
把自己的项目打包为war
上传到tomcat/webapps/下
回复

使用道具 举报

disconnect 2018-11-26 13:03:29 显示全部楼层
先看效果
库存物资管理系统 阿里云服务器,数据库的作业


---------------分割线------------


我也是这样一步一步走过来的。
既然是开发javaweb的,tomcat知道那就行。
首先买服务器,学生9.9R。然后远程连接
如何将自己开发的网站部署到阿里云上?-1.jpg
步骤如下:
1、安装jdk
2、安装tomcat
具体步骤 wenbochang888/JDK 我github上面有写。


如果你用eclipse或者idea开发的话,直接打包成war包。
放到tomcat下面的webapps。然后直接访问就行


------------后序分割线-----------


虽然我描述的很简单,但如果真正实施起来,新手的话,一天都未必搞的定。
但搞定后会有一种成就感,计算机嘛,多尝试多尝试
共勉
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册