虚拟机上部署Web项目

文章目录

  • [1. 实战概述](#1. 实战概述)
  • [2. 实施步骤](#2. 实施步骤)
    • [2.1 项目打包](#2.1 项目打包)
    • [2.2 本地部署](#2.2 本地部署)
      • [2.2.1 部署本地服务器](#2.2.1 部署本地服务器)
      • [2.2.2 war包改名](#2.2.2 war包改名)
      • [2.2.3 启动Tomcat服务器](#2.2.3 启动Tomcat服务器)
      • [2.2.4 测试西蒙购物网项目](#2.2.4 测试西蒙购物网项目)
    • [2.3 虚拟机上部署](#2.3 虚拟机上部署)
      • [2.3.1 远程连接虚拟机](#2.3.1 远程连接虚拟机)
      • [2.3.2 安装配置Tomcat服务器](#2.3.2 安装配置Tomcat服务器)
      • [2.3.3 将war包部署到虚拟机Tomcat服务器上](#2.3.3 将war包部署到虚拟机Tomcat服务器上)
      • [2.3.4 MySQL里创建用户并分配权限](#2.3.4 MySQL里创建用户并分配权限)
      • [2.3.5 本地Navicat连接虚拟机数据库服务器](#2.3.5 本地Navicat连接虚拟机数据库服务器)
      • [2.3.6 在虚拟机数据库服务器上创建数据库与表](#2.3.6 在虚拟机数据库服务器上创建数据库与表)
      • [2.3.7 虚拟机启动Tomcat服务器](#2.3.7 虚拟机启动Tomcat服务器)
      • [2.3.8 测试西蒙购物项目](#2.3.8 测试西蒙购物项目)
  • [3. 实战总结](#3. 实战总结)

1. 实战概述

  • 本实战完成西蒙购物网项目从开发到部署的全流程。通过Maven打包生成WAR文件,先后在本地与虚拟机部署,配置JDK、Tomcat及MySQL环境,实现远程访问与数据交互,最终验证系统功能正常,掌握Java Web项目发布与跨平台部署的核心技能。

2. 实施步骤

2.1 项目打包

  • 演示simonshop项目打包过程
  • 查看生成war包文件

2.2 本地部署

2.2.1 部署本地服务器

  • 将simonshop-1.0-SNAPSHOT.war拷贝到D:\apache-tomcat-10.1.16\webapps目录

2.2.2 war包改名

  • 将simonshop-1.0-SNAPSHOT.war改名为simonshop.war

2.2.3 启动Tomcat服务器

  • 执行命令:startup.bat

2.2.4 测试西蒙购物网项目

  • 访问http://localhost:8080/simonshop/
  • 跳转到登录页面
  • 登录成功,显示商品类别
  • 显示床上用品

2.3 虚拟机上部署

2.3.1 远程连接虚拟机

  • 利用FinalShell连接Master虚拟机
  • Master虚拟机安装配置了JDK21

2.3.2 安装配置Tomcat服务器

  1. 上传Tomcat安装包到虚拟机
    • 将Tomcat安装包上传到Master虚拟机/opt目录
    • 执行命令:ll apache-tomcat-10.1.48.tar.gz
  2. 将Tomcat安装包解压到指定目录
    • 执行命令:tar -zxvf apache-tomcat-10.1.48.tar.gz -C /usr/local
  3. 给Tomcat配置环境变量
    • 执行命令:vim /etc/profile

      shell 复制代码
      export CATALINA_HOME=/usr/local/apache-tomcat-10.1.48
      export PATH=$CATALINA_HOME/bin:$PATH		
    • 执行命令:source /etc/profile,让配置生效

2.3.3 将war包部署到虚拟机Tomcat服务器上

  • 将simonshop.war包上传到/usr/local/apache-tomcat-10.1.48/webapps里

2.3.4 MySQL里创建用户并分配权限

  1. 创建用户
    • 执行命令:CREATE USER 'root'@'%' IDENTIFIED BY '903213P@ssword';
  2. 给用户授权
    • 执行命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
    • 结果说明:该命令授予用户'root'@'%'对所有数据库和表的全部权限。执行成功,返回"Query OK",表示权限已分配,但无数据受影响(0 rows affected),因为这是权限操作而非数据修改。
    • 执行命令:FLUSH PRIVILEGES;

2.3.5 本地Navicat连接虚拟机数据库服务器

  • 新建数据库连接,输入连接名、主机和密码,单击【测试连接】按钮,弹出消息框提示"连接成功"
  • 打开新建的Master连接

2.3.6 在虚拟机数据库服务器上创建数据库与表

  1. 创建数据库
    • 创建simonshop数据库
  2. 运行数据库脚本
    • 设置要运行的数据库脚本
    • 单击【开始】按钮,信息日志显示"成功完成"
  3. 查看数据表
    • 数据库里有4张表

2.3.7 虚拟机启动Tomcat服务器

  • 执行命令:startup.sh

2.3.8 测试西蒙购物项目

  • 访问http://192.168.1.101:8080/simonshop/
  • 跳转到登录页面
  • 登录成功,显示商品类别
  • 单击【文具用品】按钮
  • 修改hosts映射文件,添加192.168.1.101 master映射
  • 此时可用http://master:8080/simonshop/来访问项目首页

3. 实战总结

相关推荐
爱上纯净的蓝天3 天前
不用云做 RAG:一个本地笔记问答工具的取舍与坑
python·开源·大模型·rag·本地部署
张张123y3 天前
120B 模型单卡跑起来?拆解 Nemotron 3.5 的压缩三板斧与本地智能体部署
nvidia·模型量化·本地部署·ai agent·nemotron
Web3&Basketball5 天前
Meta Muse 816B 实测:两台 Mac 本地跑通
macos·大模型·mac·本地部署·moe·显存优化·meta muse
goehou7 天前
模型量化部署实战:显存、精度与量化版本怎么选(附显存账)
llm·本地部署·awq·量化部署·显存优化
木圭的AI时代指南9 天前
MiniCPM-V 4.7 35B-A3B 本地部署实录:RTX 3070 8GB 显存跑多模态,36 token/s
人工智能·ai·本地部署·openbmb·端侧大模型·minicpm-v 4.7
Blockbuater_drug11 天前
HELM-BERT:用“拓扑感知”语言模型读懂修饰环肽——原理+本地部署实战
deberta·本地部署·修饰肽·helm-bert·helm 符号·环肽渗透性·非天然氨基酸
智码看视界12 天前
开源大模型追踪:Qwen3-VL-30B-A3B :30B 总参单卡到底能不能跑?
多模态·视觉语言模型·本地部署·vllm·moe·开源大模型·qwen3-vl
木圭的AI时代指南14 天前
EmbeddingGemma 2 图片检索实测:3 款多模态向量模型在无显卡 Ubuntu 上的完整账本
ai·本地部署·向量模型·图片检索
SatVision炼金士17 天前
DIFY本地部署开源模型配置ollama,提示修改成功却没有加载模型问题解决
开源·dify·本地部署·ollama
智码看视界18 天前
开源大模型追踪:Qwen-Image-2.1 :7B 视觉生成模型开源榜登顶 60.28,原生 RGBA 透明出图
扩散模型·图像生成·本地部署·开源大模型·qwen-image-2.1·rgba透明