一、安装Docker

进入官网:https://www.docker.com/products/docker-desktop

可能需要先注册登录,很简单的。

点击 Download Desktop for Mac and Windows 后进入下载流程

选择for windows,点击Next Step开始下载。

我下载回来的包500多M,还是比较大的,双击安装即可。

安装完成后,打开cmd,运行:

docker -v

能正常显示出当前docker的版本号说明安装成功。

二、运行Nginx镜像

先进入网易云镜像中心:

https://c.163yun.com/hub#/m/home/

搜索 nginx,

我们直接使用第一个最新的。点开后,直接点“复制”,然后在终端中执行。

执行后pull nginx镜像,如下图所示为成功。

我们可以运行:

docker images

来查看是否真的拉取成功。

可以看到,已经有了。

接下来,我们就可以运行这个nginx镜像了。

运行镜像有两种方式:前台、后台。

前台运行

# 前台运行 nginx
docker run hub.c.163.com/library/nginx

通过上面的命令我们运行起了nginx,你会发现命令行什么反应都没有了(可以通过Ctrl + c来关闭)。

我们重开一个cmd,运行:

docker ps

查看是否成功运行了nginx。

可以看到,nginx正在运行。我们在之前的窗口Ctrl + c关闭它后,再运行 docker ps ,进程就会被关闭了。

后台运行

# 后台运行 nginx
# 增加参数 -d (detach) ,意思就是在后台运行镜像,返回镜像id docker run -d hub.c.163.com/library/nginx

执行后,

可以看到第一个就是了。

进入容器内部

docker exec命令用于进入容器内部, -it 是这个命令的可选参数。-i 表示保证我们输入有效,-t 是给我们分配一个伪终端,多个参数可以连起来写,就成了  -it

参数后边是容器名称或id,可以只输入开头的几个字符,它就会自动帮我们识别到。

那么接下来,我们运行命令:

docker exec -it 46a bash
# 46a 是我们上面运行的容器id头三位,您需要换成自己的

可以看到像是进入了一个新的主机。其实这确认是一个虚拟主机,因为我们的nginx本来就是运行在linux容器上,在这里我们可以执行linux的命令。

我们可以通过命令

which nginx

来查看nginx在什么位置

然后可以通过 exit 命令退出到之前的主机。

exit

停止容器

# docker stop [容器id]
docker stop 46a

三、让浏览器可以访问

我们上面虽然启动了nginx,但你可能已经发现,我们在浏览器中无法访问容器中的nginx。

我们先停止已经启动的容器,再执行下面的命令:

docker run -d -p 8080:80 hub.c.163.com/library/nginx

如果windows弹出防火墙提示,点击允许访问。

这个时候我们再来通过netstat命令检查一下是否真的打开了 8080端口

netstat -na|grep 8080

可以看到,已经是监听状态了。我们直接在浏览器中打开试试。

完成。

[Docker] Win10中安装Docker并运行Nginx镜像的更多相关文章

  1. Docker - 在CentOS 7中安装Docker

    1-确认系统信息 # cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) # uname -a Linux CentOS-7 3. ...

  2. win10上安装Docker

    方法1:具体我没有试过,不知道win10下可以么.http://blog.csdn.net/zistxym/article/details/42918339 方法2: 先安装VirtualBox(下载 ...

  3. 在deepin中安装docker

    用往常方法安装 一般在Linux中安装docker的时候都会使用这条命令 wget -qO- https://get.docker.com/ | sh 而在deepin这么做缺不行 打开网址即可发现支 ...

  4. 在Ubuntu中安装Docker和docker的使用

    1.在Ubuntu中安装Docker 更新ubuntu的apt源索引 sudo apt-get update 安装包允许apt通过HTTPS使用仓库 sudo apt-get install \ ap ...

  5. Docker - 在CentOS7中安装Docker

    在CentOS 7中安装Docker 1-确认系统信息 # cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) # uname - ...

  6. Docker学习笔记之-在CentOS中安装Docker

    上一节演示了如何 通过Xshell连接CentOS服务,链接:Docker学习笔记之-通过Xshell连接 CentOS服务 本节将演示 如何在CentOS中安装 Docker 第一步:更新系统包到最 ...

  7. ubuntu中安装Docker

    系统要求: 必须时64位的系统,内核最低要求是3.10 查看系统内核: $ uname -r 3.11.0-15-generic 获取最新版本打Docker: $ wget -qO- https:// ...

  8. 在Docker容器中安装jdk和spark

    在Docker容器中安装jdk和spark 1.下载jdk和spark 可以使用迅雷等专业下载软件下载jdk和spark软件包,注意是linux版,这里直接给出下载地址: JDK下载地址 JDK进入后 ...

  9. mac下idea中安装docker插件

    idea中安装docker插件: 点击Intellij IDEA->Preferences...->Plugins->Browse repositories...如下: 点击Inst ...

随机推荐

  1. MySQL(9)---纪录一次实际开发过程中用到的复杂存储过程

    Mysql(9)---纪录一次实际开发过程中用到的复杂存储过程 为了尽可能的还原当时为什么需要用到存储过程,下面我写了个详细的文档,我们可以从需求文档出发来分析. 有关存储过程之前也写了两篇文章来做铺 ...

  2. 【面试突击】-RabbitMQ常见面试题(一)

    rabbit面试题1.什么是rabbitmq采用AMQP高级消息队列协议的一种消息队列技术,最大的特点就是消费并不需要确保提供方存在,实现了服务之间的高度解耦 2.为什么要使用rabbitmq1.在分 ...

  3. Vue常用语法

    一.模板语法 1.双大括号表达式 [语法:] {{exp}} 用于向页面输入数据,即页面显示数据. [举例:] <!doctype html> <html lang="en ...

  4. push和pop的区别?

    1.push是什么?(推进) push就是推,延伸为推进.这个它是汇编的一个指令,(在其它语言中也可能会见到它).意思都是差不多的,就是把一个元素放入栈中.你可以假想栈是一个放光盘的那种盒子,有底没盖 ...

  5. Python使用DB-API操作MySQL数据库

    Python提供了一个标准数据库API,称为DB-API,用于处理基于SQL的数据库.与任何底层数据库的交互都可以使用DB-API,因为DB-API在代码与驱动程序之间提供了一个抽象层,可以根据需要替 ...

  6. Windows下使用ssh-add报错 Error connecting to agent: No such file or directory

    Windows下使用ssh-add报错 Error connecting to agent: No such file or directory 环境信息 操作系统:windows 10 终端:Win ...

  7. 不懂这个别说是刷机高手!安卓Recovery你知多少

    [PConline 应用]玩过安卓刷机的朋友相信都听说过Recovery,在刷机前,第一步往往是解锁手机,第二部就是刷入Recovery了.利用Recovery读取第三方Rom并刷入系统,才能实现刷机 ...

  8. JAVA中this和super用法

    参考网上资料和自行理解总结java中this和super中各自用法及其差异 <一>. this的用法 构造方法是创建java对象的重要途径,通过new关键字调用构造器时,构造器返回该类的对 ...

  9. python语法区别

    python语法区别: 大小写敏感 (动态语言:python)变量不用声明 p.s: 静态语言(Java)必须声明变量 语句末尾可以不打分号 可以直接进行数学计算 复制.粘贴功能失效,粘贴到别的地方的 ...

  10. jQ的select事件和trigger方法的小冲突

    方法和事件都不难理解,分开用也都没问题,但是一起用就有些小问题出现. 直接上结论:使用trigger方法触发一个文本类型的 input 元素的select事件时,chrome浏览器会错误的触发三次,f ...