Docker部署JavaWeb应用

本文详细介绍了如何使用Docker在Linux环境下安装并配置Tomcat容器,包括Docker的安装、Tomcat镜像的拉取、容器的启动及自定义web应用的部署。涵盖了通过直接放置文件、挂载目录及构建自定义镜像三种部署方式。

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

0X00 在线下载docker
yum install -y epel-release
yum install docker-io   # 安装docker
chkconfig docker on     # 加入开机启动
service docker start     # 启动docker服务
0X01 docker安装Tomcat容器

查找服务器的tomcat信息
docker search tomcat
在这里插入图片描述

0X02 docker安装Tomcat容器

下载官方的镜像Starts最高的那个
docker pull docker.io/tomcat

0X03 查看docker所有的镜像

docker images
在这里插入图片描述

0X04 启动tomcat

docker run -p 8081:8080 docker.io/tomcat
在这里插入图片描述
若端口被占用,可以指定容器和主机的映射端口
前者是外围访问端口:后者是容器内部端口
启动后即可访问 192.168.xx.xx:8081
在这里插入图片描述

0X05 部署自己的web引用

使用以下命令来查看正在运行的容器
docker ps
在这里插入图片描述

一、把web项目放到container里面的方式启动

1、把web项目放到container里面的tomcat/webapps
在这里插入图片描述
docker cp xxx d1c3ccf78425 :/usr/local/tomcat/webapps
在这里插入图片描述
1、进入comcat容器
docker exec -it d1c3ccf78425 /bin/bash #中间那个是容器id(CONTAINER_ID)
在这里插入图片描述2、exit退出容器

3、启动tomcat 或者重启 docker restart 【容器id】
docker run -p 8081:8080 docker.io/tomcat

4、查看已经启动镜像
docker ps

5、查看容器comcat中的项目
docker exec -it 3cb492a27475 /bin/bash #中间那个是容器id(CONTAINER_ID)
cd /webapps
ls # 即可查看到我们的项目了

二、以挂载的方式启动

上述执行有个弊端就是 容器重启后项目就会不在了,下面是以挂载的方式启动

docker run -d -v /usr/docker_file/NginxDemo.war:/usr/local/tomcat/webapps/NginxDemo.war -p 8080:8080 docker.io/tomcat  
三、官网建议的方式启动。

前两种方式建议在测试环境使用,毕竟要经常修改代码 ,方式3可以放到生产上使用。

vi Dockerfile
from docker.io/tomcat:latest    #你的 tomcat的镜像
MAINTAINER XXX@qq.com    #作者
COPY NginxDemo.war   /usr/local/tomcat/webapps  #放置到tomcat的webapps目录下

生成新的镜像:
docker build -t nginx-demo:v1 .

启动新的镜像
docker run -p 8080:8080 nginx-demo:v1

### 使用 Docker Desktop 部署 Java Web 项目的教程 #### 准备工作 为了在 Docker Desktop 上成功部署 Java Web 项目,需要完成以下准备工作: - 安装并配置好 Docker Desktop[^1]。 - 确保本地已经具备一个可运行的 Java Web 项目文件(如 `.jar` 文件),或者可以从远程仓库拉取。 --- #### 创建 Dockerfile Dockerfile 是定义容器镜像构建过程的关键文件。以下是基于 OpenJDK 的典型 Dockerfile 示例: ```dockerfile FROM openjdk:8-jdk-alpine ADD test-0.0.1-SNAPSHOT.jar app.jar ENTRYPOINT ["java", "-jar", "app.jar"] ``` 上述代码片段表示从官方 `openjdk:8-jdk-alpine` 基础镜像开始构建,并将本地的 JAR 文件复制到容器中作为应用入口[^4]。 --- #### 构建 Docker 镜像 在包含 Dockerfile 的目录下执行以下命令来构建自定义镜像: ```bash docker build -t java-web-app . ``` 此命令会读取当前路径下的 Dockerfile 并将其打包成名为 `java-web-app` 的镜像。 --- #### 启动容器 使用以下命令启动容器并将端口映射至主机: ```bash docker run -d -p 8080:8080 --name my-java-web-app java-web-app ``` 其中 `-d` 表示后台运行模式;`-p` 参数用于指定宿主机与容器之间的端口映射关系;`--name` 则赋予该实例一个易于识别的名字[^2]。 如果项目依赖外部服务(例如 MySQL 数据库),可以通过 Compose 工具进一步简化多组件协作流程[^3]。 --- #### 测试访问 打开浏览器输入地址 http://localhost:8080 即可验证是否正常加载页面内容。 --- #### 总结 通过以上步骤可以在 Windows 或其他支持 Docker Desktop 的平台上快速搭建起一套完整的 Java Web 运行环境,不仅节约了传统虚拟机方案可能带来的硬件开销,还极大提升了跨平台迁移的一致性和效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值