阿里云服务器部署项目流程

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 连接服务器,准备环境利用XShell连接远程云服务器,准备Jdk、mysql、tomcat、redis的安装

0,准备工作

点击:注册阿里云账号

然后做一下实名

1.连接服务器,准备环境

利用XShell连接远程云服务器,准备Jdk、mysql、tomcat、redis的安装

1.1设置服务器防火墙

开放以下端口

Redis : 6379端口

Mysql : 3306端口

HTTP : 80端口

HTTPS : 443端口

SSH : 22端口

编辑切换为居中

添加图片注释,不超过 140 字(可选)

1.2去官网下载安装包,上传到云服务器

Tomcat 8 :Tomcat 8 Software Downloads

Mysql :https://dev.mysql.com/downloads/repo/yum/

Redis:https://redis.io/download

添加图片注释,不超过 140 字(可选)

上传至云服务器然后解压

tar -xvzf redis-5.0.5.tar.gz tar -xvzf apache-tomcat-8.5.43.tar.gz

1.3安装JDK

[root@iz2ze488eeqkbsq8cxntxbz ~]# yum list | grep jdk       查看yum里的JDK版本    [root@iz2ze488eeqkbsq8cxntxbz ~]# yum install java-1.8.0-*     安装JDK1.8   [root@iz2ze488eeqkbsq8cxntxbz ~]# java -version       安装成功 openjdk version "1.8.0_222" OpenJDK Runtime Environment (build 1.8.0_222-b10) OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

1.4安装MySQL

[root@iz2ze488eeqkbsq8cxntxbz ~]# rpm -Uvh mysql80-community-release-el7-3.noarch.rpm    安装用来配置Mysql的yum源的rpm包   [root@iz2ze488eeqkbsq8cxntxbz ~]# yum install mysql-community-server   安装Mysql   [root@iz2ze488eeqkbsq8cxntxbz ~]# service mysqld start Redirecting to /bin/systemctl start  mysqld.service   启动Mysql   [root@iz2ze488eeqkbsq8cxntxbz ~]# ps -ef | grep mysqld mysql     3131     1  9 01:57 ?        00:00:01 /usr/sbin/mysqld root      3178  2353  0 01:57 pts/0    00:00:00 grep --color=auto mysqld   查看Mysql进程   [root@iz2ze488eeqkbsq8cxntxbz ~]# grep 'temporary password' /var/log/mysqld.log 2019-08-08T17:57:03.766499Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: fm;v-i#nj0oH     查看Mysql自动生成的密码   [root@iz2ze488eeqkbsq8cxntxbz ~]# mysql -uroot -p Enter password:  Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 9 Server version: 8.0.17   用初始密码登录Mysql   mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Hr980526'; ERROR 1819 (HY000): Your password does not satisfy the current policy requirements mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Hr980526!'     -> ; Query OK, 0 rows affected (0.01 sec)   修改密码  密码需要大小写字母数字以及特殊符号混合 否则提示密码不符合策略   mysql> create user 'lzx'@'%' identified by 'Hr980526!'; Query OK, 0 rows affected (0.01 sec)   创建一个新用户供客户端连接   mysql> grant select,insert.update,delete on *.* to 'lzx'@'%'; Query OK, 0 rows affected (0.01 sec)   赋权限给新用户   mysql> show grants for 'lzx'@'%'; +----------------------------------------------------------+ | Grants for lzx@%                                         | +----------------------------------------------------------+ | GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO `lzx`@`%` | +----------------------------------------------------------+ 1 row in set (0.00 sec)   查看权限   mysql> flush privileges; Query OK, 0 rows affected (0.01 sec)   立即生效    

云服务器安装的8.0Mysql,本机5.6Mysql,由于加密方式问题,可能导致本地连接云服务器Mysql失败

编辑

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)

登录云服务器数据库,执行以下命令即可:

[root@iz2ze488eeqkbsq8cxntxbz ~]# mysql -uroot -p Enter password:  Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 30 Server version: 8.0.17 MySQL Community Server - GPL   Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.   Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.   Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.   mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Hr980526!'; Query OK, 0 rows affected (0.01 sec)

1.5安装Redis

[root@iz2ze488eeqkbsq8cxntxbz ~]# ls apache-tomcat-8.5.43  mysql80-community-release-el7-3.noarch.rpm  redis-5.0.5   进入redis解压后的目录   [root@iz2ze488eeqkbsq8cxntxbz ~]# cd redis-5.0.5   利用make命令将redis源代码编译   [root@iz2ze488eeqkbsq8cxntxbz redis-5.0.5]# make   修改配置文件   [root@iz2ze488eeqkbsq8cxntxbz redis-5.0.5]# ls 00-RELEASENOTES  CONTRIBUTING  deps     Makefile   README.md   runtest          runtest-moduleapi  sentinel.conf  tests BUGS             COPYING       INSTALL  MANIFESTO  redis.conf  runtest-cluster  runtest-sentinel   src            utils [root@iz2ze488eeqkbsq8cxntxbz redis-5.0.5]# vim redis.conf    将daemonize改为yes  后台启动   # By default Redis does not run as a daemon. Use 'yes' if you need it. # Note that Redis will write a pid file in /var/run/redis.pid when daemonized. daemonize yes   将bind 127.0.0.1 注释掉  开放远程连接   # IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES # JUST COMMENT THE FOLLOWING LINE. # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #bind 127.0.0.1   redis测试   [root@iz2ze488eeqkbsq8cxntxbz redis-5.0.5]# src/redis-server redis.conf 8842:C 09 Aug 2019 03:31:59.408 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 8842:C 09 Aug 2019 03:31:59.408 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=8842, just started 8842:C 09 Aug 2019 03:31:59.408 # Configuration loaded [root@iz2ze488eeqkbsq8cxntxbz redis-5.0.5]# src/redis-cli 127.0.0.1:6379> set 'name' 'lzx' OK 127.0.0.1:6379> get 'name' "lzx" 127.0.0.1:6379>  

