通过DockerFile创建tomcat+ssh服务镜像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过DockerFile创建tomcat+ssh服务镜像相关的知识,希望对你有一定的参考价值。
在上一节通过DockerFile创建ssh服务容器中创建一个centos:ssh_v2镜像,本文在该镜像的基础上再创建一个tomcat镜像,实现TOMCAT+SSH的镜像。
可以直接使用该镜像创建容器提供tomcat服务,通过定制tomcat服务器web目录,开通后可放入代码,或通过传入本地目录方式提供代码目录。
1. 准备如下内容:
-rw-r--r-- 1 root root 323 5月 31 14:20 Dockerfile
-rw-r--r-- 1 root root 81634165 5月 31 13:00 jdk1.7.0_04.tar.gz
-rw-r--r-- 1 root root 7477436 5月 31 13:18 tomcat-7.0.73-web-80.tar.gz
-rw-r--r-- 1 root root 113 5月 31 14:39 tomcat.ini
2. 编写Dockerfile
[[email protected] ~]# vi /root/base_ssh/Dockerfile -----------------DockerFile----------------- # This is Dockerfile # Author: koumm # Base image docker.io/centos FROM centos:ssh_v2 MAINTAINER KOUMM [email protected] RUN mkdir -p /data/projects/xjjweb ADD jdk1.7.0_04.tar.gz /data/ ADD tomcat-7.0.73-web-80.tar.gz /data/ ADD tomcat.ini /etc/supervisor.d/tomcat.ini EXPOSE 22 80 ENTRYPOINT ["/usr/bin/supervisord"] --------------------------------------------
3. 创建supervisord.conf配置文件
#创建supervisord主配置文件
# vi /root/base_ssh/supervisord.conf
略,,,上一节内容。
#准备jdk,以及tomcat
# 创建tomcat服务启动文件
# ssh.ini服务器启动文件见上一节内容。
# vi /root/base_ssh/tomcat.ini [program:tomcat] command=/data/tomcat-7.0.73-web-80/bin/catalina.sh run startsecs=10 stop signal=QUIT user=root
4. 通过Dockerfile创建镜像
[[email protected] ~]# docker build -t centos:tomcat_ssh_v2 /root/ssh/
Sending build context to Docker daemon 89.12 MB
Step 1 : FROM centos:ssh_v2
---> 71fb8b60cf9f
Step 2 : MAINTAINER koumingming [email protected]
---> Running in 20d286f8c116
---> a2369ac07a0f
Removing intermediate container 20d286f8c116
Step 3 : RUN mkdir -p /data/projects/xjjweb
---> Running in 64a24aa17057
---> 08e629115dc3
Removing intermediate container 64a24aa17057
Step 4 : ADD jdk1.7.0_04.tar.gz /data/
---> b35d2ef7a7b9
Removing intermediate container 0ad65c5c4edd
Step 5 : ADD tomcat-7.0.73-web-80.tar.gz /data/
---> 240a2f3d0e63
Removing intermediate container 60073781cb84
Step 6 : ADD tomcat.ini /etc/supervisor.d/tomcat.ini
---> 4678d287e2b2
Removing intermediate container a90f8bebebcc
Step 7 : EXPOSE 22 80
---> Running in e3201ec23d01
---> 152605e226be
Removing intermediate container e3201ec23d01
Step 8 : ENTRYPOINT /usr/bin/supervisord
---> Running in f831d9569290
---> a0aad1ae5a60
Removing intermediate container f831d9569290
Successfully built a0aad1ae5a60
[[email protected] ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos tomcat_ssh_v2 a0aad1ae5a60 50 seconds ago 606 MB
centos ssh_v2 71fb8b60cf9f 2 weeks ago 407.1 MB
docker.io/centos latest 8140d0c64310 4 weeks ago 192.5 MB
5. 通过镜像创建容器
[[email protected] ~]# docker run -d -p 2223:22 -p 8081:80 --name tomcat1 centos:tomcat_ssh_v2
说明: -p 2223:22 映射ssh服务,8081端口到容器80端口, 可以测试web访问。
本文出自 “koumm的linux技术博客” 博客,请务必保留此出处http://koumm.blog.51cto.com/703525/1936544
以上是关于通过DockerFile创建tomcat+ssh服务镜像的主要内容,如果未能解决你的问题,请参考以下文章
通过Dockerfile创建支持SSH服务的docker镜像(centosUbuntu)
使用Dockerfile文件制作centos6.8基础镜像,基于centos基础镜像的ssh远程登录镜像,jdk1.8镜像,tomcat镜像,elasticsearch镜像等等