将项目部署至云服务器的详细过程 以community项目为例

本文详细介绍了如何在CentOS7.6的云服务器上部署一套完整的JavaWeb应用,包括安装JDK12、Maven、MySQL、Redis、Kafka、Elasticsearch、Nginx、Tomcat,以及配置相关服务,最后部署并测试应用程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/F30414BD-189A-408B-9057-C916E3D30EE9_2/My4NHNn9uU5zb4N75yc7i8A84t0BaS0g2CHEQUTUPaQz/Image.png

1.申请一个2核4G的云服务器,系统选择CentOS 7.6

2.使用终端连接云服务器

  • ssh root@[云服务器IP]
  • 安装unzip工具(后面解压缩 .zip 文件时要用到)

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

3.使用 wget 命令下载以下安装文件

https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/67DC41AF-A0B7-4134-B51B-F79FC723ED57_2/Qftz0CQoSEWNUucRbxI4eVzT6eFRB7Kq1ukq2V5o6sYz/Image.png
这些文件都要上官网上找对应的(有点麻烦!)
将本地文件上传至云服务器,首先找到文件所在位置,然后运行命令:scp 本地文件名 用户@ip:上传到的路径位置

scp init_sql.zip root@120.26.37.14:/root

4.安装jdk12

  • 下载安装包https://www.oracle.com/java/technologies/javase/jdk12-archive-downloads.html

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/AE989B05-B0F0-4E9D-A0F5-7F3F973D3482_2/pWqTXCf6vRoLBtZIGjt3YYNhiZywLziGN0vlUrFjcoMz/Image.png

  • 新建/usr/local/java文件夹,使用 scp 命令将下载好的 .tar.gz 文件上传至该文件夹下

    scp 本地文件名 用户@ip:上传到的路径位置

  • 使用 tar -zvxf 命令解压缩 .tar.gz 文件

  • 配置环境变量

    • vim /etc/profile

    • 按 i 进入插入模式,在配置文件的最下方加上:

      export JAVA_HOME=/usr/local/java/jdk-12.0.2

      export CLASSPATH=$JAVA_HOME/lib/

      export PATH=$$PATH:$$JAVA_HOME/bin

    • source /etc/profile

  • java -version 查看是否安装成功

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/1F7655F2-599C-49E4-B946-DD49C894BEFE_2/9SFusZ8J08GyP44lm9C3csHPqcI565rMA6B9xaeZQ60z/Image.png

5.安装maven

  • 使用安装包安装

  • 解压缩 tar -zvxf apache-maven-3.6.1-bin.tar.gz -C /opt

  • 配置环境变量

    • vim /etc/profile

    • 按 i 进入插入模式,在配置文件的最下方加上:

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

    • source /etc/profile

  • mvn -version 查看是否安装成功

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/AC78FDB0-E7CE-4CB2-8E2D-13953F624655_2/iXyHdkd7VKAzuv5fxGipxILpIELMtv4OtGX58wOe2NQz/Image.png

  • 修改maven的配置文件,把镜像设置为阿里云

    • vim /opt/apache-maven-3.6.1/conf/settings.xml

    • 将以下内容插入到setting.xml文件中

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

6.安装MySQL

  • 安装 yum 的 mysql 连接器 yum install -y mysql80-community-release-el7-7.noarch.rpm

  • 切换到根目录下, yum list mysql* 查看所有的mysql可用安装

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/FD9C0C8F-8EB3-49B4-99EF-5F18B25AF5D9_2/Hyc9FxLmVFyjzo476k0lndtjy2l745sjy9iGy57dO0Mz/Image.png

  • yum install -y mysql-community-server.x86_64

  • 启动mysql服务 systemctl start mysqld

  • 查看mysql服务状态 systemctl status mysqld

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/C1B22592-E235-401C-AAE1-8D46DAFA3ADA_2/ydVhRYdOMA3AMLDsf2xh5CwS0cISxaFdjuHlTG4G74oz/Image.png

  • 从mysql 安装的日志文件里找到root的临时密码,修改密码。

    • grep 'password' /var/log/mysqld.log
    • mysql -u root -p 输入临时密码,登录mysql
    • 修改密码 alter user root@localhost identified by ‘[密码]’;
    • exit 退出mysql 用新密码重新登录一下,成功登录就ok啦

7.初始化mysql数据库

  • 解压缩 unzip -d /root init_sql.zip

  • 登录mysql 创建数据库create database community;

  • use community;

  • source 命令导入数据

    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; 查看所有的表

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/FA7B1A38-023E-4DA3-A2CA-A0EB625CBACB_2/c9ykT7joo3eyOUClHoZZgy6pS7XXDJgntH1jsWR25SIz/Image.png

  • exit

