docker部署java项目
1、首先你需要提前准备好jar包或者war包,并想办法放入Linux环境(或虚拟机)中;
2、java项目的部署需要用到Tomcat或者Jetty,docker可以直接拉取他俩的镜像,这里以Tomcat为例:
# : 后面需要加上war或者jar对应的Tomcat版本,最好加上,
# 否则默认最新的版本--latest,会出现版本不兼容的问题
docker pull tomcat:9.0.35
# 查看docker的镜像
docker images
3、接下来需要创建一个tomcat的容器:
# "your-container" 是容器名,tomcat:9.0.35是镜像名
# 第一个端口号8088是实际要访问的端口号
# 第二个端口号8080是tomcat服务器默认的端口号
docker run -p -d 8088:8080 --name your-container tomcat:9.0.35
4、创建后需要将war包或者jar包移动到tomcat容器(your-container)中的webapps下,或者采用挂载的方式
--- 方式一:非挂载
# 进入tomcat容器
# containerId为容器实际id,可通过docker ps -a命令查看
docker exec -it containerId /bin/bash
# 这样就会进入tomcat容器的目录,一般都是/usr/local/tomcat,
# 进入后确定webapps的路径,基本就是在当前目录下,即/usr/local/tomcat/webapps
# 确定webapps的路径后退出
exit
# 假设你的java项目为myWeb.war,位于/path/myWebProj/myWeb.war
# containerId为tomcat容器实际id
# 复制后并重命名为ROOT.war(可以不重命名)
docker cp /path/myWebProj/myWeb.war containerId:/usr/local/tomcat/webapps/ROOT.war
# 重启容器
docker restart your-container
# 查看日志——可以看到运行war的输出日志,不报错基本没问题
docker logs your-container
# 浏览器输入地址查看即可
# localhost是你服务器地址,这里是本地,否则是你当前服务器的ip
# 8088是在docker run的时候设置的接口映射,映射为tomcat的8080端口
http://localhost:8088
--- 方式二:挂载
# 挂载方式更加简洁
# 下述命令可以堪称上述3-4命令的集合
# 当然仍然要保证tomcat容器下webapps的路径正确
docker run -p -d 8088:8080 --name your-container -v /path/myWebProj/myWeb.war:/usr/local/tomcat/webapps/ROOT.war tomcat:9.0.35
# 重启容器
docker restart your-container
docker部署java项目的更多相关文章
- docker 部署 java 项目
Docker Docker官方网址: https://docs.docker.com/ 英文地址 Docker中文网址: http://www.docker.org.cn/ 中文地址 Docker是 ...
- 使用docker部署java项目
在接触了docker后,干什么都想用docker来弄.最近刚做完毕业设计,本来是说将项目简单在本地部署就行了,结果老师说如果部署在服务器的话有加加分,于是果断用docker来搞,多加点分. java项 ...
- 通过Docker部署Java项目的日志输出到宿主机指定目录
之前写过2篇关于Docker部署的文章: 1.超!超!超简单,Linux安装Docker 2.Docker通过阿里云镜像仓库使用Gitlab_CI部署SpringBoot项目 用上篇博客部署Java程 ...
- jenkins+docker部署java项目
jenkins + maven + jdk + docker + docker register + dockerfile jenkins插件 # 安装插件 SSH # 配置 系统设置-> SS ...
- 手把手docker部署java应用(初级篇)
本篇原创发布于 Flex 的个人博客:点击跳转 前言 在没有 docker 前,项目转测试是比较麻烦的一件事.首先会化较长的时间搭建测试环境,然后在测试过程中又经常出现测试说是 bug,开发说无法 ...
- docker初体验:Docker部署SpringCloud项目eureka-server
Docker部署SpringCloud项目eureka-server 1 创建eureka-server工程 创建父工程cloud-demo,其pom.xml如下: <?xml version= ...
- Docker网络配置、Docker部署分布式项目
目标 1.Docker网络配置 2.Docker部署SpringCloud项目 Docker网络配置 Docker网络模式介绍 Docker在创建容器时有四种网络模式:bridge/host/cont ...
- Docker部署web项目-jar包
一.Docker部署web项目-jar包 ①搜索mysql镜像 docker search mysql ②拉取镜像至本地仓库(本文选取的mysql镜像5.7版本) docker pull mysql/ ...
- tomcat部署java项目
tomcat部署java项目 1.启动tomcat 进入到tomcat安装目录下的bin #cd /opt/tomcat/bin #./startup.sh // 执行重启命令 2.重建一个新目录导入 ...
- RedHat Linux 5.5安装JDK+Tomcat并部署Java项目
与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用. 1.下载并安装jdk 虚拟机中安装RedHat Linux 5.5 64位企业版, 这里 ...
随机推荐
- 记录荒废了三年的四年.net开发的第三次面试,苏州斯莱克
现在就业的确崩了 这次面试的时间是8月28号.距离上一次面试已经过去了一个月了,距离开始找工作已经过去了2个月.没多少找工作经验的我也体会到了什么叫就业崩了. 看了一线码农的采访计划后,我也把苏州列为 ...
- Kubernetes-9:Service介绍及演示
Service Kubernetes 的Service定义了这样一种抽象:一个 Pod 的逻辑分组,一种可以访问他们的策略 -- 微服务,这一组Pod能够被Service访问到,通常是通过tabel ...
- 高维前缀和 (SOSDP)
算法介绍--高维前缀和 引入 我们都知道二维前缀和有这么一个容斥的写法: for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ s[i][j]=s[i ...
- 事务TRANSACTION 1
MySQL事务是指一组SQL语句作为一个工作单元,同生共死.类似JS中的Array.prototype.every方法 事务的特点 原子性(Atomicity):即事务中的SQL像原子一样牢不可破,无 ...
- face-api.js 学习笔记
参考 Build Real Time Face Detection With JavaScript (youtube get started) face-api.js - JavaScript API ...
- JAVAEE——maven安装
一.安装本地Maven 注意:检查JAVA_HOME环境变量, maven本身就是java写的,所以要求必须先安装JDK,检查本机jak环境win+r后输入cmd,然后输入java -version, ...
- CSP提高组模拟1
我的微軟輸入法莫名其妙變成繁體了,你們有什麽頭緒嗎 狀態 題目 20 Time Exceeded A 最短路 25 Time Exceeded B 方格取数 0 Time Exceeded C 数组 ...
- glance对接ceph
目录 glance对接ceph 1. 上传镜像 2. 对接ceph 2.1 创建池 2.2 创建用户 2.3 下发ceph文件 2.4 修改globals文件 2.5 更新glance配置 3. 上传 ...
- 如何快速定位 Linux Panic 出错的代码行
问题描述 内核调试中最常见的一个问题是:内核Panic后,如何快速定位到出错的代码行? 就是这样一个常见的问题,面试过的大部分同学都未能很好地回答,这里希望能够做很彻底地解答. 问题分析 内核Pani ...
- 前端工程化解决方案webpack使用小结
前端工程化解决方案webpack,模块化.组件化.规范化.自动化,使得前端开发更加高效. 功能:代码压缩混淆.处理浏览器端js的兼容性.以模块化的方式处理项目中的资源 webpack插件:clean- ...