DockerFile用来构建docker镜像文件
指令 说明
FROM | 指定基础镜像 |
MAINTAINER | 镜像是谁写的,姓名+邮箱 |
RUN | 镜像构建的时候需要运行的命令 |
ADD | 将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget |
WORKDIR | 镜像的工作目录 |
VOLUME | 挂载的目录 |
EXPOSE | 保留端口配置 |
CMD | 指定这个容器启动的时候要运行的命令(只有最后一个会生效) |
EMTRYPOINT | 指定这个容器启动的时候要运行的命令,可以追加命令 |
ONBUILD | 当构建一个被继承DockerFile,这个时候就会运行ONBUILD的指令,触发指令 |
COPY | 功能类似ADD,但是是不会自动解压文件,也不能访问网络资源 |
ENV | 构建的时候设置环境变量 |
简单实例:
From openjdk:8-jdk-slim 运行环境java
Label maintainer=作者
COPY target/*.jar /app.jar
ENTRYPOINT/CMD 启动命令[“java”,”-jar”,”/app.jar”]
实例中只是写了最基本的java语言的jar包项目发布启动,可根据上方表格中的指令尝试添加自定义属性来实现自己的功能,在技术探索中能更快的掌握dockerfile的编写
docker加载dockerfile
docker build -t 镜像名:版本号 -f dockerfile名称 .
命令最后一个点一定要加上,表示从当前地址进行加载
运行镜像可参考上一章节 docker命令中的docker run,根据项目实际需求进行编写命令。
加载自己制作的镜像
方法一:本地保存方法
docker commit -a “作者” -m “首页变化” 容器id 镜像名 提交
docker save -o “abc.tar” zxm:v1.0 保存
把保存好的镜像文件abc.tar 传出到要初始化的机器上
docker load -i abt.tar 加载镜像 加载镜像
方法二:把镜像上传到hub.docker.com上
首先在网站上注册一个账户
docker login -u 账户 -p 密码 登陆
docker push 作者/镜像:v1.0 推送镜像
一般国外的网站上传下载文件太慢,可使用阿里云镜像仓库
创建命名空间、随便创建一个仓库,点击仓库名称会显示帮助文档
登陆
docker login --username=90*******@qq.com registry.cn-hangzhou.aliyuncs.com
创建tag
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/zxm_work/镜像名:[镜像版本号]
推送
docker push registry.cn-hangzhou.aliyuncs.com/zxm_work/镜像名:[镜像版本号]
使用时登陆、使用命令直接拉去
docker pull registry.cn-hangzhou.aliyuncs.com/zxm_work/镜像名:[镜像版本号]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)