此外,您还将学习如何创建Docker数据卷以在容器和主机文件系统之间共享信息。
Nginx是一款流行的开源软件,用于网络服务、反向代理、缓存、负载平衡等。它非常流行,并在当今许多高流量网站上使用。
Docker最常见的工作负载之一是使用它来容器化web服务器。我们将向您展示如何使用Nginx进行设置。那么,让我们带您了解整个过程。
相关:如何安装和配置NginxWeb服务器
Docker是一个容器化平台,它将您的应用程序打包成一个易于管理的容器映像。
先决条件
您必须满足以下要求才能完成本教程:
- Docker应该安装并在您的系统上本地运行。
- 您需要一个root帐户,或者用户可以运行sudo命令。
设置Nginx内部Docker
拖动图像
首先,我们将删除Nginx的官方图片。在终端上运行以下Docker pull命令,从Docker主机上的Docker hub下载Nginx最新镜像。
sudo docker pull nginx
运行Nginx Docker容器
我们已经准备好运行Nginx Docker容器,并将其端口暴露给您的本地网络。为此,我们使用以下命令运行映像:
sudo
码头工人
跑
d
80
:80
名称
我的nginx服务器
nginx
代码语言:
CSS
(
css
)
d
–以分离模式启动容器(容器在后台运行)。
–将端口从容器绑定到主机(将主机流量端口80路由到容器端口80)。
名称
–Docker容器的名称。
最后一个论点,
nginx
,告诉Docker要为容器使用哪个映像。
现在打开浏览器,将其指向运行Nginx容器的主机的地址。就我而言
http://192.168.122.101
。Nginx网络服务器默认页面应该向您致意。
就是这样。你有一个Nginx Docker容器的工作实例。
列出Docker容器
要列出所有正在运行的Docker容器,请执行以下命令:
sudo docker集装箱ls
基于以上输出,我们可以使用以下两种方法之一停止我们的Nginx Docker容器:
sudo docker停止19411f8b3f35
sudodocker停止我的nginx服务器
要查看所有容器,甚至是未运行的容器,您需要添加
一
旗帜。
sudo docker容器ls-a
Nginx Docker容器与主机之间的数据共享
Docker容器是短暂的。
默认情况下,在容器内创建的任何数据只能在容器内使用,并且只能在容器运行时使用。
因此,让我们向您展示如何在主机上访问容器内部的数据。我们的目标是创建一个简单的HTML文件,将其托管在容器中,并使用Nginx Docker容器在外部提供服务。
此设置允许我们在容器外部托管持久的网站内容。
为了实现这一功能,我们将在Docker中使用绑定挂载功能。
使用绑定装载时,主机上的文件或目录会装载到容器中。
因此,让我们首先在主目录中为您的网站内容创建一个新目录。
mkdir~/www
现在,让我们创建一个简单的HTML文件,并在索引页上放置一些文本。
vim~
/www/i
ndex.html
代码语言:
JavaScript
(
javascript
)
<
>
<
头
>
<
标题
>
Nginx Docker
</
标题
>
</
头
>
<
>
<
>
我的静态页面。
</
>
</
>
</
>
代码语言:
HTML,XML
(
xml
)
请复制上面的片段并粘贴到里面。然后,保存文件并退出Vim。
接下来,我们将运行Nginx Docker容器,容器上有附加的卷
/usr/share/nginx/html
到主机上的礼物
www
目录,其中
index.html
文件已保存。
docker运行-d-p
80
:
80
v
/网址:/u
sr/share/nginx/html/--将我的nginx服务器命名为nginx
代码语言:
JavaScript
(
javascript
)
Nginx容器默认设置为在
/usr/share/nginx/html/
。在上面的命令中
v
选项设置绑定装载卷,该卷链接
/
usr/share/nginx/html/
目录从Nginx Docker容器内部到
~/www
目录。
Docker使用冒号符号(
:
)以将主机的路径与容器路径分开。请记住,主机路径始终位于第一位。
同样,如果您浏览
http://192.168.122.101
,您将在浏览器窗口中获得以下给定输出。
仅此而已。您现在有一个正在运行的Nginx Docker容器,为自定义网页提供服务。
结论
Nginx和Docker合作得很好。本教程演示了如何设置和使用Nginx Docker容器。您还知道如何在容器和主机文件系统之间共享信息。
如有疑问,请留下您的意见。
在首次引入 Windows 大约 41 年后,记事本终于更新了自动更正和拼写检查功能。这家科技巨头于今年 3 月推出了拼...
大鱼 2024 年 7 月 9 日
在Ubuntu及其他基于Debian的Linux发行版中,软件包管理是系统维护的一个重要方面。apt和apt-get是两...
大鱼 2024 年 6 月 26 日
远程桌面是一种允许您远程接管和使用另一台计算机的服务。在Ubuntu中,可以在图形客户端机器上启用它来控制主机。此功能对...
大鱼 2024 年 5 月 7 日
利用当天的视频 苹果2024年5月的“放开”活动标志着iPad系列的一个重要里程碑,该公司推出了自成立以来最重大的升级。...
大鱼 2024 年 5 月 19 日
已升级到新iPhone,是否要从旧设备中移动所有照片?或者你只是想从别人的iPhone上转移照片?以下是在两部iPhon...
大鱼 2024 年 5 月 19 日