当前位置: 首页 > article >正文

开发者交流平台项目部署到阿里云服务器教程

本文使用PuTTY软件在本地Windows系统远程控制Linux服务器;其中,Windows系统为Windows 10专业版,Linux系统为CentOS 7.6 64位。

1.工具软件的准备

maven:https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

tomcat:https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz

elasticsearch:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.3.tar.gz

elasticsearch-analysis:https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-6.4.3.zip

kafka:https://archive.apache.org/dist/kafka/2.3.0/kafka_2.12-2.3.0.tgz

mysql80:http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

以上工具软件可直接在linux服务器上使用命令下载:

wget+以上链接

也可以在本地windows系统下载好之后通过windows命令行传文件到linux服务器:

Win+R→cmd→转到文件所在的盘符,比如D:

然后再cd到文件所在目录;

在所需要上传的文件所在目录使用命令:

pscp [文件名] linux用户名@服务器公网IP地址:在Linux系统保存的地址

比如

pscp community-init-sql-1.5.zip root@x.x.x.x:/root

2. 安装unzip

cd /

yum list unzip*

yum install -y unzip.x86_64

3.下载JDK1.8

yum list java*

yum install -y java-1.8.0-openjdk.x86_64

java -version

4.安装Maven

tar -xzvf apache-maven-3.6.1-bin.tar.gz -C /opt

cd /opt/apache-maven-3.6.1/bin

vim /etc/profile

输入i进入INSERT模式之后在

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

的后一行增加

export PATH=$PATH:/opt/apache-maven-3.6.1

(可直接按右键粘贴)之后,按【Esc】→【:wq】保存退出。

接下来启用和查看maven版本:

source /etc/profile
mvn -version

5.Maven配置阿里云镜像

cd conf

vim settings.xml

输入i进入INSERT模式之后在之间增加以下代码

<mirror>
  <id>alimaven</id>
  <mirrorOf>central</mirrorOf>
  <name>aliyun maven</name>
  <url>https://maven.aliyun.com/repository/central</url>
</mirror>

(可直接按右键粘贴)之后,按Esc】→【:wq】保存退出。

6.安装 MySQL

cd /root
yum install -y mysql80-community-release-el7-3.noarch.rpm
cd /
yum list mysql*
yum install -y mysql-community-server.x86_64

如果出现GPG Keys相关问题,执行以下命令

yum -y install mysql-community-server --nogpgcheck

接下来再启动MySQL

systemctl start mysqld

查看MySQL的状态

systemctl status mysqld

查看MySQL的密码,用于下一步修改密码前的登录操作

grep 'password' /var/log/mysqld.log

修改MySQL的密码

mysql -u root -p
alter user root@localhost identified by 'XXXXXX';

exit

注意

"XXXXXX"为密码,按需修改。

重新登录

mysql -u root -p

exit

给MySQL导入数据

cd /root
unzip -d /root/community-init-sql-1.5 community-init-sql-1.5.zip

mysql -u root -p
create database community;
use community;
source /root/community-init-sql-1.5/init_schema.sql;
source /root/community-init-sql-1.5/init_data.sql;
source /root/community-init-sql-1.5/tables_mysql_innodb.sql;
show tables;

注意

其中,”community-init-sql-1.5“按需修改。

修改header_url路径中含localhost的图片

select id,username,header_url from user;
update user set header_url = 'http://images.nowcoder.com/head/180t.png' where header_url like '%localhost%';

exit

注意:其中,”180t“按需修改。

7.安装Redis

cd /
yum list redis*
yum install -y redis.x86_64
redis: systemctl start redis
systemctl status redis

exit

8.安装Kafka

cd /root

tar -xzvf kafka_2.12-2.3.0.tgz -C /opt

cd /opt/kafka_2.12-2.3.0

bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

nohup bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &

测试是否成功启动Kafka

bin/kafka-topics.sh --list --bootstrap-server localhost:9092

9.安装ElasticSearch

cd /root
tar -xzvf elasticsearch-6.4.3.tar.gz -C /opt
unzip -d /opt/elasticsearch-6.4.3/plugins/ik elasticsearch-analysis-ik-6.4.3.zip

cd /opt/elasticsearch-6.4.3/config
vim elasticsearch.yml

输入i进入INSERT模式之后:

设置集群名字

cluster.name: nowcoder

设置路径

path.data: /tmp/elastic/data

path.logs: /tmp/elastic/logs

然后,按【Esc】→【:wq】保存退出。

修改jvm设置

vim jvm.options

输入i进入INSERT模式之后:

设置

-Xms256m
-Xmx512m

然后,按【Esc】→【:wq】保存退出。

启动Elasticsearch

groupadd nowcoder
useradd nowcoder1 -p xxxxxx -g nowcoder
cd /opt
chown -R nowcoder1:nowcoder *
cd /tmp
chown -R nowcoder1:nowcoder *
su - nowcoder1

cd /opt/elasticsearch-6.4.3/

bin/elasticsearch -d

注意:"xxxxxx"为密码,按需修改。

