Web项目上线之Linux指令篇(二)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Web项目上线之Linux指令篇

五、MySQL8.0的安装

1、下载MySQL80rpm数据源

wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

ebabe74c0cde372d6a96a92899ae88c8_7b1ed6c198b449bb8edcc66250df48d7.png

2、安装下载好的mysql rpm包

rpm -ivh mysql80-community-release-el7-1.noarch.rpm

32bb423493fcb65cf418139c62794641_3cc44482a4194e39b530cfa074512175.png

3、安装MySQL服务器

yum install mysql-server

0e7b76f8d8c73241d483bd9f672018cf_61495645850d4d69a02ee2e4b7ecb3d8.png

安装MySQL服务器成功

4、查看MySQL的版本信息 (和DOS命令一样)

mysql -V

b6c0cd6332ef851ffa71c3e66c6761e2_8c230187b15a460e8c62e7ee558c5a1b.png

5、首先启动MySQL

systemctl start  mysqld.service



6、查看MySQL的运行状态

7、登录MySQL数据库,centos8的默认密码为空

mysql -uroot -p

e2e22a1f05d138ca49c2919b77e36933_b8be7ba9cfb34c9992f3a3a4141858b8.png

8、创建一个数据库,名为MYBOOK(注意:创建数据库使用大写,不然会报错),里面有一张表gzh_books

9、进行数据库查询

10、退出数据库

11、连接Navicat

(1)首先需要在防火墙里放行MySQL数据库的3306端口

#查看防火墙的端口信息
firewall-cmd --list-ports
#放行3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

(2)然后再重启防火墙

systemctl restart firewalld.service

(3)显示连接成功

六、Docker容器的安装

1、首先检查我们centos的版本信息(Docker 要求 CentOS 系统的内核版本高于 3.10)

cat /etc/redhat-release

95d83bdd1a487f35b678c4efa28320c4_ea5defd3c3f14878a0fc6a7d0e88bed4.png

2、清除以前的Docker版本

yum remove docker \
           docker-client \
           docker-client-latest \
           docker-common \
           docker-latest \
           docker-latest-logrotate \
           docker-logrotate \
           docker-engine

3、安装docker所需要的软件包(加上-y后续安装过程中不需要手动点击yes了)

yum install -y yum-utils

4、安装国内阿里云镜像库,可提高后续下载速度

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5、更新yum软件包索引(centos8后面不带参数,其它版本需要加上“fast”)

yum makecache

6、安装Docker CE


CE( Community Edition)是社区版,简单理解是免费使用,提供小企业与小的IT团队使用,希望从Docker开始,并尝试基于容器的应用程序部署。


EE(Docker Enterprise Edition)是企业版,收费。提供功能更强。适合大企业与打的IT团队。为企业开发和IT团队设计,他们在生产中构建、交付和运行业务关键应用程序。

yum -y install docker-ce docker-ce-cli containerd.io

安装的过程中出现下列错误,是由于部分系统安装的包的版本过低,导致那些包安装失败,所以我们要手动更新或者删除低版本的包。

解决方案1:按照提示在安装命令后增加 '--nobest --skip-broken' 来跳过无法安装的软件包

sudo yum install docker-ce docker-ce-cli containerd.io --nobest --skip-broken

解决方案2:如果上述方法未解决,我们就需要手动更新低版本的包了

#升级containerd.io软件包 
wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
yum -y install containerd.io-1.2.6-3.3.el7.x86_64.rpm 

7、启动docker容器

 # start:表示启动、stop:表示停止,status:可查看容器开启情况,restart:重启容器
 systemctl start docker

8、设置docker开机自启

systemctl enable docker

9、查看docker版本信息验证安装

docker version

0c855e7d11c113e6a1da8ceaba630111_af2b9fcce792402e99453a3597d6b4cd.png

10、进行测试

docker run hello-world
docker images

9707c83d0f6a538f130bb29eb6986f04_5104cfeb7de54ef0a972e3bcda5ec7d3.png

七、上线Web项目

1、首先在项目中修改application.yml的配置,将数据库连接地址改成云服务器公网IP或者本地服务器的IP地址,然后再将本地的数据库连接名和密码进行修改。

2、点击右侧Maven->Lifecycle->clean->package

37b7d929d5a02c3d059d0ebd97af3f4b_49c4298f3be34d9a817ac1634c1a7864.png

打包失败,并报错: Error occurred in starting fork, check output in log


解决方案:在pom中添加以下插件可以解决这个问题

<build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>3.1.0</version>
      </plugin>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

3、打包成功后,在IDEA的target目录下就能找到相应的jar包或者war包了

4、在Dos窗口下使用cmd命令在本地启动一下,如没有问题,再将其通过Xftp上传至云服务器

(1)首先进入项目jar包的目录下

(2) 使用下列命令本地运行项目jar包