8.安装Redis

  • 使用yum安装

    cd /

    yum list redis*

    yum install -y redis.x86_64

  • 启动 redis 服务 systemctl start redis

  • 查看redis 服务状态 systemctl status redis

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/5DC1982B-D6D5-43AF-BABC-F5A8A51745C0_2/BIq3ZeTHfy0jjzGCizvrN1dwK5uKgye8tB9LBNewTosz/Image.png

  • 运行几个redis命令测试一下

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/C768E7EF-A819-44E8-B576-65D6939F42A7_2/BKJ4jGE4uvtfxDKYxrPLvE6yikkgGKyoI1HJa7h6s0oz/Image.png

9.安装kafka

  • 使用安装包安装

  • 解压缩 tar -zvxf kafka_2.12-2.3.0.tgz -C /opt

  • 默认配置就可以,不需要修改配置文件

  • 启动zookeeper

    cd /opt/kafka_2.12-2.3.0 bin/zookeeper-server-start.sh -daemon
    config/zookeeper.propertie

  • 启动kafka

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

  • 测试一下kafka是否可用

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

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/E7529E62-6CAC-49F6-8E20-3DA04B404D61_2/UB4K0FPmNnpklnpS1IpUYfI5kHZPSOW0yXOReZtQNrwz/Image.png

10.安装elasticsearch及其分词工具

  • 使用安装包安装

  • 解压缩 tar -zvxf 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

  • 配置集群名字,数据存放位置,日志文件存放位置

    cluster.name: amelia
    path.data: /tmp/elastic/data path.logs:
    /tmp/elastic/logs

  • 修改 jvm.options vim jvm.options

    -Xms256m
    -Xmx512m

  • elasticsearch不允许root用户启动,只允许普通用户启动,新建一个用户,并为用户设置权限,切换至新用户,后台方式启动elasticsearch

    [root@ameliacommunity config]# groupadd amelia
    [root@ameliacommunity config]# useradd amelia1 -p 123456 -g amelia
    [root@ameliacommunity config]# cd /opt
    [root@ameliacommunity opt]# chown -R amelia1:amelia *
    [root@ameliacommunity opt]# cd /tmp
    [root@ameliacommunity tmp]# chown -R amelia1:amelia *
    [root@ameliacommunity tmp]# su - amelia1
    [amelia1@ameliacommunity ~]$ cd /opt/elasticsearch-6.4.3/
    [amelia1@ameliacommunity elasticsearch-6.4.3]$ bin/elasticsearch -d

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/A41BE9A2-5957-45D2-AAD6-4BA63C998843_2/rOOgPtxnc0Bz5askxzLtDzQrY4z5DL4boJEeFarr7Fcz/Image.png

    [amelia1@ameliacommunity elasticsearch-6.4.3]$ su -
    Password:
    Last login: Sun Oct  9 13:59:48 CST 2022 from 219.228.135.127 on pts/2
    [root@ameliacommunity ~]# curl -X GET "localhost:9200/_cat/health?v"
    epoch      timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
    1665300441 15:27:21  amelia  green           1         1      0   0    0    0        0             0                  -                100.0%
    [root@ameliacommunity ~]#
    

