DockerFile实战

DockerFile实战

构建简单的centos镜像

  • 官网docker hub:https://hub.docker.com/_/centos

  • 1、编写mydockerfile-centos 构建centos镜像

    FROM centos
    MAINTAINER faker55<923737581@qq.com>
    
    ENV MYPATH /usr/local
    WORKDIR  $MYPATH
    
    RUN yum -y install vim
    RUN yum -y install net-tools
    
    
    EXPOSE 80
    
    CMD echo $MYPATH
    CMD echo "---end---"
    CMD /bin/bash
    
  • 2、构建

    docker build -f mydockerfile-centos -t mycentos:0.1   .
    

构建tomcat镜像

1、准备镜像文件 tomcat压缩包和jdk压缩包

2、编写DockerFile文件

FROM centos
MAINTAINER faker55<923737581@qq.com>

COPY readme.txt  /usr/local/readme.txt

ADD jdk-8u201-linux-x64.tar.gz  /usr/local
ADD apache-tomcat-8.5.57.tar.gz  /usr/local

RUN yum -y install vim
RUN yum -y install net-tools

ENV MYPATH /usr/local
WORKDIR $MYPATH

ENV JAVA_HOME /usr/local/jdk1.8.0_201
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.57
ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.57
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

EXPOSE 8080

CMD /usr/local/apache-tomcat-8.5.57/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.57/logs/catalina.out

2、执行构建命令

 docker build -f mydockerfile-tomcat  -t diytomcat  .

3、查看镜像

[root@iZwz95n2hxcdh4x6vicjmgZ dockertomcat]# docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
diytomcat             latest              d8bd141df5bc        17 minutes ago      706MB

4、测试

[root@iZwz95n2hxcdh4x6vicjmgZ dockertomcat]# docker run -d -p 9090:8080 --name diytomcat01 -v /root/noob/build/tomcat/test:/usr/local/apache-tomcat-8.5.57/webapps/test  -v /root/noob/build/tomcat/tomcatlogs/:/usr/local/apache-tomcat-8.5.57/logs  diytomcat



# /root/noob/build/tomcat/test  项目就可以直接部署到宿主机的这个目录,容器数据卷会同步到dokcer容器中

5、查看容器运行状态

[root@iZwz95n2hxcdh4x6vicjmgZ dockertomcat]# docker ps | grep diytomcat
c659f31aaabc        diytomcat             "/bin/sh -c '/usr/lo…"   52 seconds ago      Up 52 seconds       0.0.0.0:9090->8080/tcp   diytomcat01

6、进入容器

[root@iZwz95n2hxcdh4x6vicjmgZ dockertomcat]# docker exec -it c659f31aaabc /bin/bash
[root@c659f31aaabc local]#

7、访问

curl localhost:9090
输出省略了,没问题

原文地址:https://www.cnblogs.com/zhoujun007/p/13611348.html