部署项目到云服务器

这篇具有很好参考价值的文章主要介绍了部署项目到云服务器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本篇文章将讲述如果从0-1部署自己的项目部署到云服务器上

ps1:这里不是将本地的项目与云服务器连接,而是将项目放到云服务器上。文件内容较多,也许过程遇到的问题也多,请耐心克服。【多思考,多搜索,多理解】 我在过程中遇到的问题:(如果和你遇到的问题相同可以大致看看)

ps2:需要一定的Linux语句基础(例如:基础的cd ls vi 等等)

一、购买阿里云或腾讯云等

ps:可以跟着下面的去购买,也可以查询别的方式找优惠等购买

这里用阿里云举列子->阿里云主页:http://aliyun.com/

1.先注册一个阿里云账号登录(这里不做讲述)

2.登录后购买服务器

        ①点击控制台:

部署项目到云服务器

         ②点击云服务器ECS:

       部署项目到云服务器

         ③点击创建我的ECS部署项目到云服务器

        ④包年包月方式 地域默认或随便选即可

部署项目到云服务器

         ⑤根据自己需求选择对应的实例规格即可(因为我们只是学习如果部署项目,不需要买多高级的,选择1vCPU 0.5GB 的即可) 

部署项目到云服务器

         ⑥镜像选择 CentOS 位随便选即可。部署项目到云服务器

         ⑦这里使用默认的40即可 后续有需要再加

部署项目到云服务器

         ⑧快照不管,实例数量一台 ,然后时间选择1周(我们只是学习,不需要买多久,有需要到时候再续费) ,然后点击下一步。

部署项目到云服务器

        ⑨网络安全组这一步不需要改变什么,注意一下这里,必须是默认安全组(当然本来就是默认的)直接点下一步即可

部署项目到云服务器

         ⑩选择自定义密码,输入自己的登录密码即可 (记住这里的登录名root和自己的密码)其余的实例名称可填可不填。下一步即可部署项目到云服务器

        ⑩+①:分组设置不管,下一步即可

        ⑩+②:没啥问题就确认订单。 

部署项目到云服务器

最后一步:点击云服务器ECS然后点击实例查看即可。

        购买云服务器完成

部署项目到云服务器

二、安装SecurityCRT 连接linux的工具。

        SecurityCRT是一款支持ssh(ssh1,ssh2)的终端仿真程序,即windows下可以登陆unix或者linux的一款软件。链接:https://pan.baidu.com/s/13FsgbXNuLuZ_BqWZz--VQw 
提取码:oiat   ||||||ps:如果不行就使用别的连接linux的工具或者找别的方式下载SecurityCRT

1.启动:找到SecureCRT.exe 

部署项目到云服务器

2.连接:

        Protocol :使用默认的SSH2

        Hostname: 使用查看阿里云实例中的IP,根据自己的服务器进行输入。

        Port: 使用默认的22. 这个端口在购买ECS服务器-网络里的安全组里已经开放了的。

        Username: 使用root

部署项目到云服务器

 3.点击Connect会弹出一个询问是否保存主机的信息,点击中间那个Accept&Save

部署项目到云服务器

 4.输入 root 和购买实例时的密码。

部署项目到云服务器

 5.连接成功!

部署项目到云服务器

三、安装FTP文件传输工具

        安装FTP文件传输工具:链接:https://pan.baidu.com/s/18u_jbtTukHfUqr5cPmK-RQ 
提取码:cj26

1.先通过SecurityCRT工具连接云linux

2.然后输入安装命令:

yum install vsftpd –y

        如果过程中出现y/d/n  按 y 后回车即可

当显示complete!表示安装成功。

部署项目到云服务器

3.查看服务器启动状态的方式:(只需执行启动和查看状态,别的可以不管)

启动:systemctl start vsftpd.service   执行此句即可

查看状态:systemctl status vsftpd.service 执行此句即可

部署项目到云服务器