java -jar spring-boot-echarts-0.0.1-SNAPSHOT.jar

99e5ab6bc0e99531386dc3ff191809b1_a6d2e2cd37ad4919b1b911487fe4999b.png

(3)本地测试成功

ec49012ba6cb1b3da1fba0e86fd80ef1_87fb6abe6e3746a59d68833ac5419dcb.png

注意:使用jar打包时使用的是项目内嵌的Tomcat,不使用服务器上的Tomcat,在服务器上执行 java -java 指定jar 即可启动项目。使用war打包时,必须要将其放置在\webapps\目录下,然后启动Tomcat,这个包就会自动解压,就相当于发布了。  

5、使用Xftp工具将打包好的jar包项目发送到自己创建的myweb目录下面(Xftp可到博主资源里下载)

6、启动jar包项目


7、查看结果,直接公网ip+端口号即可

8、打包并上传war包项目

(1)改变打包的方式

(2)使用Xftp工具将打包好的war包项目发送到/www/server/tomcat/webapps目录下面

war包放于webapps目录下会自动解压缩

9、进入Tomcat/bin目录下启动Tomcat

./startup.sh

a1c94935b54228c7a5b4b3d980bd0aad_87c4dd2425ef4d5997be5d5bc81571d2.png

10、查看结果






相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
26天前
|
缓存 JSON 监控
如何在项目中保证 Web 组件化的性能
保证 Web 组件化的性能需要从多个方面入手,综合运用各种优化方法和策略。通过持续的优化和改进,能够提高组件化的整体性能,为用户提供更好的体验,同时也有助于提高项目的开发效率和质量。
37 8
|
26天前
|
存储 前端开发 JavaScript
如何在项目中高效地进行 Web 组件化开发
高效地进行 Web 组件化开发需要从多个方面入手,通过明确目标、合理规划、规范开发、加强测试等一系列措施,实现组件的高效管理和利用,从而提高项目的整体开发效率和质量,为用户提供更好的体验。
28 7
|
1月前
|
Linux
linux-du指令
`du`命令是Linux系统中查看磁盘使用情况的基本工具之一。通过灵活使用 `du`命令的各种选项,可以准确、高效地获取文件和目录的大小信息,有助于系统管理员进行磁盘空间管理。无论是查找大文件、分析目录结构还是排除特定类型的文件,`du`命令都提供了丰富的功能和灵活的配置。理解和掌握 `du`命令的使用,对于维护和优化Linux系统的磁盘空间至关重要。
29 4
|
1月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
29 4
|
1月前
|
中间件 Go API
Go语言中几种流行的Web框架,如Beego、Gin和Echo,分析了它们的特点、性能及适用场景,并讨论了如何根据项目需求、性能要求、团队经验和社区支持等因素选择最合适的框架
本文概述了Go语言中几种流行的Web框架,如Beego、Gin和Echo,分析了它们的特点、性能及适用场景,并讨论了如何根据项目需求、性能要求、团队经验和社区支持等因素选择最合适的框架。
78 1
|
1月前
|
JavaScript 前端开发 开发工具
web项目规范配置(husky、eslint、lint-staged、commit)
通过上述配置,可以确保在Web项目开发过程中自动进行代码质量检查和规范化提交。Husky、ESLint、lint-staged和Commitlint共同作用,使得每次提交代码之前都会自动检查代码风格和语法问题,防止不符合规范的代码进入代码库。这不仅提高了代码质量,还保证了团队协作中的一致性。希望这些配置指南能帮助你建立高效的开发流程。
46 5
|
26天前
|
安全 Ubuntu Unix
【Linux】基础指令
本文介绍了Linux操作系统的基本概念及特点,强调了其开源性、多用户多任务处理能力、稳定性和安全性。文章重点讲解了多个Linux基础命令,如ls、cd、touch、mkdir、rm、man、cp、mv、cat、less、find、grep、tar等,旨在帮助初学者快速掌握Linux命令行操作,为后续深入学习奠定基础。
52 0
|
1月前
|
JavaScript 前端开发 数据安全/隐私保护
Web开发者必看:手把手教你如何轻松播放m3u8流地址,解锁视频播放新技能,让你的项目更上一层楼!
【10月更文挑战第23天】随着互联网技术的发展,m3u8格式因良好的兼容性和高压缩率被广泛用于网络流媒体传输。本文介绍如何在Web端播放m3u8流地址,包括引入视频播放器(如Video.js)、创建播放器容器、初始化播放器及播放m3u8流的具体步骤。此外,还涉及处理加密m3u8流的示例。
273 1
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
426 3
|
2月前
|
JSON 搜索推荐 API
Python的web框架有哪些?小项目比较推荐哪个?
【10月更文挑战第15天】Python的web框架有哪些?小项目比较推荐哪个?
78 1