在docker中搭建apache Tomcat+JDK环境
- 本人电脑环境:安装好docker的open SUSE操作系统
- 最终的docker镜像:ubuntu+tomcat+jdk
运行ubuntu镜像
sudo docker run -it -v /home/liangyh/tmp/software:/mnt/software/ ubuntu:latest /bin/bash
-v:表示增加一个卷,前面的地址是本机文件系统的地址,后面那个是docker容器中ubuntu操作系统的文件系统地址
-it:i表示交互的意思,t表示tty。用于启动一个linux交互页面。
使用另一个本地主机的cmd窗口把tomcat和jdk软件包cp到/home/liangyh/hmp/software中。这样就可以在docker容器中的/mnt/software文件夹下面访问这两个文件了。
root@dab53dc8c8af:/# cd root/
root@dab53dc8c8af:~# tar -zxf /mnt/software/jdk-7u80-linux-x64.gz
root@dab53dc8c8af:~# tar -zxf /mnt/software/apache-tomcat-8.0.32.tar.gz
root@dab53dc8c8af:~# ls
apache-tomcat-8.0.32 jdk1.7.0_80
分别建立文件夹的软链接,方便操作。
root@dab53dc8c8af:~# ln -s /root/apache-tomcat-8.0.32 tomcat
root@dab53dc8c8af:~# ln -s /root/jdk1.7.0_80 jdk
root@dab53dc8c8af:~# ls
apache-tomcat-8.0.32 jdk jdk1.7.0_80 tomcat
我们还需要配置jdk的path环境,为了方便,我们直接在脚本中使用export,而不是在~/.profile中添加。另一个选择这样做的原因是ubuntu镜像默认没有vim或者vi编辑器,无法编辑文件。
在本地主机上面建立一个run.sh文件,内容如下所示,并放在/home/liangyh/tmp/software下面。在容器中,
root@dab53dc8c8af:~# cp /mnt/software/run.sh /root/
root@dab53dc8c8af:~# chmod +x run.sh
run.sh文件内容:
#!/bin/bash
export JAVA_HOME=/root/jdk
export PATH=$JAVA_HOME/bin:$PATHsh /root/tomcat/bin/catalina.sh run
index.html:
<html><body>
<h2>hello world</h2>
</body></html>
编辑好index.html文件,把它放在/home/liangyh/tmp/software/webapps/test/目录下面(webapps这个名字是随意的)
先离开ubuntu容器交互界面:
exit
提交容器编程一个镜像
sudo docker commit dab53dc8c8af mytomcat:1
启动新提交的镜像,在启动的时候执行run.sh脚本,启动tomcat。
sudo docker run -d -p 8080:8080 -v /home/liangyh/tmp/software/webapps/:/root/tomcat/webapps –name mytomcat mytomcat:1 /root/run.sh
这样之后,在容器中/root/tomcat/webapps/目录下面就有test这个文件夹。在本地浏览器中使用localhost:8080/test/index.html就可以访问容器中的tomcat了。
总结:
本实践的总体思路是:
- 运行一个ubuntu操作系统镜像,通过volume挂载文件的方式把本地的两个安装包cp到容器中。
- 使用脚本的方式暴露jdk的path路径和启动tomcat。
- 使用volume的方式挂载index.html文件到容器相应的位置,使得tomcat能够访问到。
在docker中搭建apache Tomcat+JDK环境相关推荐
- Docker自动部署Apache Tomcat
本文讲的是Docker自动部署Apache Tomcat,[编者的话]本文是Docker的入门文章,推荐Java开发者阅读.文章详细介绍了如何用Docker来安装部署Tomcat. 介绍 本文会讲述: ...
- Linux平台上搭建apache+tomcat负载均衡集群
传统的Java Web项目是通过tomcat来运行和发布的.但在实际的企业应用环境中,采用单一的tomcat来维持项目的运行是不现实的.tomcat 处理能力低,效率低,承受并发小(1000左右).当 ...
- 使用IntelliJ IDEA和Maven管理搭建+Web+Tomcat开发环境
使用IntelliJ IDEA和Maven管理搭建+Web+Tomcat开发环境 使用IntelliJ IDEA和Maven管理搭建+Web+Tomcat开发环境 前言:原来一直使用Eclipse,换 ...
- php7搭建平台,在windows7中搭建Apache+PHP+MySQL平台
在windows7中搭建Apache+PHP+MySQL平台 今天搞了一下午,在电脑上搭建了APM平台 系统:Windows7 Professional EN Apache2.2.9:http://a ...
- docker mysql 操作_[Docker] Docker 快速搭建本地MySQL开发环境
[Docker] Docker 快速搭建本地MySQL开发环境 关于 Docker 的安装使用本文不再赘述,有兴趣的可以通过官网或是浏览我的专栏文章了解.今天着重给大家介绍下如何利用Docker快速搭 ...
- 阿里云apache配置php mysql_阿里云CentOS7搭建Apache+PHP+MySQL环境
最近要搭建一个阿里云的LMAP环境,选了CentOS7来做搭建. 1.Apache Centos7默认已经安装httpd服务,只是没有启动. 如果你需要全新安装,可以yum install -y ht ...
- 在Centos 7下搭建Apache + PHP运行环境
之前都是在windows server2008下搭建PHP运行环境,用IIS+PHP或者phpstudy,或wamp.今天试了试,在linux下搭建apache+php运行环境.感觉还不错. 在Cen ...
- confluence中org.apache.tomcat.util.net.NioEndpoint$Acceptor.run Socket accept failed的解决方法
confluence中org.apache.tomcat.util.net.NioEndpoint$Acceptor.run Socket accept failed的解决方法 参考文章: (1)co ...
- windows和linux中搭建python集成开发环境IDE——如何设置多个python环境
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
最新文章
- python 虚拟环境原理_Python 虚拟环境
- 面向工业场景,如何实现绿色智能?
- Fibonacci (hdu1568)数学公式
- [转载] java向匿名内部类传递参数
- Ubuntu安装cacti步骤
- web CSS的知识- 关于后代选择器,子选择器,兄弟选择器的使用
- C语言例题——简易秒表
- Mysql索引优化及面试题
- java 读取485_java通信 485
- OpenCV—HSV色彩空间基础知识
- 商业银行数字化转型的难点与路径
- python 正数变成负数_LeetCode 007:整数反转 (Python)
- 神经网络论文Enhancing deep neural networks via multiple kernel learning
- Python极简讲义一本书入门机器学习和数据分析--自学笔记
- An exceptionCaught() event was fired, and it reached at the tail of the pipeline.
- mdin偏移_dif_input.c 源代码在线查看 - C8051F系列单片机开发与C语言编程 非常好的东西 资源下载 虫虫电子下载站...
- 接口调用正常却返回404
- 软件安全测试之系统安全测试
- mysql锁粒度是什么意思_mysql锁粒度是什么
- JavaCV录制屏幕(窗口)和系统声音,内录
热门文章
- html5改成块状标签,HTML5基本网页结构以及标签的改变
- dataimagepng php_nginx无法打开 dataimage/php
- 输入一行字符,判断单词数
- 【c语言】蓝桥杯算法提高 P0101
- 这7款APP到底有什么好,值得知乎2万人点赞,原来如此!
- CodeForces 631D Messenger
- 安装和配置以下合同 14.1管理
- ASP.NET中TimeSpan的用法
- 从assemblyer Instructure deepth understander C principle
- Ubuntu 7.04 相关设置