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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云服务器 ECS,每月免费额度200元 3个月
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 本文主要讲解阿里云服务器的部署,如何选择配置等

准备工作

如果你要使用阿里云,那么你必须要注册一个阿里云账号,否则你是无法购买到阿里云服务器的。

点击:注册阿里云账号

在注册页面,输入用户名,手机号,密码和重复密码,然后点击注册

image.gif 编辑

注册完以后,去到阿里云个人中心,做一下实名认证。点击:实名认证入口

我一般推荐用户选择企业实名,因为现在很多业务都是跟企业相关的,而且个人实名的阿里云也不会开企业发票啊。

image.gif 编辑

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

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

1.1设置服务器防火墙

开放以下端口

Redis : 6379端口

Mysql : 3306端口

HTTP : 80端口

HTTPS : 443端口

SSH : 22端口

image.gif 编辑

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

Tomcat 8 :Tomcat 8 Software Downloads

Mysql :MySQL :: Download MySQL Yum Repository

Redis:Downloads - Redis

上传至云服务器然后解压

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

image.gif

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)

image.gif

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)
 
立即生效

image.gif

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

image.gif 编辑

image.gif 编辑

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

[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)

image.gif

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>

image.gif

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命令即可启动

image.gif

2.项目的发布

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

2.1项目打包

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

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

image.gif

修改包类型,打成war包

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

image.gif

修改启动类,继承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);
    }
}

image.gif

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

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

image.gif

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

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

image.gif 编辑

2.2项目发布

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

image.gif 编辑

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

image.gif 编辑

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

image.gif 编辑

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

3.注意事项

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

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

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
2天前
|
存储 弹性计算 监控
利用阿里云云产品进行项目成本节约的实践
本文分享了利用阿里云降低成本的实践经验,主要通过选择合适的计费模式(如按量付费、包年包月和抢占式实例)、优化资源配置(弹性伸缩、资源监控与调整、适配存储方案)、利用优惠和成本管理工具(预留实例券、成本预警、优惠活动)以及案例分析,实现云计算成本的有效控制。通过这些策略,企业在保证灵活性和扩展性的同时,能更好地管理云服务成本,提高项目经济效益。
66 1
|
3天前
|
弹性计算 关系型数据库 MySQL
【阿里云弹性计算】从零搭建:基于阿里云ECS的高性能Web服务部署实践
【5月更文挑战第21天】本文介绍了如何使用阿里云ECS搭建高性能Web服务。首先,注册阿里云账号购买ECS实例,选择合适配置。接着,通过SSH连接实例,更新系统并安装Apache、PHP和MySQL。创建网站目录,上传代码,配置数据库和PHP。然后,启用Gzip压缩和KeepAlive,调整Apache并发连接数以优化性能。此教程为在阿里云上构建高效Web服务提供了基础指南。
88 5
|
3天前
|
运维 监控 JavaScript
【阿里云云原生专栏】Serverless架构下的应用部署与运维:阿里云Function Compute深度探索
【5月更文挑战第21天】阿里云Function Compute是事件驱动的无服务器计算服务,让用户无需关注基础设施,专注业务逻辑。本文详述了在FC上部署应用的步骤,包括创建函数、编写代码和部署,并介绍了运维功能:监控告警、日志管理、版本管理和授权管理,提供高效低成本的计算服务。
129 6
|
5天前
|
监控 物联网 测试技术
【好用的个人工具】使用Docker部署Dashdot服务器仪表盘
【5月更文挑战第15天】使用Docker部署Dashdot服务器仪表盘
39 12
|
6天前
|
域名解析 网络协议 CDN
网站接入阿里云CDN实现域名加速全流程
阿小云网站已通过ICP备案在广州节点上线,但为提升全国用户访问速度,计划接入CDN。以下是4步CDN接入教程:1) 开通阿里云CDN服务;2) 添加加速域名;3) 使用DNS解析验证域名归属权;4) 配置CNAME实现域名与CDN节点关联。详细指南见阿里云CDN官方文档。
|
7天前
|
SQL 分布式计算 关系型数据库
实时计算 Flink版产品使用合集之MySQL CDC Connector是否需要在Flink服务器上单独部署
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
15 0
|
7天前
|
数据处理 云计算
阿里云中小企业专享上云权益与上云抵扣金申请流程参考
阿里云针对企业用户推出上云权益和上云抵扣金福利。中小企业如未在阿里云活动页找到适合的产品或解决方案,可通过专门通道申请上云权益,阿里云将派专人提供解决方案和优惠。此外,阿里云为初创企业推出了创业者计划,成功加入该计划后,阿里云为初创企业提供最低3500元、最高100万元的上云抵扣金,助其零成本享受云资源和技术服务。这些措施简化申请流程,为中小企业提供实质性经济支持,让其更轻松享受云技术的便利。
阿里云中小企业专享上云权益与上云抵扣金申请流程参考
|
9天前
|
监控 安全 Cloud Native
【云原生之Docker实战】使用Docker部署Ward服务器监控工具
【5月更文挑战第11天】使用Docker部署Ward服务器监控工具
30 4
|
9天前
|
弹性计算 运维 监控
解密阿里云弹性计算:探索云服务器ECS的核心功能
阿里云ECS是核心计算服务,提供弹性云服务器资源,支持实例按需配置、集群管理和监控,集成安全防护,确保服务稳定、安全,助力高效业务运营。
262 0
|
9天前
|
存储 弹性计算 固态存储
阿里云服务器CPU内存配置详细指南,如何选择合适云服务器配置?
阿里云服务器配置选择涉及CPU、内存、公网带宽和磁盘。个人开发者或中小企业推荐使用轻量应用服务器或ECS经济型e实例,如2核2G3M配置,适合低流量网站。企业用户则应选择企业级独享型ECS,如通用算力型u1、计算型c7或通用型g7,至少2核4G配置,公网带宽建议5M,系统盘可选SSD或ESSD云盘。选择时考虑实际应用需求和性能稳定性。
319 6

热门文章

最新文章