参考与入门推荐:https://www.cnblogs.com/ECJTUACM-873284962/p/9789130.html#autoid-0-0-9

最近学习docker,写一个简单构建Dockerfile的笔记。

我的系统:Windows 10

Docker版本:Docker for Windows

首先,我们打开cmd命令提示符,进入桌面,创建一个文件夹testdocker,然后在其中创建一个空的二进制文件Dockerfile。如下图所示:

编辑Dockerfile文件,在其中简单输入:

解释:

FROM nginx: 指定基础的镜像为nginx。

MAINTAINER GraceSkyer <graceskyer@foxmail.com>: 指定镜像创建者GraceSkyer和联系方式。

RUN echo '<h1>hello, Docker!</h1>' > /usr/share/nginx/html/index.html: 容器内部执行的命令(在index.html中输出‘hello, Docker!’)。

然后在Dockerfile文件所在目录下执行:

docker build -t graceskyer/nginx_web:v1 .

解释:-t 是为新镜像设置仓库和名称,其中 graceskyer 为仓库名, nginx_web 为镜像名, :v1 为标签(不添加为默认 latest )。

注意:最后有一个点‘.’,表示Dockerfile文件在当前的目录下。

 构建完成后可以查看镜像:docker images。如红框所示,说明构建成功。

然后启动容器:

docker run --name nginx_web -d -p : graceskyer/nginx_web:v1

解释:

“--name”:指定启动后的容器的名字为nginx_web

“-d”:在后台运行容器并输出容器id 

“-p”:把容器的端口“80”映射到我们的物理机“8080” 上

然后我们可以用浏览器去访问这个 nginx 服务器: http://localhost:8080/ 或者 http://本机的IP地址:8080/,页面返回信息:

Over! (*^▽^*)

docker学习笔记:简单构建Dockerfile【Docker for Windows】的更多相关文章

  1. Docker学习笔记之通过 Dockerfile 创建镜像

    0x00 概述 由于 Docker 镜像的结构优势,使它的占用空间远小于普通的虚拟机镜像,而这就大幅减少了 Docker 镜像在网络或者其他介质中转移所花费的时间,进而提高了我们进行迁移部署的效率.不 ...

  2. Docker学习笔记之常见 Dockerfile 使用技巧

    0x00 概述 在掌握 Dockerfile 的基本使用方法后,我们再来了解一些在开发中使用 Dockerfile 的技巧.这一小节的展现方式与之前的略有不同,其主要来自阅读收集和我自身在使用中的最佳 ...

  3. Docker学习笔记_使用Dockerfile创建flask的一个镜像

    一.实验环境 1.宿主机OS:Win10 64位 2 .虚拟机OS:Ubuntu18.04 64位    虚拟机名称:Ubuntu18VM1   虚拟机IP:192.168.8.25 3.账号:doc ...

  4. DOCKER 学习笔记2 认识dockerfile自定义镜像

    Dockerfile 概念 Dockerfile 是一个文本文件,但包含所构建容器在运行时候的参数.库.资源配置.可以简单理解为我们现有的镜像,比如Centos/Nginx 但我们需要构建一个容器的时 ...

  5. docker学习笔记18:Dockerfile 指令 VOLUME 介绍

    在介绍VOLUME指令之前,我们来看下如下场景需求: 1)容器是基于镜像创建的,最后的容器文件系统包括镜像的只读层+可写层,容器中的进程操作的数据持久化都是保存在容器的可写层上.一旦容器删除后,这些数 ...

  6. docker学习笔记-05:DockerFile解析

    一.DockerFile是什么 1.DockerFile是用来构建docker镜像的构建文件,是由一系列参数和命令构成的脚本. 2.构建三步骤: 手动编写一个dockerfile文件,然后直接dock ...

  7. Docker学习笔记之常用的 Docker Compose 配置项

    0x00 概述 与 Dockerfile 一样,编写 Docker Compose 的配置文件是掌握和使用好 Docker Compose 的前提.编写 Docker Compose 配置文件,其本质 ...

  8. Docker学习笔记1 -- 刚入手docker时的几个命令

    目录 Hello World 后台运行 停止运行 容器 载入镜像 指定端口映射 查看日志 查看应用的进程 登入镜像内部 移除容器 镜像 查看本地镜像 拉取镜像 查找镜像 更新镜像 构建镜像 设置镜像标 ...

  9. docker学习笔记(2)——docker常用命令

    参考博客: 1.官网教程:https://docs.docker.com/reference/ 可以一边敲命令一边对照官网学习,也可以通过阅读docker --help来学习 2..视频教程:http ...

  10. Docker学习笔记【四】Docker 仓库

    访问仓库,仓库是集中从存放镜像的地方.类似Maven. Docker Hub 目前由Docker官方维护的一个公共仓库,其中包括15000的镜像. 注册 在 https://hub.docker.co ...

随机推荐

  1. c#基础学习(0626)之占位符、转义符

    占位符 使用方法:先挖个坑,再填个坑. 使用占位符需要注意的地方: 1.你挖了几个坑,就应该填几个坑,如果填多了,没效果,如果填少了,出现异常 异常是指:语法上没有任何错误,只不过再运行的期间,由于某 ...

  2. BASE64转文件下载

    你可以用HTML 5 注意:返回的文件数据必须是base 64编码的,因为您不能对二进制数据进行JSON编码 在我的AJAX我得到了如下的数据结构: <!DOCTYPE html> < ...

  3. jQuery通过input标签的name获取值

    jquery根据name属性查找 $("div[id]") 选择所有含有id属性的div元素 $("input[name='keleyicom']") 选择所有 ...

  4. Flume - 快速入门

    关于Flume,官方定义如下: Apache Flume is a distributed, reliable, and available system for efficiently collec ...

  5. VS2015编译OpenSSL

    概述 OpenSSL 是一个开源的第三方库,它实现了 SSL(Secure SocketLayer)和 TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的 ...

  6. 一:idea中使用eclipse主题快捷键

    idea -->file -->import settings -->keymap-shkstart.jar 1 执行(run) alt+r 2 提示补全 (Class Name C ...

  7. VisualVM监控远程阿里云主机

    一.前言 使用VisualVM监控远程主机,主要是要在远程主机上部署JMX服务和jstat服务,jstat服务的部署花了我半天的时间,而且,网上的资基本都是缺胳膊少腿的,没有一篇是一个整体(行得通的) ...

  8. 新项目找不到Angular-cli.json文件

    新项目找不到Angular-cli.json文件 Angular-cli.json文件是Angular5中cli的相关配置信息. 今天创建了新Angular项目后突然发现Angular-cli.jso ...

  9. COGS2608 [河南省队2016]无根树

    传送门 这题大概就是传说中的动态树形DP了吧,学习了一波…… 首先,对于没有修改的情况,不难想到树形DP,定义$f_i$表示强制必须选$i$且只能再选$i$的子树中的点的最优解,易得转移方程$f_i= ...

  10. 原 java调整数据顺序是奇数位于偶数的前面(思路与实现)

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 思路一: 首先这 ...