切换为root用户,测试是否启动成功

su -

curl -X GET "localhost:9200/_cat/health?v"

10.安装Wkhtmltopdf

cd /
yum list wkhtmltopdf*
yum install -y wkhtmltopdf.x86_64

安装虚拟gui程序,并使用命令行测试

yum list *xvfb*
yum install -y xorg-x11-server-Xvfb.x86_64

cd /root
mkdir test
cd test
xvfb-run --server-args="-screen 0, 1024x768x24" wkhtmltoimage https://www.baidu.com 1.png

使用脚本测试

cd /opt
vim wkhtmltoimage.sh

输入i进入INSERT模式之后:

添加以下代码:

xvfb-run --server-args="-screen 0, 1024x768x24" wkhtmltoimage "$@"

然后,按【Esc】→【:wq】保存退出。

chmod +x wkhtmltoimage.sh
cd /root/test
/opt/wkhtmltoimage.sh https://www.baidu.com 2.png

11.安装Tomcat

cd /root
tar -xzvf apache-tomcat-9.0.22.tar.gz -C /opt
cd /opt/apache-tomcat-9.0.22/bin

vim /etc/profile

输入i进入INSERT模式之后,在步骤4中Maven的path后面追加:

export PATH=$PATH:/opt/apache-tomcat-9.0.22/bin

然后,按【Esc】→【:wq】保存退出。

source /etc/profile

启动Tomcat:

startup.sh

12.安装Nginx

cd /
yum list nginx*
yum install -y nginx.x86_64

vim /etc/nginx/nginx.conf

输入i进入INSERT模式之后,将以下代码块使用"#"注释掉:

    server {
        listen       80;
        listen       [::]:80;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
        location = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }

然后,添加以下代码块:

upstream myserver {
        server 127.0.0.1:8080 max_fails=3 fail_timeout=30s;
}

server {
        listen 80;
        server_name XXX.XXX.XXX.XXX;
        location / {
                proxy_pass http://myserver;
        }
}

然后,按【Esc】→【:wq】保存退出。

注意

"XXX.XXX.XXX.XXX"按需修改为服务器的公网IP地址。

启动Nginx

systemctl start nginx

关闭Tomcat,将Tomcat目录下的webapps文件夹下的内容删除

shutdown.sh

cd /opt/apache-tomcat-9.0.22/webapps

rm -rf *

13.项目部署

在Windows系统中将项目的pom.xml,application.properties,global.js,HomeController.java相关文件进行修改之后,将target文件夹进行删除,之后将项目工程文件进行压缩,通过Windows命令行窗口上传到linux服务器:

pscp community.zip root@x.x.x.x:/root

解压

cd /root
unzip -d /root/community community.zip

打包

cd community
mvn package -Dmaven.test.skip=true

注意

第一次:

mvn clean package -Dmaven.test.skip=true

第二次可以这样写:

mvn package -Dmaven.test.skip=true

如果出现如下报错

[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

输入命令

yum install java-devel

重新打包

mvn package -Dmaven.test.skip=true

复制ROOT.war到Tomcat中,再启动Tomcat

cd target/
mv ROOT.war /opt/apache-tomcat-9.0.22/webapps/

startup.sh

注意事项

服务器重启之后,需要重新开启MySQL,Kafka,Redis,Elasticsearch,Nginx,再重新打包ROOT.war到Tomcat中,最后再启动Tomcat。


http://www.kler.cn/a/522957.html

相关文章:

  • 使用kitty terminal遇到的‘xterm-kitty‘: unknown terminal type.
  • 为AI聊天工具添加一个知识系统 之78 详细设计之19 正则表达式 之6
  • 基于特征工程与转换方法的LightGBM资产预测研究
  • 数据分析系列--①RapidMiner软件安装
  • A7. Jenkins Pipeline自动化构建过程,可灵活配置多项目、多模块服务实战
  • [免费]基于Python的Django博客系统【论文+源码+SQL脚本】
  • 【Redis】hash 类型的介绍和常用命令
  • 编解码技术:最大秩距离码(Maximum Rank Distance Code)
  • 代码随想录刷题day18|(哈希表篇)01.两数之和
  • QT:图像上绘制图形
  • 基于Django的个人博客系统的设计与实现
  • 【现代深度学习技术】深度学习计算 | 参数管理
  • Flink (十三) :Table API 与 DataStream API 的转换 (一)
  • TypeScript 学习 -类型 - 9
  • MySQL知识点总结(十二)
  • 树和图的实现与应用:C语言实践详解
  • Docker/K8S
  • C语言中的do……while和while循环有什么区别?
  • MySQL事物,MVCC机制
  • 【搜索回溯算法篇】:多源BFS--从简单BFS到多点协同,探索搜索算法的进化
  • 挂载mount
  • 可扩展架构:如何打造一个善变的柔性系统?
  • LTV预估 | 多视角对比学习框架CMLTV
  • 四层网络模型
  • mybatis(112/134)
  • Windows 程序设计5:文件的删除、复制与重命名操作