GKLBB

当你经历了暴风雨,你也就成为了暴风雨

导航

软件开发 --- 从docker部署到tomcat运行的最精简步骤,包括如何避免坑

安装vmware

目前最新消息,vm被博通收购并免费使用,下载地址https://softwareupdate.vmware.com/cds/vmw-desktop/ws/

安装过程不在赘述

 

安装centos

1.创建虚拟机

2.自定义

3.稍后安装操作系统

4.选linux, 64位的centos,这里随意,这里的配置其实就是方便后续自动生成配置参数的

5.指定一个你想安装系统的位置

6.虚机处理器配置 2个,2核心,视情况而定

7.我选4g内存

8.使用桥接模式,就是和你电脑处于同一个网络

9.io和磁盘默认

10.创建新的磁盘

11.100G,单个文件

12.默认指定磁盘文件

13.点击自定义硬件,选择cd中的在官网上下载的centos镜像文件

14.启动centos,在启动界面通过方向键选择Install CentOS 7后回车

15.选择系统语言,向下拉找到中文

16.选择磁盘,单击安装位置后直接点击完成即可

17.修改密码123456,点击两次确定即可

18.配置完成后点击开始安装

重启后登录进入Linux服务器

 

安装docker

sudo yum -y update

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sudo yum install docker-ce

sudo systemctl start docker

sudo systemctl enable docker

 

下载tomcat镜像

sudo docker pull tomcat

会有一个错误

Error response from daemon: Get “https://registry-1.docker.io/v2/

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

启动你的袋里程序比如,启动允许局域网连接,并记录端口号

 sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

输入

[Service]
Environment="HTTP_PROXY=192.168.0.1:7890/"
Environment="HTTPS_PROXY=192.168.0.1:7890/"

把ip改为你电脑本机的出口ip,端口是上面看到的。

sudo systemctl daemon-reload
sudo systemctl restart docker

再次拉取

sudo docker pull tomcat

docker images

 

 

 

 

开发war

我们安装idea并配置好maven和java环境,这里不在赘述。

给idea和maven配置袋里,

idea打开设置

 maven在你的安装目录下conf中setting.xml

 

1. 创建 Spring Boot 项目

  1. 打开 IntelliJ IDEA,选择 New Project
  2. New Project Wizard 中:
    • 选择 Spring Initializr
    • 配置项目基本信息:
      • Group: com.example
      • Artifact: helloworld
      • Name: helloworld
      • Type: Maven 项目
      • Packaging: 选择 war
      • Java Version: 选择与您的环境匹配的版本(例如 Java 8/11/17)。
  3. Dependencies 中添加:
    • Spring Web(用于构建 Web 应用程序)。
    • Spring Boot DevTools(可选,用于开发时热加载)。
  4. 点击 Finish 创建项目。

创建 "Hello World" Controller

创建一个简单的控制器来处理 Web 请求。

  1. src/main/java/com/example/helloworld 下新建一个 controller 包。
  2. controller 包中创建类 HelloController
    java
    package com.example.helloworld.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @GetMapping("/") public String sayHello() { return "Hello, World!"; } }

4. 配置应用

如果需要自定义配置,可以修改 application.properties 文件:

  • src/main/resources/application.properties 中添加:
    properties
    server.port=8080

5. 打包为 WAR

  1. 在 IDEA 的 Maven 面板 中运行 cleanpackage,或者直接运行以下命令:

    bash
    mvn clean package
  2. 打包完成后,您可以在项目的 target 目录下找到 helloworld.war 文件。

 

 

部署程序

docker run -d -p 8080:8080 docker.io/tomcat

-d表示后台运行,-p端口映射,前面的8088是本机ip访问端口(,后面8080是docker容器内部的端口
访问浏览器测试tomcat是否正常启动:

http://192.168.1.110:8088/

 

docker ps

docker exec -it 上一步的id /bin/bash

开启vm的文件夹共享将编译好的war上传到centos的tmp目录并重命名为ROOT.war

docker cp /tmp/ROOT.war 上一步的id:/usr/local/tomcat/webapps

docker restart 上一步的id

再次访问 http://192.168.1.110:8088/,可以看到输出了helloworld

 

posted on 2024-11-24 02:09  GKLBB  阅读(16)  评论(0编辑  收藏  举报