11.安装Wkhtmltopdf

  • 使用yum安装

    [root@ameliacommunity ~]# cd /
    [root@ameliacommunity /]# yum list wkhtmltopdf*
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Available Packages
    wkhtmltopdf.x86_64 0.12.4-1.el7 epel
    wkhtmltopdf-devel.x86_64 0.12.4-1.el7 epel
    [root@ameliacommunity /]# yum install -y wkhtmltopdf.x86_64

  • 安装一个虚拟的gui程序

    [root@ameliacommunity /]# yum list xvfb
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Available Packages
    python-xvfbwrapper.noarch 0.2.4-2.el7 epel
    xorg-x11-server-Xvfb.x86_64 1.20.4-18.el7_9 updates
    [root@ameliacommunity /]# yum install -y xorg-x11-server-Xvfb.x86_64

  • 测试是否可用
    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/0B2DA6B8-4EB6-48F0-B5CF-D608733434EF_2/mByWtzKvu5FYe5brCgxhMnfqxt3gZhtIPzmrufzLATgz/Image.png

  • 将命令封装到/opt下

    • vim /opt/wkhtmltoimage.sh 将下面内容写入wkhtmltoimage.sh文件中

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

    • 给文件添加执行权限 chmod +x wkhtmltoimage.sh

    • 使用 /opt/wkhtmltoimage.sh [https://www.baidu.com](https://www.baidu.com/) 2.png

12.安装tomcat

  • 使用安装包安装

  • 解压缩 tar -zvxf apache-tomcat-9.0.22.tar.gz -C /opt

  • 配置环境变量

    • vim /etc/profile

    • 按 i 进入插入模式,在配置文件的最下方加上:

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

    • source /etc/profile

    • echo $PATH 打印环境变量

  • 启动tomcat

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/20DA8CC5-7741-4369-82AD-886A08055122_2/5jl1MPckeAXFTbaN46z1ULyoxMIHSxkdOBu9RcWGFhkz/Image.png

  • 使用浏览器访问tomcat,http://120.26.37.14:8080/,发现不可访问,原因是云服务器没有开放8080端口,开放端口方法参考:https://developer.aliyun.com/article/701181

  • 成功访问

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/F699E4F0-EA77-4CB8-A056-43328B7DB60B_2/1GG8aADeJmTB2vCFx2iyaiMCjFAZ5pfgNR0Q56LGsP0z/Image.png

13.安装Nginx

  • 使用yum安装

    cd /

    yum list nginx*

    yum install -y nginx.x86_64

  • 配置 vim /etc/nginx/nginx.conf

    upstream myserver{
    server 127.0.0.1:8080 max_fails=3 fail_timeout=30s; } server {
    listen 80;
    server_name 120.26.37.14;
    location /{
    proxy_pass http://myserver;
    } }

  • 启动nginx服务 systemctl start nginx

  • 查看nginx服务状态 systemctl status nginx

  • 测试是否可用(服务器需要开放80端口),直接访问http://120.26.37.14,成功访问则说明nginx服务可用

14.删除 /opt/apache-tomcat-9.0.22/webapps 下所有文件

15.修改代码,部署。

  • 将community项目打包为ROOT.war,把配置文件中community项目名改为空值,加一个对根路径的处理,访问/index(重定向或者转发)

  • 调整代码

    • 修改项目名

      • 文件 application.propertiesserver.servlet.context-path=
      • 文件 global.jsvar CONTEXT_PATH = "";
    • 修改对根路径的处理(转发)

      • 文件 HomeController.java 添加:
      @RequestMapping(path = "/",method = RequestMethod.GET)
          public String root(){
          	return "forward:/index";
          }
      
      • 打包为war包,且打包名为ROOT,修改 pom.xml 文件
      <packaging>war</packaging>
      <build>
              <finalName>ROOT</finalName>
      </build>
      
      • 修改配置文件

      https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/16469D51-18B5-4809-B5B9-1E4C229BFB4D_2/zbgCq29NwOYS0YMmQ6MjbWAtgrqaOmBg2EddtiCM6qgz/Image.png

      • 配置tomcat启动入口类,新建类 CommunityServletInitializer.java
  • maven clean

  • 将项目压缩为 .zip文件,上传至云服务器

  • 解压缩 unzip -d /root community.zip

  • 进入项目文件路径 cd community

  • 使用 mvn 命令打包且跳过编译 mvn clean package -Dmaven.test.skip=true

  • 进入打包后生成的target文件夹下 cd target

  • 将打包好的war包移动到tomcat的webapps路径下 mv ROOT.war /opt/apache-tomcat-9.0.22/webapps/

  • 启动tomcat 服务 startup.sh

  • 通过日志文件查看是否成功开启服务,然后就可以用浏览器直接访问啦!

    https://res.craft.do/user/full/fd148a50-4a5b-9a85-bec3-e1645571e2c7/doc/0B8D9E58-36B1-468D-8921-9CB1E5C62155/AFFACF7B-B6B2-4176-A5D3-E05E50D742C9_2/xY7VeKPxxSH0RfoxworMhDQiont2Bdoop5rTkXvnzwMz/Image.png

### 如何在阿里ECS上安装配置并部署MySQL数据库项目 #### 一、准备工作 确保已购买并初始化好阿里ECS实,完成安全组设置允许外部访问所需端口(如3306),并通过SSH工具连接至服务器[^2]。 #### 二、安装 MySQL 数据库 对于CentOS/RHEL系统,可以先更新yum源列表以获取最新版本信息: ```bash sudo yum update -y ``` 接着按照官方推荐的方式安装MySQL社区版仓库文件[^3]: ```bash sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm ``` 最后执行命令来实际安装MySQL服务程序本身: ```bash sudo yum install mysql-server -y ``` 启动MySQL服务并将之设为开机自启项之一[^4]: ```bash sudo systemctl start mysqld.service sudo systemctl enable mysqld.service ``` 此时可通过`mysqladmin -u root password '新密码'`指令修改root用户的默认空白密码。 #### 三、配置远程访问权限 编辑my.cnf配置文件(/etc/my.cnf),找到bind-address参数将其值更改为0.0.0.0以便接受来自任何IP地址的请求;另外还需授予特定用户从任意主机登录的权利,比如: ```sql GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'%' IDENTIFIED BY 'yourpassword'; FLUSH PRIVILEGES; ``` 记得重启mysqld使更改生效,并调整防火墙规则开放相应端口号给外界访问[^1]。 #### 四、验证与测试 利用像MySQL Workbench这样的图形界面客户端软件或者命令行工具尝试建立到这台机器上的数据库链接,以此检验整个过程是否顺利完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值