软件开发 --- 从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 项目
- 打开 IntelliJ IDEA,选择 New Project。
- 在 New Project Wizard 中:
- 选择 Spring Initializr。
- 配置项目基本信息:
- Group: com.example
- Artifact: helloworld
- Name: helloworld
- Type: Maven 项目
- Packaging: 选择
war
- Java Version: 选择与您的环境匹配的版本(例如 Java 8/11/17)。
- 在 Dependencies 中添加:
- Spring Web(用于构建 Web 应用程序)。
- Spring Boot DevTools(可选,用于开发时热加载)。
- 点击 Finish 创建项目。
创建 "Hello World" Controller
创建一个简单的控制器来处理 Web 请求。
- 在
src/main/java/com/example/helloworld
下新建一个controller
包。 - 在
controller
包中创建类HelloController
:
4. 配置应用
如果需要自定义配置,可以修改 application.properties
文件:
- 在
src/main/resources/application.properties
中添加:
5. 打包为 WAR
-
在 IDEA 的 Maven 面板 中运行
clean
和package
,或者直接运行以下命令: -
打包完成后,您可以在项目的
target
目录下找到helloworld.war
文件。
部署程序
docker run -d -p 8080:8080 docker.io/tomcat
-d表示后台运行,-p端口映射,前面的8088是本机ip访问端口(,后面8080是docker容器内部的端口
访问浏览器测试tomcat是否正常启动:
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