一、自动部署应用
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