一些关闭和启动重启的方法:

        关闭ftp服务:systemctl stop vsftpd.service

        启动fpt服务:systemctl start vsftpd.service

        重启ftp服务:systemctl status vsftpd.service

        检查端口号:netstat -anp|grep 21

部署项目到云服务器

      Tcp6 0 0 :::21 这行是这样就行。

4.配置ftp用户:

        4.1创建一个传输目录:

mkdir -p /home/wwwroot/ftptest

        4.2创建用户并分为ftp组:

useradd -d /home/wwwroot/ftptest -g ftp -s /sbin/nologin ftptest

解释:-g ftp 表示该用户属于ftp分组 (ftp分组是内置的,本来就存在,不需要自己创建)-s /sbin/nologin 表示这个用户不能用来登录secureCRT这样的客户端。 这种不能登陆的用户又叫做虚拟用户。创建过程给出的警告信息是正常的。

        4.3设置用户目录权限:把目录/home/wwwroot/ftptest的拥有者设置为ftptest
使ftptest用户拥有这个目录的读写权限。

chown -R ftptest /home/wwwroot/ftptest

chmod -R 775 /home/wwwroot/ftptest

        4.4为ftptest用户设置密码:用于在ftp软件连接:

passwd ftptest

        然后输入想要的密码即可(需要记住,后续通过FTP连接linux传输文件)

        4.5去掉匿名登录:默认情况下vsftpd服务器是允许匿名登陆的,这样非常不安全,所以要把这个选项关闭掉。

首先通过vi命令打开ftp服务器配置文件:(关于vi文本的三大模式,如何输入退出保存,请去自行搜索linux相应知识)

vi /etc/vsftpd/vsftpd.conf

然后把本来的 (ps:如何在vi文本快速里查找字符或查找目的行请自行搜索相应llinux知识)

anonymous_enable=YES

修改为anonymous_enable=NO

部署项目到云服务器

        4.6为ftp添加用户清单:

vi /etc/vsftpd/chroot_list

然后再里面加一行:ftptest

部署项目到云服务器

允许写权限:

vi /etc/vsftpd/vsftpd.conf

在最后面加一行:allow_writeable_chroot=YES

部署项目到云服务器

5.配置端口

        5.1 vsftpd有两种端口,一个是21端口,用来监听客户端连接请求的。 这个一般说来是固定的,就一直使用21端口。另一种是,一旦获取到请求之后,再专门用户服务端和客户端传输数据的端口。
        本知识点就是用于指定第二种端口的获取范围:

        5.2打开配置文件:

vi /etc/vsftpd/vsftpd.conf

在最后添加:

pasv_enable=YES

pasv_min_port=30000

pasv_max_port=30010

部署项目到云服务器


这表示使用被动模式,用于传输数据的端口分配从30000-30010之间。
在后续的Linux开放端口教程中也会做相应的配合工作。

6.用户鉴权

        6.1因为用户 ftptest nologin的,所以存在鉴权的问题。 如果鉴权问题不解决,就是永不停息的 530错误。

vi /etc/pam.d/vsftpd

注释掉/etc/pam.d/vsftpd文件里这一行:
#auth required pam_shells.so
这样不去鉴权,从而允许 ftptest 这种 虚拟用户登录 ftp 服务器.

部署项目到云服务器

然后必须重启vsftpd服务器!

重启vsftpd服务器:

        通常重启使用的命令是

service vsftpd restart

但是centos7之后,改用的命令是如下方式:

systemctl restart vsftpd.service

最后执行查看状态,以查看重启成功了

systemctl status vsftpd.service

部署项目到云服务器

7.开放端口

7.1到阿里云服务器ESC实例安全组开通端口即可

更多—网络和安全组—安全组配置  可以把常用的22 21 3306 8080 80 30000-30010 都开通了

部署项目到云服务器

 (ps:由于本人的云服务器过期了,进行安全组配置请自行搜索,可以把22 21 3306 8080 80 30000-30010 都开通了)

8.打开FTP软件进行传递需要的文件等进入linux

部署项目到云服务器

 打开后选择左上角站点—快速连接对话框

