Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

    ------引用   https://www.runoob.com/docker/docker-tutorial.html

以下是LZ利用Centos7.4对Docker的实践总结。

一、docker安装

  参考:https://www.runoob.com/docker/centos-docker-install.html 或 https://blog.csdn.net/qq_38591756/article/details/82828130

二、docker实战

  1.首先试着运行一个最简单的容器

      • 下载一个docker镜像(这里以tomcat为例)
        #拉取镜像
        docker pull tomcat   
        #查询镜像列表
        docker images 

         

 

 

 

                          

 

 

 

      • 用上面下载的镜像运行容器  
        #运行容器
        docker run --name tomcat -p 8080:8080 -v /root/test:/usr/local/tomcat/webapps/test -d tomcat
        #查询容器情况
        docker ps

 

 

             

 

 

         如上404,我们来查下原因;

                             

 

                           

 

 

        OK,到这里发现我们容器成功启动。   

  2.Dockerfile构建一个的jdk+tomcat的Web容器

      • 首先下载需要的jdk与tomcat版本,这里以apache-tomcat-8.5.53.tar.gz和jdk-8u221-linux-x64.tar.gz为例。

          jdk-8u221-linux-x64.tar.gz 

            链接:https://pan.baidu.com/s/1-oSA-2noT0og5G6BLudeJA
            提取码:jg6p

          apache-tomcat-8.5.53.tar.gz

 

            链接:https://pan.baidu.com/s/1ZxBRNvlOUs5dJ-zICG74vw
            提取码:7aab

 

      • 然后创建一个目录,把tar包放到该目录下
        mkdir jdk-tomcat  

           

      • 解压apache-tomcat-8.5.53.tar.gz和jdk-8u221-linux-x64.tar.gz
        cd jdk-tomcat
        tar -zxvf apache-tomcat-8.5.53.tar.gz 
        tar -zxvf jdk-8u221-linux-x64.tar.gz
        mv  apache-tomcat-8.5.53 tomcat
        mv  jdk1.8.0_221 jdk
        
      • 制作Dockerfile
        vim Dockerfile
        
        #使用的基础镜像
        FROM centos
        #创建目录
        RUN mkdir -p /docker_home/local
        #把当前目录下的jdk文件夹添加到镜像
        ADD tomcat /docker_home/local/tomcat
        ADD jdk /docker_home/local/jdk
        ENV JAVA_HOME /docker_home/local/jdk/
        ENV CATALINA_HOME /docker_home/local/tomcat
        ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
        #暴露8080端口
        EXPOSE 8080
        #启动时运行tomcat
        CMD ["/docker_home/local/tomcat/bin/catalina.sh","run"]
        
      • 构建镜像
        docker build -t centos-jdk-tomcat:1.0  .
        
      • 启动容器

        docker run -d -p 8090:8080 --name jdk-tomcat jdk-tomcat:1.0
        

 

                               

      • OK,没问题。现在拷入一个项目,用jenkins为例。
        #容器ID a2503f3cc78d

        docker cp jenkins.war a2503f3cc78d:/docker_home/local/tomcat/webapps
        docker stop a2503f3cc78d
        docker start a2503f3cc78d

          链接:https://pan.baidu.com/s/1yr4_iY7Y51bE63m18poWZQ 

            提取码:hag7

 

                             

 

     好的,成功将项目部署到搭建的web服务器!