Docker之三:Dockerfile镜像

一、自动部署应用

 1.自建docker-web项目,存入/usr/image/first-dockerfile

#构建应用镜像  最后一个.是当前目录路径
docker build -t helq3.com/mywebapp:1.0 .

 Dockerfile内容

#设置基准镜像
FROM tomcat:latest
MAINTAINER helq3.com
#切换工作目录,不存在则创建
#cd /usr/local/tomcat/webapps
WORKDIR /usr/local/tomcat/webapps
#复制目录下的所有文件到容器目录
ADD docker-web ./docker-web

2.查看镜像,创建容器:docker run -d -p 8001:8080 helq3.com/mywebapp:1.0,然后网页查询(乱码没力气改了,以后再说)

 

 二、镜像分层(layer)

1.

三、镜像命令

 

 

 

docker build: 创建镜像  RUN执行在构建镜像时执行命令

docker run:创建容器 CMD|ENTRYPOINT 在容器创建时执行命令

 

 Shell命令:会创建子进程,子进程结束则回到主进程

Exec命令:创建新进程覆盖主进程,新进程结束则结束

ENTRYPOINT一定会被运行,而CMD命令不一定会运行

  

 测试:

  创建文件夹:mkdir docker_run    文件下:vim Dockerfile 

  FROM centos

  RUN ["echo","image building!!"]

  ENTRYPOINT ["ps"]       

  CMD ["-ef"]

  构建镜像:docker build -t helq3.com/docker_run .        --image building!!

  运行:docker run helq3.com/docker_run     --ps -ef

 四、dockerfile构建redis镜像 --练习指令

1.redis相关的两个文件拖到image下

2.vim Dockerfile

FROM centos   
RUN ["yum","install","-y","gcc","gcc-c++","net-tools","make"]
WORKDIR /usr/local
ADD redis-4.0.14.tar.gz .
WORKDIR /usr/local/redis-4.0.14/src
RUN make && make install
WORKDIR /usr/local/redis-4.0.14
ADD redis-7000.conf .
EXPOSE 7000       #释放7000端口
CMD ["redis-server","redis-7000.conf"]     #起服务

3.docker build -t helq3.com/docker-redis .

4.docker run -p 7000:7000 helq3.com/docker-redis   

5已有的镜像 docker images  正在运行的服务 docker ps  跳到redis-4.0.14目录下查看 新增redis-7000.conf

 6.hub.docker.com最简单    拉取最新:docker pull redis   运行:docker run redis 

posted @ 2020-12-29 19:59  章冒冒2020  阅读(158)  评论(0编辑  收藏  举报