部署项目到云服务器

 快速连接对话框:输入主机地址即阿里云购买的实例的ip地址,端口选择21。然后输入刚刚配置fpt时所创造的用户名和密码。确定即可部署项目到云服务器

 连接成功!部署项目到云服务器

 9.然后进入与云linux连接的securityCRT里查看,此时此处为空

ls /home/wwwroot/ftptest/

四.传递jdk/tomcat/web项目安装包或材料进linux云服务器

1通过ftp软件连接后传输即可:传输项目war包,jdk,数据库文件,tomcat安装包传输jdk tomcat web项目war包。tomcat和jdk链接:https://pan.baidu.com/s/1JJNp5NeS3-toyW9BNGPh4w 
提取码:7o5q(ps:数据库文件 项目war包需要使用自己的哦~ 如何获取项目的war包和数据库文件请自行搜索)

2此为cd /home/wwwroot/ftptest/  进入FTP传输目录。

3解压jdk :tar –zxvf 包名

4创建jdk存放目录:mkdir /usr/local/java

5移动jdk到该目录:mv jdk-18.0.2 /usr/local/java/

4打开环境配置文件:vim /etc/profile

在最后输入:

export JAVA_HOME=/usr/local/java/jdk-18.0.2
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

然后关闭文件

重新启动该文件:source /etc/profile 必须执行

查看jdk是否安装成功:java -version  如果出现版本等信息就表示安装成功

部署项目到云服务器

 五.在linux中安装Mysql

1.先进入tmp:cd /tmp  (ps:如果没有tmp目录,需要创建)

cd /tmp

2.直接输入以下代码:然后等待即可

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm

部署项目到云服务器

3接着就可以通过yum安装了:最后显示complete!即可  过程中有y/n 按y 回车即可

yum install mysql mysql-server mysql-devel –y

部署项目到云服务器

 4.然后需要启动mysql服务

                启动mysql服务器:systemctl start mysql.service

                关闭mysql服务器:systemctl stop mysql.service

                重启mysql:systemctl restart mysqld.servic

5.验证:安装后会自动启动,启动后会占用3306端口。 使用如下命令查看3306端口是否启动,如果启动了则表示mysql处于运行状态。

netstat -anp|grep 3306

部署项目到云服务器

通过Yum安装的mysql的管理员账户是没有密码的,这里通过命令设置其密码为 root

mysqladmin -u root password root

 Warning信息并非提示设置失败,而是提示密码出来了,小心后面有人。

登录:mysql -u root -proot   或者mysql -u root -p  然后输入密码

部署项目到云服务器

Linux Mysql 大小写敏感

所以修改配置文件:

vi /etc/my.cnf

如图所示在[mysqld]后添加添加lower_case_table_names=1

部署项目到云服务器

 然后保存文件

重启mysql

systemctl restart mysqld.service

六.Mysql远程配置

即可通过windows下的workbech软件 来进行远程连接。 输入ip 账号 密码即可。

1.进入与云Linux连接的SecureCRT下进入myesql:

mysql -u root -proot

输入以下代码:

use mysql;
select host,user from user;
update user set host='%' where user='root';
flush privileges; 刷新命令

(ps:)如果出现Duplicate entry '%-root' for key 'PRIMARY'错误

部署项目到云服务器

部署项目到云服务器

如果有% 就说明对了,没问题。

设置完远程配置后,即在window 可以通过workbechip 账号 密码 链接数据库 。

(ps:放入linux的代码的数据库连接如果127.0.0.1不行就换云服务器的ip地址)

2.配置防火墙 (ps:我们需要开放80或8080端口)

查看firewall服务状态

systemctl status firewalld

查看firewall的状态

firewall-cmd --state

开启、重启、关闭、firewalld.service服务

# 开启
service firewalld start
# 重启
service firewalld restart
#
关闭
service firewalld stop

查看防火墙规则

firewall-cmd --list-all

查询、开放、关闭端口

# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp

# 开放8080端口
firewall-cmd --permanent --add-port=8080/tcp

# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload

