3.Dockerfile
dockerfile的命令都是大写的,比如:FROM、RUN等
一条指令构建一层, 创建一个新的容器
3.1.FROM基础镜像
必须是第一条指令
FROM nginx服务镜像
FROM ubuntu 基础的操作系统镜像
Scratch空白镜像
FROM scratch 不以任何镜像为基础
3.2.COPY复制文件到容器中
COPY ./test test
容器中当前路径是/
等价于COPY ./test /test
3.3.RUN执行命令
新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。
Shell格式
RUN echo ‘
Hello, Docker!
’ > /usr/share/nginx/html/index.html #注释
Shell命令后面可以加注释, 必须空格隔开
Exec格式
RUN [“可执行文件”, “参数1”, “参数2”]
2层镜像, 增加了构建部署的时间
FROM nginx
RUN #注释
RUN echo ‘
Hello, Docker!
’ > /usr/share/nginx/html/index.html #行尾注释
简化成1层镜像
FROM nginx
RUN #注释
RUN echo ‘
Hello, Docker!
’ > /usr/share/nginx/html/index.html #行尾注释
3.4.Demo1:格式
构建镜像, 制定镜像名称, 后面方便删除
sudo docker build -t ng:v3 .
查看镜像
启动容器, --name指定容器名称, 方便使用和删除
光标在左下角闪烁
新开窗口
查看容器
进入容器
Ctrl+c关闭容器
删除容器
删除镜像
3.5.Demo2:java项目
Dockerdemo项目
Idea中maven-Package打包后,
Windows用java -jar user.jar启动成功
Linux上 git拉取代码
Pom.xml路径下, 编辑Dockerfile文件
FROM openjdk:8
COPY ./target/user.jar app.jar
ENTRYPOINT [“java”,"-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar","–spring.profiles.active=dev"]
-Djava.security.egd=file:/dev/./urandom解决tomcat随机数的问题, 但是我不加的话也是成功的.
Docker build -t user .
docker run --name us2 -d -p 9003:9001 user
用9003端口访问服务了
user ok
docker run --name us3 -d -p 9002:9001 user
启动两个容器, 就是应用集群了
用nginx负载均衡
3.Dockerfile相关推荐
- 在Dockerfile中设置G1垃圾回收器参数
在Dockerfile中设置G1垃圾回收器参数 ENV JAVA_OPTS="\ -server \ -XX:SurvivorRatio=8 \ -XX:+DisableExplicitGC ...
- 在k8s中使用gradle构建java web项目镜像Dockerfile
在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...
- Dockerfile springboot项目拿走即用,将yml配置文件从外部挂入容器
Dockerfile 将springboot项目jar包打成镜像,并将yml配置文件外挂. # 以一个镜像为基础,在其上进行定制.就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜 ...
- Dockerfile 入门看这篇就够了
在使用docker时,有很多像往容器中复制war包.修改容器配置之类的操作,很繁琐,配置失败或异常时就又是一遍重复的操作,这时候,就要用到这个脚本文件–Dockerfile 以下是我对Dockerfi ...
- IDEA的Docker插件实战(Dockerfile篇)
IDEA的Docker插件实战(Dockerfile篇) IntelliJ IDEA的Docker插件能帮助我们将当前工程制作成Docker镜像.运行在指定的远程机器上,是学习和开发阶段的好帮手,本文 ...
- Docker 入门系列(7)- Dockerfile 使用(FROM、RUN、CMD、EXPOSE、ENV、ADD、COPY、ENTRYPOINT、VOLUME、WORKDIR)
Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 来快速创建自定义的镜像. 1. 基本结构 Dockerfile 由一行行命令语句组成,并且支持以 # 开头的注释行. ...
- dockerfile kafka
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/a2267378/article/det ...
- Dockerfile构建实践
Dockerfile构建实践 本文介绍了用于构建有效图像的推荐最佳实践和方法. Docker通过从一个Dockerfile文本文件中读取指令来自动构建映像,该文本文件按顺序包含构建给定映像所需的所有命 ...
- 客快物流大数据项目(十四):DockerFile介绍与构建过程解析
目录 DockerFile介绍与构建过程解析 一.什么是Dockerfile 1.介绍 2.Dockerfile构建步骤
- Docker核心技术之Dockerfile
一.Dockerfile简介 Dockerfile其实就是根据特定的语法格式撰写出来的一个普通的文本文件 利用docker build命令依次执行在Dockerfile中定义的一系列命令,最终生成一个 ...
最新文章
- 图像拼接--Parallax-tolerant Image Stitching
- 哇哦!恍然大悟般的“share”功能的实现!
- Hibernate 异常 Unable to instantiate default tuplizer
- 1.5 训练/开发/测试集划分-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
- MacOS 常用终端命令大全
- bash下个人习惯的一些文件设置
- input的属性AutoComplete——关闭浏览器文本框自动提示
- php多图片上传程序2.4.3,php多文件上传 多图片上传程序代码
- react调用api等待返回结果_React新Context API在前端状态管理的实践
- Emacs镜像ELPA
- 操作Zookeeper
- php foreach 过滤条件_PHP+Redis实现延迟任务实现完成订单
- 第二次软件工程作业——模仿节奏大师官网制作的网页
- Redis源码分析之内存检测memtest
- 大作家超级写作软件_3种对作家有用的Atom文本编辑器软件包
- 一款强大的无损音乐的下载器:洛雪音乐助手手机版
- R语言 面板数据分析 plm包实现(二)——随机效应模型
- ASR中常用的语音特征之FBank和MFCC(原理 + Python实现)
- 适合运动的耳机有哪些、最好用的五款运动型耳机推荐清单
- 瑜伽修身 偷师动物12招(组图)