连接云服务器,实现项目部署在云服务器上——以阿里云为例子

1,253 阅读6分钟

一、远程登陆云服务器

  1. 使用阿里云网页端登录

  • 登录进去阿里云网页端,找到控制台。

  • 然后点击实例,在点击远程连接

  • 在选择连接方式(注意:自己的设置的账号和密码,以及远程连接的密码)

2. 使用ssh工具在本机登录,简单来说就是使用自己的电脑连接到别的电脑,然后操控别人的电脑。

  • 在自己的电脑里面安装OpenSSH软件或者putty软件,从而使用ssh工具进行远程连接云服务器

下面提供windows安装OpenSSH工具的方法:

A. 将OpenSSH工具的解压包解压到C:\Program Files\OpenSSH不要放在别的路径下,官方这样要求的。

B. 管理员身份cmd到openSSH路径下:

     a. 安装sshd服务 powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1。

     b. 开放22号端口(如果你在windows关闭了防火墙并配置了入站规则可以不执行如下命令,多执行不影响) netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22    。

     c. 配置开机自启sshd服务 sc config sshd start= auto。

     d. 配置环境变量 将C:\Program Files\OpenSSH添加到path中。

     e. 启动ssh服务 net start sshd 。

     f. 使用ssh命令测试看是否能用 ssh。

  • 电脑里使用win + R 打开输入框,输入cmd打开命令提示符,输入如下命令来连接云服务器。

    ssh root@XXX.XXX.XXX.XXX(XXX里面填写的是自己云服务器的公网IP)

注意:

如果使用ssh连接报错,错误信息如下,需要在本机执行vi ~/.ssh/known_hosts,删除对应ip的公钥。保存之后再连接。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:ejIDrxMGqMHp9URzh1xKCzhBvJ8XXa2v00X3J06WKPY. Please contact your system administrator. Add correct host key in /Users/mac/.ssh/known_hosts to get rid of this message. Offending ECDSA key in /Users/mac/.ssh/known_hosts:2 ECDSA host key for 106.52.23.167 has changed and you have requested strict checking. Host key verification failed.

或者在自己电脑硬盘里面找到.ssh目录下的known_hosts文件,删掉里面的内容再保存推出。路径一般在c:用户/用户名(如:admin)/.ssh/known_hosts。

3. 安装Cyberduck软件工具(可以是中文版),它容许同时打开多个窗口,也可以同时连接多个服务器工作,在这里简单来说就是将linux系统可视化。

    安装教程:双击安装包,一直点击“下一步”到完成即可完成。

    安装navicat数据库软件工具,安装教程也是比较简单,双击安装包后,选择安装路径之后就可以一直点击“next”。

二、在云服务器上安装一些开发软件和工具

1. 安装apache2

  • 在cmd里面连接到云服务器后,在linux里面使用如下命令:

    sudo apt-get install apache2

  • 默认安装完成后是启动的,如果要手动启动使用:

    sudo /etc/init.d/apache2 start

  • 测试:

    ps -ef | grep httpd

  • 安装成功 重启服务器:

    sudo /etc/init.d/apache2 restart

  • 阿里云默认不开放apache的端口,如果要在本机访问云服务器上的apache,需要在【网络与安全-安全组】里添加入方向的8000/9999端口和80端口的规则

设置开放apache的端口:

      A. 在阿里云网页里面的控制台里面,找到网络与安全。

       B. 然后点击安全组里面自己机子的名字。

        C. 添加端口

2. 安装MYSQL-SERVER

  • 继续在云服务器里面,输入如下命令:

    sudo apt-get install mysql-server

  • 输入数据库的root

  • 用户密码: root

  • 再次输入数据库的root

  • 用户密码: root

  • 验证是否成功 mysql -uroot -proot登录

  • 使用exit;退出当前mysql环境

卸载mysql 按顺序执行以下命令

sudo apt-get autoremove --purge mysql-server-5.0 

sudo apt-get remove mysql-server

sudo apt-get autoremove mysql-server