注意:这里开启了防火墙,所以记得将3306mysql端口 21ftp文件传输端口 30000-30010开启 80 8080端口都开启
# 参数解释
1firwall-cmd:是Linux提供的操作firewall的一个工具;
2--permanent:表示设置为持久;
3--add-port:标识添加的端口;

七.安装tomcat

进入传输的目录

然后先解压:tar  -zxvf 包名

然后移动到 /usr/local/tomcat7:

mv apache-tomcat-7.0.92 /usr/local/tomcat7

  (ps:按理说没有目录会自动创建的,如果没有就自己创建吧)

启动tomcat: /usr/local/tomcat7/bin/startup.sh

部署项目到云服务器关闭tomcat: /usr/local/tomcat7/bin/shutdown.sh

部署项目到云服务器查看该端口是否开放并占用:netstat -anp|grep 8080

八.进行项目部署

1.通过FTP传入的数据库sql文件且将其导入linux的mysql(ps:如果这一步始终不行,请自行搜索解决自己的问题)或者在windows下的mysql去创建(之前对mysql进行了远程连接配置)

mysql -u root -p密码 --default-character-set=utf8 数据库名 < /home/wwwroot/ftptest/sql文件名

提示并非导入失败,而是警告密码。

--default-character-set=utf8  表示以utf8导入 后面为导入的数据库  < 表示重定向 然后是sql文件目录。

ps:(如果导入编码格式不同可能会报错)

无论是从workbech还是从Linux用命令导入,数据的sql文件里的所有创建表的最后一行写上

ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; 或者对每一个编码格式手动去修改。

将默认字符集改成utf-8  如果有collaction 则改为utf-8_bin

创建数据库这样创建:

部署项目到云服务器

        2.通过FTP传输自己的web的war包到linux下。

web项目war包在tomcat关闭状态下放入webapps目录下。然后启动tomcat会自动解压war

