29-案列3:构建JDK+Tomcat运行环境镜像

1.创建tomcat目录

[root@docker01 centos-ssh]# cd /data/dockerfile/runtime/
[root@docker01 runtime]# mkdir tomcat
[root@docker01 runtime]# cd tomcat/

 2.编写dockerfile文件

[root@docker01 tomcat]# vim Dockerfile 

# Base Images
# Base Images
FROM system/centos:v3

# Maintainer
MAINTAINER xiao@qq.com

# Run
RUN yum install wget java-1.8.0-openjdk java-1.8.0-openjdk-devel -y&& yum clean all
ENV JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk

# Tomcat
ADD apache-tomcat-8.5.32.tar.gz /usr/local
RUN ln -s /usr/local/apache-tomcat-8.5.32 /usr/local/tomcat

# For Supervisor
ADD tomcat.ini /etc/supervisord.d/tomcat.ini
ENV TOMCAT_HOME /usr/local/tomcat

# Outside port
EXPOSE 22 8080

CMD ["/usr/bin/supervisord","-c","/etc/supervisord.conf"]

 3.编写tomcat.ini文件

[root@docker01 tomcat]# vim tomcat.ini

[program:tomcat]
command=/usr/local/tomcat/bin/catalina.sh run
process_name=%(program_name)s 
autostart=true

 4.构建镜像

[root@docker01 tomcat]# docker build -t system/centos:v4 .
Sending build context to Docker daemon  9.589MB
Step 1/10 : FROM system/centos:v3
 ---> acb5e563c415
Step 2/10 : MAINTAINER xiao@qq.com
 ---> Running in 340b8ae9309a
Removing intermediate container 340b8ae9309a
 ---> 97fa84eb2acf
Step 3/10 : RUN yum install wget java-1.8.0-openjdk java-1.8.0-openjdk-devel -y&& yum clean all
 ---> Running in b27116def7ff
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
 * base: centos.ustc.edu.cn
 * epel: mirrors.ustc.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.sohu.com
Package wget-1.14-15.el7_4.1.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check

 5.启动镜像

[root@docker01 tomcat]# docker run -d --name tomcat -p 8080:8080 -p 8822:22 system/centos:v4
8e964e4ef6fa10295cf308b07c7ff07ca3221c6d91bf977a156d8208a168167d

 6.测试容器

[root@docker01 tomcat]# L
[root@docker01 tomcat]# curl -I 192.168.1.23:8080
HTTP/1.1 200 
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Sun, 15 Jul 2018 08:41:27 GMT

[root@docker01 tomcat]# ssh -p 8822 root@192.168.1.23
The authenticity of host '[192.168.1.23]:8822 ([192.168.1.23]:8822)' can't be established.
ECDSA key fingerprint is bb:e1:67:bc:00:85:9a:20:2e:3d:b6:88:9b:54:23:13.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.23]:8822' (ECDSA) to the list of known hosts.
root@192.168.1.23's password: 
[root@8e964e4ef6fa ~]# supervisorctl status
sshd                             RUNNING   pid 7, uptime 0:02:03
tomcat                           RUNNING   pid 8, uptime 0:02:03
[root@8e964e4ef6fa ~]# ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.1  0.8 115668 14976 ?        Ss   08:40   0:00 /usr/bin/python /usr/bin/supervisord -c /etc/supervisord.conf
root          7  0.0  0.2 112816  4272 ?        S    08:40   0:00 /usr/sbin/sshd -D
root          8  2.5  6.9 2443332 130384 ?      Sl   08:40   0:04 /usr/lib/jvm/java-1.8.0-openjdk/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.pr
root         56  0.1  0.3 155236  6012 ?        Ss   08:42   0:00 sshd: root@pts/0
root         58  0.0  0.1  15256  2068 pts/0    Ss   08:42   0:00 -bash
root         72  0.0  0.0  55144  1844 pts/0    R+   08:43   0:00 ps aux

 

posted @ 2018-07-15 16:46  sunmmi  阅读(306)  评论(0)    收藏  举报