sudo apt-get remove mysql-common 

清理残留数据:

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

3. 安装NodeJS环境

  • 在云服务器里面,Linux里面安装nodejs:

    sudo apt-get install nodejs

  • 建立软连接:

    sudo ln -s /usr/bin/nodejs /usr/bin/node

  • 测试是否安装成功:node -v 回车查看版本号

  • 使用.exit退出node环境

4. 安装npm

  • 在云服务器里,Linux里面使用如下命令:

    sudo apt-get install npm

  • 测试npm是否安装成功 npm -v 回车查看版本号

5. 在线安装jdk

  • 安装jre    java命令

    sudo apt install openjdk-8-jre-headless

  • 安装jdk    javac命令

    sudo apt install openjdk-8-jdk-headless

  • 默认在线安装的时候,环境变量已经设置好了,可以直接使用java和javac命令了。

  • 安装完成后jdk的家目录是 /usr/lib/jvm/java-8-openjdk-amd64

三、使用navicat远程连接root用户

  • 在xshell环境中,进入到mysql,然后修改其他主机可以使用root用户远程登录。

  • 首先需要设置云服务的root用户的可连接的主机

             登录mysql环境,use mysql; 使用mysql数据库。

             查看mysql数据库中的user表中的host和user字段 。

 select host,user from user; 

 update user set Host='%' where User='root';

update user set Host='%' where User='briup'; 
  • 修改bind_address

    vim /etc/mysql/mysql.conf.d/mysqld.cnf

         修改43行的bind_address=127.0.0.1为bind_address=0.0.0.0

  • 重启mysql服务:   service mysql restart

  • 开放3306端口:     阿里云控制台,防火墙,开放3306端口。

  • 在本机使用navicat连接云服务的mysql,创建数据库recruit,创建用户名briup和密码briup,给briup授权 ,执行准备好的sql文件(运行准备好的SQL)。

      a. 创建用户名:

         b. 给新键用户授权

解决navicat连接不上云服务问题:

  • 解决1698问题

       修改密码:

update mysql.user set authentication_string=PASSWORD('root'), plugin='mysql_native_password' where user='root';
				flush privileges; 

        刷新操作

  • 解决2003问题

      a. 登录MYSQL环境,使用MySQL数据库

use mysql;

 update user set Host='%' where User='root';

      b. 修改bind_address,在Linux环境下使用命令:

vim /etc/mysql/mysql.conf.d/mysqld.cnf

           修改43行的bind_address=127.0.0.1为bind_address=0.0.0.0

操作:ESC保存返回;编辑:i;复制粘贴:yy + p;加上行号:英文冒号:+ 键盘敲打set nu;保存退出:键盘输入:wq;...

           注意在云服务器安全组入方向开放3306端口
c. 重启mysql服务

service mysql restart 
  • 解决2005问题

        ip地址错误

四、运行jar

  • 上传jar包到云服务上
在Cyberduck软件工具里面连接自己云服务器,进行操作:![](https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9d6d22b507eb4804becc2f85cb954f4a~tplv-k3u1fbpfcp-zoom-1.image)
  • 在cmd里面,linux里面使用 java -jar XXXX.jar    运行java打包代码

  • 端口号是8899,注意在阿里云的防火墙里开放8899端口

  • 在浏览器中可以使用以下地址访问swagger

  • 云服务器公网ip地址:   后台项目端口号/swagger-ui.html

比如 47.104.91.xxx:8899/swagger-ui.html 能访问成功并且能获取接口的数据就是成功的

五、完成部署,运行项目

使用Cyberduck软件工具在云服务器,部署项目

  • 上传jar包,放到/jar下

  • 上传项目如:zhaopin,部署到/var/www/html

在cmd中,linux环境里面使用命令运行:

  • 启动jar包,java -jar /jar/xxx.jar,启动jar包后,可以在浏览器访问ip:8899/swagger-ui.html访问后台swagger

  • 在浏览器访问ip:80/zhaopin可以查看招聘项目