(ps:或者修改server.xml文件.。该文件在:/usr/local/tomcat7/conf/,此方法是修改server.xml配置文件,具体的知识请自行搜索tomcat部署独立项目的方式。

提示:原本的项目里连接数据库的语句的账号密码数据库名要改为linux下的哦~

即可通过http://ip地址:端口号/项目名访问项目。(ps:打开时间可能3分钟或更长,需等待),后续任何修改,都只需关闭 打开等待即可。//实在不需就关闭 打开 关闭 打开……。项目名即为解压到tomcat的webapps目录下的文件名,如果是server.xml修改的方式则项目名为自己设置的。

成功:(因为买的机器性能非常低,图片等加载会有点慢)

部署项目到云服务器


总结

1.如果你看到这里了,也许你成功了,恭喜你;如果你失败了,在过程中遇到了许多问题,请多搜索遇到的问题,本篇文章内容虽然多,但也不一定就是最详细的。且有些内容或许表达不好,展示不够,如果您有意见在评论提出吧!

2.如果您根据本文章花费了许多时间结果还是没成功,在这里我向您表示歉意。学习本来就是困难的,咱们都需要经历许多困难,许多bug。如果您愿意,可以结合这篇文件的步骤思路,多搜索遇到的问题,多篇结合来达到您的目的~文章来源地址https://www.toymoban.com/news/detail-444911.html

到了这里,关于部署项目到云服务器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PHP项目部署到云服务器(CentOS+HTTP+PHP+MYSQL)

    如何将写好的项目部署到云服务器,让外界可以通过互联网访问项目网站。以下使用的是腾讯云服务器操作,系统环境为CentOS7.9。 打开腾讯云官网,注册好自己的平台账号。如果是新人的话去新人专区购买服务器,性价比高。 这里可以选的服务器有轻量云服务器、云服务器

    2024年02月05日
    浏览(52)
  • 手动将Java SpringBoot项目部署到云服务器上(使用docker)

    本文记录一下我作为一个小白如何通过docker手动将java springboot项目部署到云服务器上(以腾讯云的轻量应用服务器为例)。 但是我个人还是推荐安装一个宝塔面板部署 ,真的全程自动化,非常方便,网上有很多相关的教程可以搜搜看。所以我写这个教程其实只想记录一下我

    2024年04月25日
    浏览(43)
  • idea集成Docker + Docker部署SpringBoot项目到云服务器 保姆级教程

    本人使用资源: 云服务器主机:腾讯云宝塔linux 操作系统:OpenCloudOS 8.6 本文分别讲解了: 1、idea如何集成并使用docker 2、springboot项目如何引入Docker管理 3、如何将一个springboot项目使用Docker打包为一个镜像 不仅讲解了方法,还列出了在整个过程中会遇到的一些问题和注意事项

    2024年02月06日
    浏览(49)
  • 用Nginx将前端Vue项目部署到云服务器(含代理实现请求跨域)

    记录使用Nginx将 纯前端 的Vue3项目部署到阿里云服务器(Ubuntu 22.04)上,包含通过Nginx代理实现 跨域请求 、以及个人踩坑记录~ 执行下列命令安装: 安装完成后查看nignx版本,显示版本信息则说明安装成果 启动nginx,如正确启动,则不会出现任何提示信息。 nginx启动成功后打

    2024年04月12日
    浏览(45)
  • 使用宝塔面板部署Node.js+Mysql服务和Vue3-Admin项目到云服务器上

    准备工作 一台云服务器,可以先用免费试用一个月的服务器进行练手;我这里选择的是腾讯云的轻量云服务器; 1、在云服务器上安装宝塔面板 宝塔面板官网地址:https://www.kancloud.cn/chudong/bt2017/424209 1.1 安装Xshell脚本工具,通过这个工具来连接云服务器,进行宝塔面板的安装

    2024年01月25日
    浏览(52)
  • 苍穹外卖部署到云服务器使用Docker学习笔记

    通过部署docker学习过程中产生的经验写下本文,本文完成前端和后端代码部署,网上的教程对小白很不友好,写下本文方便自己以后自己查阅并分享给大家让大家尽量少踩坑,可以顺利学会docker并成功部署项目 注:服务器系统使用CentOS7,远程工具使用宝塔,宿主机(服务器

    2024年02月02日
    浏览(124)
  • GitHub Action 通过SSH 自动部署到云服务器上

    准备 正式开始之前,你需要掌握 GitHub Action 的基础语法: workflow (工作流程):持续集成一次运行的过程,就是一个 workflow。 name: 工作流的名称。 on: 指定次工作流的触发器。push 表示只要有人将更改推送到仓库就会触发工作流运行。(点击这里了解如何指定特定分支,路径

    2024年01月19日
    浏览(45)
  • 服务器配置到云上nginx代理

    1. 打开本地电脑的 hosts 文件。位置在:- Windows: C:WindowsSystem32driversetchosts - Mac / Linux: /etc/hosts 2. 在文件末尾添加一行,格式为: 127.0.0.1 是 localhost 的 IP 地址,gatueerdrsaams.cn 是你要映射的域名。 3. 保存 hosts 文件。 4. 打开命令行,运行  ipconfig /flushdns  命令,清除 DNS 缓存。 nginx配

    2024年02月10日
    浏览(50)
  • 使用(七牛云)为例子实现将文件上传到云服务器

    目前,用户的头像、分享生成的长图等文件都是存放在本地的,我们可以将他们存放在云服务器中,此处我们使用七牛云作为例子示范。 创建账户并申请如下的两个bucket,分别是用户头像的存储空间和分享长图的存储空间。 相应的js文件: 文件已经存入七牛云

    2024年02月10日
    浏览(45)
  • 从服务器到云原生:企业IT基础设施的演进之路

    随着数字经济的迅猛发展,企业IT数字化转型已成为推动业务创新和提升竞争力的关键。在这一转型过程中,基础设施的建设与升级显得尤为重要。企业需要不断优化和更新他们的基础设施,以适应不断变化的市场需求和技术发展。本文将探讨企业IT数字化转型在基础设施方面

    2024年04月15日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包