资讯专栏INFORMATION COLUMN

Docker实战指南(二):在Docker中搭建Nginx服务器

Jensen / 2059人阅读

摘要:原文地址实战指南二在中搭建服务器学习最快的方法就是直接使用,在实战指南一介绍中,我们已经介绍了如何快速搭建,以及如何在中运行我们的第一个程序。

原文地址:Docker实战指南(二):在Docker中搭建Nginx服务器

Introduction

学习Docker最快的方法就是直接使用,在Docker实战指南(一):Docker介绍中,我们已经介绍了如何快速搭建Docker,以及如何在Docker中运行我们的第一个Hello World! 程序。这次我们将介绍如何快速地搭建一个实用的Nginx服务器。

需要做什么

我们需要做的工作包含两部分:

搭建一个包含Nginx服务器守护进程的Docker容器

使用一个BusyBox的Docker容器访问我们的Nginx服务器

你将看到利用Docker快速构建一个实用的Nginx服务器是多么的容易。

Help命令

Docker学习里面最重要的是什么?同其他程序一样,最重要的就是Help命令。
在命令行中敲入:

docker help

可以看到docker所支持的所有命令,当你希望看到某条命令的消息用法时,可以敲入:

docker help run

可以详细的看到run命令的用法。

创建一个Nginx服务器

很简单,只需要敲入以下命令:

docker run --detach --name web nginx

如果出现权限问题,请在最前面加入sudo:

sudo docker run --detach --name web nginx

这将会从Docker Hub中下载一个最新的包含Nginx的Docker镜像,并以守护进程的方式运行。
下载结束后,会产生一个类似

df4f04be4513c226759d0adebef7508775071aaa10dc69792cdb84889bd77692

的ID,这个就是这个运行中的Docker容器的唯一标志ID,某些Docker命令会使用这个ID.

查看Nginx服务器

如何查看启动的Nginx服务器?键入:

docker ps

如果出现权限问题,仍然是加sudo:

sudo docker ps

成功的话,你会看到类似下面的信息:

CONTAINER ID  IMAGE         COMMAND                 CREATED        STATUS        PORTS            NAMES
df4f04be4513  nginx:latest  "nginx -g "daemon off"  2 minutes ago  Up 2 minutes  80/tcp, 443/tcp  web
访问Nginx服务器

想访问一下在容器中的Nginx服务器,怎么操作呢?
由于namespace的存在,我们看到的80端口中的Nginx服务器,并不是存在于主机上的80端口,而是在Docker容器中的80端口。关于namespace的话题后面我们会介绍,这里采用最简单的方式来访问,即使用一个叫BusyBox的Docker容器访问我们的Nginx服务器。
创建BusyBox的Docker容器,并通过shell访问我们的Nginx服务器的Docker容器,敲入以下命令即可:

docker run --interactive --tty --link web:web --name my_tty busybox /bin/sh

如果出现权限问题,请在最前面加入sudo:

sudo docker run --interactive --tty --link web:web --name my_tty busybox /bin/sh

这个命令将下载一个最新的包括/bin/sh等命令的一个BusyBox的Docker镜像,并通过tty的方式进行交互,同时以非守护进程的方式运行/bin/sh.
成功后,将出现/bin/sh的提示符:

/ #

使用wget命令,访问我们的Nginx服务器:

/ # wget -O - http://web/

成功的话,你将看到一个title为Webcome to nginx!的HTML页面。

其他一些有用的命令 重启Docker容器

如果需要重启我们的Web服务器,敲入:

docker restart web
查看服务器日志

如果需要查看我们的Web服务器日志,敲入:

docker logs web

即可看到Web服务器的日志信息。

停止Docker容器

如果需要结束我们的Web服务器,敲入:

docker stop web

你可以通过docker ps命令,来观察发生了什么。

Summary

我们简单的介绍了如何利用Docker来搭建一个简单的Nginx服务器,以及通过BusyBox去访问。通过此实战,你应该对Docker有了更深入的体会。

(本文出自csprojectedu.com,转载请注明出处)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26701.html

相关文章

  • Docker实战指南(三):Docker镜像

    摘要:原文地址实战指南三镜像在实战指南二在中搭建服务器中,我们已经介绍了如何快速地搭建一个实用的服务器。这次我们将围绕镜像,介绍其使用方法。此外,你也可以通过访问,通过来搜索你需要的镜像。通过此实战,你应该对镜像有了更深入的体会。 原文地址:Docker实战指南(三):Docker镜像 Introduction 在Docker实战指南(二):在Docker中搭建Nginx服务器中,我们已经介...

    Donne 评论0 收藏0
  • 30 分钟快速入门 Docker 教程

    摘要:分钟快速入门教程一欢迎来到世界与虚拟化在没有的时代,我们会使用硬件虚拟化虚拟机以提供隔离。仓库分为公开仓库和私有仓库,最大的公开仓库是官方仓库,国内的公开仓库也有很多选择,例如阿里云等。 30 分钟快速入门 Docker 教程 一、欢迎来到 Docker 世界 1. Docker 与虚拟化 在没有 Docker 的时代,我们会使用硬件虚拟化(虚拟机)以提供隔离。这里,虚拟机通过在操作系...

    LucasTwilight 评论0 收藏0
  • 写这么多系列博客,怪不得找不到女朋友

    摘要:前提好几周没更新博客了,对不断支持我博客的童鞋们说声抱歉了。熟悉我的人都知道我写博客的时间比较早,而且坚持的时间也比较久,一直到现在也是一直保持着更新状态。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好几周没更新博客了,对不断支持我博客的童鞋们说声:抱歉了!。自己这段时...

    JerryWangSAP 评论0 收藏0
  • 30 分钟快速入门 Docker 教程

    摘要:分钟快速入门教程一欢迎来到世界与虚拟化在没有的时代,我们会使用硬件虚拟化虚拟机以提供隔离。仓库分为公开仓库和私有仓库,最大的公开仓库是官方仓库,国内的公开仓库也有很多选择,例如阿里云等。 原文地址:梁桂钊的博客博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」。一群同频者,一起成长,一起精进,打破认知的局限性。 30 分钟快速入门 Docker 教程...

    Binguner 评论0 收藏0
  • 30 分钟快速入门 Docker 教程

    摘要:分钟快速入门教程一欢迎来到世界与虚拟化在没有的时代,我们会使用硬件虚拟化虚拟机以提供隔离。仓库分为公开仓库和私有仓库,最大的公开仓库是官方仓库,国内的公开仓库也有很多选择,例如阿里云等。 原文地址:梁桂钊的博客博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」。一群同频者,一起成长,一起精进,打破认知的局限性。 30 分钟快速入门 Docker 教程...

    yexiaobai 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<