shilang 发表于 2018-12-5 11:43:14

通过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 root7477436 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
# vi /root/base_ssh/Dockerfile
-----------------DockerFile-----------------   
# This is Dockerfile   
# Author: koumm   
# Base image docker.io/centos   
FROM centos:ssh_v2   
MAINTAINER KOUMM xxx@126.com   
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
   
command=/data/tomcat-7.0.73-web-80/bin/catalina.sh run   
startsecs=10   
stop   
signal=QUIT   
user=root  

4. 通过Dockerfile创建镜像
  # 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 xxx@126.com   
---> 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
  # 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. 通过镜像创建容器
  # docker run -d -p 2223:22 -p 8081:80 --name tomcat1 centos:tomcat_ssh_v2
  说明: -p 2223:22 映射ssh服务,8081端口到容器80端口, 可以测试web访问。



页: [1]
查看完整版本: 通过DockerFile创建tomcat+ssh服务镜像