1.6安装Tomcat8.5

[root@iz2ze488eeqkbsq8cxntxbz bin]# ./startup.sh Using CATALINA_BASE:   /root/apache-tomcat-8.5.43 Using CATALINA_HOME:   /root/apache-tomcat-8.5.43 Using CATALINA_TMPDIR: /root/apache-tomcat-8.5.43/temp Using JRE_HOME:        /usr Using CLASSPATH:       /root/apache-tomcat-8.5.43/bin/bootstrap.jar:/root/apache-tomcat-8.5.43/bin/tomcat-juli.jar Tomcat started.     解压后,进入tomcat的src的bin目录下 startup命令即可启动

2.项目的发布

前面已经完成了服务器和环境的配置,接下来就可以将自己的项目打包发布了。

2.1项目打包

我的项目是IDEA开发的SpringBoot项目,打包过程如下:

  • 添加tomcat依赖

       <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-tomcat</artifactId>             <!--打包的时候可以不用包进去,别的设施会提供。事实上该依赖理论上可以参与编译,测试,运行等周期。                             相当于compile,但是打包阶段做了exclude操作-->             <scope>provided</scope>         </dependency>

修改包类型,打成war包

   <groupId>cn.lzx</groupId>     <artifactId>university_shop</artifactId>     <version>0.0.1-SNAPSHOT</version>     <packaging>war</packaging>

修改启动类,继承SpringBootServletInitializer类,重写config方法

@SpringBootApplication @MapperScan("cn.lzx.university_shop.mapper") @ImportResource(locations = {"classpath:kaptcha.xml"}) public class UniversityShopApplication extends SpringBootServletInitializer {       public static void main(String[] args) {         SpringApplication.run(UniversityShopApplication.class, args);     }       @Override     protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {         return builder.sources(UniversityShopApplication.class);     } }

设置打包之后包名(可选)

           <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-war-plugin</artifactId>                 <configuration>                     <warName>o2o</warName>                 </configuration>             </plugin>

完成以上设置后,利用maven打包,即可在项目目录下生成target文件夹,里面存放了生成的war包。

如果之前打过包,需要先maven clean一下,然后maven package打包。

编辑

添加图片注释,不超过 140 字(可选)

2.2项目发布

  • 启动云服务器的tomcat,然后将war包放在tomcat/webapps目录

编辑切换为居中

添加图片注释,不超过 140 字(可选)

过几秒钟,tomcat会自动将该war包解压,生成对应的文件夹

编辑切换为居中

添加图片注释,不超过 140 字(可选)

然后本机浏览器输入云服务器IP/域名+项目路径即可访问

编辑切换为居中

添加图片注释,不超过 140 字(可选)

至此,项目发布完成,可以在公网进行访问,对云服务器也可以购买域名进行域名绑定。

3.注意事项

  • 3.1项目发布后,本机无法访问?请求超时?

购买的云服务器配置较低,tomcat也没有进行调优,启动较慢,可以启动tomcat后等待几分钟再去访问。

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
15天前
|
弹性计算 监控 负载均衡
|
8天前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
5天前
|
弹性计算 安全 网络安全
阿里云服务器四种常见购买方式适用对象与购买流程参考
阿里云服务器有多种购买方式,不同的方式适合对象与购买流程不一样,常见的购买方式有自定义购买、一键购买、云市场购买和通过活动购买四种方式。本文为大家介绍这四种方式的区别、适合对象以及详细的流程,以供参考和选择。
|
15天前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
22天前
|
弹性计算 安全 网络安全
阿里云服务器租用流程,四种阿里云服务器租用方式图文教程参考
阿里云服务器可以通过自定义租用、一键租用、云市场租用和活动租用四种方式去租用,不同的租用方式适合不同的用户群体,例如我们只是想租用一款配置较低且可以快速部署应用的云服务器,通常可以选择一键租用或者云市场租用,本文为大家展示不同租用方式的适合对象以及租用流程,以供初次租用阿里云服务器的用户参考和选择。下面是阿里云服务器租用的图文操作步骤。
|
24天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
202 3
|
24天前
|
NoSQL Linux PHP
|
25天前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
95 1
|
1月前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
47 1
|
弹性计算 前端开发 Java
初体验ECS搭建项目
经常需要帮忙填写电子表格,用的是图片识别然后手动填充表格,比较费时间,于是想做一个自动填充表格的小demo。
初体验ECS搭建项目

热门文章

最新文章