dockerfile制作笔记
| dockerfile语法格式: | |
| FROM: 基础镜像(就是在什么镜像上面做) | |
| MAINTAINER: 镜像创建者信息(作者的信息) | |
| EXPOSE: 开放的端口 | |
| ENV: 设置变量 | |
| ADD: 复制文件到镜像(从数组机里把文件塞到docker容器里) | |
| RUN: 制作镜像时执行的命令,可以有多个 | |
| WORKDIR: 定义容器默认工作目录 | |
| CMD: 容器启动时执行的命令,仅可以有一条CMD(要在方括号里面有参数以逗号分隔) | |
| 步骤: | |
| 先随便创建一个文件夹,然后在里面touch一个叫Dockerfile的文件(注意: 文件名一定要叫Dockerfile),然后在Dockerfile文件里编辑(注意开头一定要大写!!!) 如下: | |
| FROM centos:latest #基于什么镜像做 | |
| RUN rm -f /etc/yum.repos.d/*.repo | |
| ADD local.repo /etc/yum.repos.d/local.repo #把数组机的文 件塞到容器里 | |
| RUN yum -y install net-tools vim bash-comletion psmisc | |
| #装软件加-y避免交互 | |
| :wq | |
| docker build -t testos:latest . | |
| #在命令行上敲,制作,-t 指定叫什么名字,后面的点代表当前目录,提前把要塞进去的文件复制到自己的这个目录里 | |
| #交互式容器不要加d 服务容器一定要加d !!! | |
| 制作sshd版dockerfile: | |
| FROM myos:latest | |
| RUN yum -y install openssh-server-7.4p1-11.el7.x86_64 initscripts-9.49.39-1.el7.x86_64 | |
| RUN sshd-keygen && echo 'aa' | passwd --stdin root | |
| ENV EnvironmentFile=/etc/sysconfig/sshd | |
| EXPOSE 22 | |
| CMD ["/usr/sbin/sshd", "-D"] |
dockerfile制作笔记的更多相关文章
- Docker入门系列之三:如何将dockerfile制作好的镜像发布到Docker hub上
这个系列的前两篇文章,我们已经把我们的应用成功地在Docker里通过nginx运行了起来,并且用dockerfile里制作好了一个镜像. Docker入门系列之一:在一个Docker容器里运行指定的w ...
- Docker 0x05: Dockerfile制作镜像
目录 Dockerfile制作镜像 一句话什么是dockerfile dockerfile脚本指令 小结 Dockerfile制作镜像 dockerfile 可以是制作自己镜像的脚本文件,按照这个脚本 ...
- Docker之dockerfile制作jdk镜像
目的: Dockerfile简介 Dockerfile制作jdk镜像 Dockerfile简介 了解dockerfile之前要先了解Docker基本概念和使用可参考:https://www.cnblo ...
- 基于Dockerfile制作tomcat镜像
Docker 概述: 在前面的例子中,我们从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低.所以就需要一种文件或脚本,我们把想执行的操 ...
- DOCKER学习_011:使用Dockerfile制作docker镜像
前面使用commit的方式,制作一个docker镜像,本次介绍使用Dockerfile制作一个dockers镜像 [root@docker-server3 ~]# mkdir /openssh [ro ...
- Docker系列(24)- 实战:DockerFile制作tomcat镜像
实战:DockerFile制作tomcat镜像 step-1 准备镜像文件 tomcat压缩包,jdk压缩包! step-2 编写dockerfile文件,官方命名Dockerfile,build会自 ...
- flash文件制作笔记
在uboot串口台输入printenv 可以分区以及其他信息,如下 hisilicon # printenv bootdelay=1baudrate=115200ethaddr=00:00:23:34 ...
- 使用Dockerfile制作自己的Docker镜像
一.背景 一直以来的开发流程都是先从Docker Hub中获取到基础镜像,之后在这个镜像的基础上做开发,以满足一定的需求或者提供某种服务,并由此产生新的镜像,然后就可以push到Docker Hub中 ...
- 使用Dockerfile制作JDK+tomcat镜像
1.准备好jdk和tomcatapache-tomcat-8.5.32.tar.gzjdk-8u181-linux-x64.tar.gz 注意:a.jdk和tomcat记得从官网下载,否则制作出来的镜 ...
随机推荐
- c++中的类(构造函数,析构函数的执行顺序)
类对象的初始化顺序 新对象的生成经历初始化阶段(初始化列表显式或者隐式的完成<这部分有点像java里面的初始化块>)——> 构造函数体赋值两个阶段 1,类对象初始化的顺序(对于没有父 ...
- Linux添加用户到sudoers组
切换用户至rootvim /etc/sudoers 找到root ALL=(ALL) ALL,在下方新增 stack ALL=(ALL) NOPASSWD: ALL w ...
- Buffer-Overflow Vulnerability Lab
实验概述 Buffer overflow 定义 Buffer overflow is defined as the condition in which a program attempts to ...
- bash脚本计算某程序的进程数
脚本里面有时候需要判断某个程序是否启动,以及有几个进程下面用nginx来做实例 显示所有的nignx进程 ps -ef|grep nginx |grep -v grep 其中grep -v grep表 ...
- 一、基础篇--1.1Java基础-抽象类和接口的区别
抽象类和接口的区别 抽象类和接口在设计层面的区别主要体现在:接口是对动作的抽象,抽象类是对根源.类的抽象.抽象类表示的是,这个对象是什么,接口表示的是,这个对象可以做什么. 比如,男人.女人是人,人是 ...
- vue模板快速生成
vue模板快速生成 vue 模板 快速生成 每一次都手动敲重复代码的话,是一个很繁琐的事情,通过vscode自带代码片段可以解决我们大部分问题 文件 => 首选项 => 用户代码片段=& ...
- Linux_系统时间管理
目录 目录 时间管理 date指令 系统时间设置timedatectl指令 本地时间同步 时间服务器NTP RHEL6 RHEL7 计划任务 一次性计划任务 at指令 限制用户建立一次性计划任务 周期 ...
- 系统分析与设计HW2
简答题 1. 简述瀑布模型.增量模型.螺旋模型(含原型方法)的优缺点. 瀑布模型 优点: 定义了软件开发基本流程与活动. 为项目提供了按阶段划分的检查点. 当前一阶段完成后,只需关注后续阶段. 缺点: ...
- multiple datasource config
Hi Harshit S. project structure: multiple datasource config as follows: step 1: step 2:add a datasou ...
- 中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零
期末考试的编程题 返回 这是期末考试的编程题,在60分钟内,你可以多次提交,直到正确为止. 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止 ...