赞
踩
最基本的,系统里得有docker,所以,首先要先 安装docker (这部分在第一阶段有比较详细的介绍);执行命令
yum -y install docker
可以用docker version
检查docker是否安装成功,如果出现 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 的报错提示,可执行 systemctl daemon-reload
和 systemctl restart docker.service
docker安装完成后,创建工作目录,我直接在根目录下创建了docker文件夹;然后编写Dockerfile文件,并将文件放到文件夹docker下;Dockerfile文件没有后缀;所有命令如下图
下面是Dockerfile文件的内部代码,直接复制粘贴即可,也可以下载一份现成的;
FROM tomcat
WORKDIR /usr/local/tomcat/webapps/ROOT/
RUN rm -fr *
RUN echo 'Hello Docker!' > index.html
上面就是一个完整的、极其简单的Dockerfile,需要解释以下几点:
RUN ["","参数1","参数2"]
,入门阶段不涉及;COPY <上下文路径> ... <目标路径>
,上下文路径就不解释了,目标路径就是镜像中的文件夹的路径,这俩都是相对路径。补充: 上下文路径是指,liunx中打包并解压后的文件夹路径;
Dockerfile文件写完之后要利用这个Dockerfile创建镜像,下面就是创建镜像的执行命令。
docker build -t mydocker .
注意:
docker image prune
指令来清除虚悬镜像;如果巧了,虚悬镜像没有清除掉,有可能是因为有容器的生成导致虚悬镜像删除失败,这个时候,使用docker ps -a
或者docker ps
查看容器,找到占用的容器后,使用docker rm xxxxxx
来移除容器(也可以在rm后面加 -f 来强制删除容器),容器移除完毕后再重新删除虚悬镜像即可。(这部分如果觉得我说的模糊,可以后文留言,我再补充)此时,镜像创建完毕
镜像创建完毕后,启动镜像生成容器(以下面的代码为准,截图中的代码有误,懒得重新截图了),执行命令如下
docker run -d -p 8080:8080 mydocker
启动成功后我们可以进入容器内部,看到ROOT目录下只有我们写进去的index.html文件(进入容器内部用exec命令,使用方法看第一阶段)
如果我们在容器内,可以用命令exit
命令退出容器;
以上,这样我们就通过Dockerfile创建完成了一个,只有一个index.html页面的web项目,并且可以正常访问。如果读者想启动一个自己的项目,这里以zip包为例(即你的项目已经打成了zip包),提供了一个Dockerfile
以下是另一个Dockerfile,这个Dockerfile将一个crm项目打成了zip包,将zip复制到了tomcat下,解压并移除原始zip包,启动镜像,这样就能将任意项目通过dockerfile的方式启动了;
FROM tomcat
WORKDIR /usr/local/tomcat/webapps/ROOT/
RUN rm -fr *
COPY crm.zip .
RUN unzip crm.zip
RUN rm -fr crm.zip
WORKDIR /usr/local/tomcat/
EXPOSE 8080
其他步骤见上文
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。