Dockerfile创建镜像

  • Dockerfile常见的命令

Dockerfile就是用来构建docker镜像的源码,是一些命令的组合,编写dockerfile可以定制化docker image。

镜像构建:首先有一个非常基础的镜像,在此基础镜像上叠加我们需要的软件,每安装一个软件,就在现有镜像的基础上叠加一层。

Dockerfile常见的命令

FROM image_name:tag 一般需要一个非常基础的镜像来做构建
RUN command:编译镜像时运行的脚本,可以写多条
ENV key value:设置环境变量,可以设置多个
CMD:设置容器的启动命令
ENTRYPOINT:设置容器的入口程序
ADD source_dir/file des_dir/file:将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
COPY source_dir/file des_dir/file:与ADD相似,但是不会自动解压
WORKDIR path_dir:设置工作目录
ARG:设置编译镜像时加入的参数
VOLUMN:设置容器的挂载卷
EXPOSE 端口号:向外开放一个端口号

使用Dockerfile制作微服务镜像:
利用Dockerfile制作一个微服务的镜像
1.上传微服务的jar包到linux

2.编写Dockerfile
FROM openjdk:8-jdk-alpine ( 基础镜像,jdk基础镜像
ARG JAR_FILE ( 用于下面拷贝文件
COPY ${JAR_FILE} app.jar ( 拷贝宿主机文件为app.jar
EXPOSE 10086 ( 对外发布端口10086
ENTRYPOINT [“java”,"-jar","/app.jar"] 启动命令

3.构建镜像
docker build --build-arg JAR_FILE=tensquare_eureka_server-1.0-SNAPSHOT.jar -t eureka:v1 .

4.查看镜像是否创建成功
docker images

5.创建容器
docker run -i --name=eureka -p 10086:10086 eureka:v1
查看:
docker ps
docker logs -f container_id (查看容器日志

6.访问容器
通过网页访问

Dockerfile创建镜像相关推荐

  1. 使用 dockerfile 创建镜像

    dockerfile 是一个文本格式的配置文件,可以使用 dockerfile 快速创建自定义的镜像. dockerfile 一般包含4部分信息:基础镜像信息.维护者信息.镜像操作指令.容器启动时执行 ...

  2. [转]Docker基础-使用Dockerfile创建镜像

    本文转自:https://www.cnblogs.com/jie-fang/p/7927643.html 1.基本结构 Dockerfile由一行行命令语句组成,并支持以#开头的注释行.例如: # T ...

  3. Docker基础-使用Dockerfile创建镜像

    目录 1.基本结构 1.1 在debian:jessie基础镜像上安装nginx环境,从而创建一个新的nginx镜像: 1.2 基于buildpack-deps:jessie-scm基础镜像,安装go ...

  4. Dockerfile创建镜像文件

    Dockerfile Docker镜像原理 Linux文件系统有bootfs和rootfs两部分组成 Docker镜像由特殊文件系统叠加 最底端bootfs,使用宿主机bootfs 第二次时rootf ...

  5. Docker学习,从hello-word到Dockerfile创建镜像

    一.Docker的最小镜像hello-world 1.docker  pull 下载hello-world镜像 docker  pull   hello-world 2.docker  images ...

  6. dockerfile创建镜像与容器卷与容器查看

    先创建一个dockerfile01文件 vim编辑输入 from centos volume ["volume1","volume2"] cmd echo &q ...

  7. java:alpine 字体 dockerdocker-compose 字体找不到 dockerfile创建镜像 找不到字体

    背景:         使用spire.doc处理doc转图片,找不到字体,在win机开发一切正常,使用dockerfile部署到linux服务器,使用docker-compose启动容器时,执行报错 ...

  8. 通过dockerfile创建镜像启动容器

    制作镜像 $ docker build -t eohiiothub . # 查询镜像 $ docker images # 启动 docker run -d -p 8089:8089 eohiiothu ...

  9. 【系列8】使用Dockerfile创建带MongoDB的Centos Docker镜像

    MongoDB是一款可扩展.高性能的开源文档(Document-Oriented)数据库.它采用C++开发,支持复杂的数据类型和强大的查询语言,提供了关系数据库的绝大部分功能.MongoDB由于其高性 ...

最新文章

  1. 【Asp.Net】得到http请求中的参数语句
  2. idea provided和compile区别
  3. SqlServer 获取汉字的拼音首字母
  4. 转:Ubuntu 开机加载路由设置
  5. 【BUG记录】记一次游戏越来越卡的BUG
  6. Java数据类型转换(自动转换和强制转换)
  7. java里顺序表怎么判断是否满_2、顺序表的实现(java代码)
  8. 15个相当不错的jQuery技巧
  9. 真实不装| 阿里巴巴新人上路指北
  10. java书籍_Java学习必备书籍(快来收藏)
  11. PHP验证时有用的几段代码
  12. 添加mysql.h头文件
  13. JVM虚拟机详解(一)JVM与JAVA体系统结构
  14. 【新版】掩日免杀windows Defender
  15. 别让这个世界左右你的人生
  16. 机器学习:什么是预测模型性能评估
  17. vasp 系列 002. 通过 vaspkit 生成的 BNAD.dat 数据文本计算有效质量
  18. 分享几个不错的流程图制作网站
  19. 三分钟集成 TapTap 登录 SDK(Unity 版)
  20. MPLS多协议标签交换技术

热门文章

  1. 图扑数字孪生空冷机组,助推智慧电厂拥抱“双碳”
  2. React 事件onClick
  3. 迭代硬阈值(IHT)的补充说明
  4. 铁打的DeltaS=0.02,流水的HFSS版本
  5. BZOJ 1009 GT考试 (AC自动机 + 矩阵乘法加速dp)
  6. minikube v1.20.0版本的一个bug
  7. 【C++】Breaking Dependencies: The SOLID Principles - Klaus Iglberger - CppCon 2020 -知识点目录
  8. 简单冲裁模、连续冲裁模、复合冲裁模,你搞懂了吗?
  9. Redis(三十一)-Redis夺命三问之缓存穿透缓存击穿缓存雪崩
  10. 202112C语言二级真题