MacOS使用docker安装nginx

一、docker安装nginx

Docker是一个跨平台的轻量级虚拟机,可移植性非常高,一次部署,终生可用。Docker可以在Linux,Windows,MacOS等平台上安装使用。我们都知道Linux有很多不同 的版本,例如Ubuntu,AIX,CentOS,Debian,Fedora,Oracle Linux,Red Hat Enterprise Linux,openSUSE and SUSE Linux Enterprise等。尽管Linux的版本很多,但是我们的Docker都可以在他们在面运行。

1、查看可用的nginx

首先查看可用的nginx:

docker search nginx

在这里插入图片描述

2、安装Nginx镜像

$docker pull nginx

在这里插入图片描述

一般默认都是latest

3、查看是否安装成功

执行命令查看是否安装成功:

docker images

4、安装成功后执行nginx

docker run --name myNginx -p 8080:80 -d nginx

参数说明:
-name nginx-test:容器名称。
-p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
-d nginx: 设置容器在在后台一直运行。

5、查看容器

docker ps -a ### 所有容器,包括未运行

6、本地验证

在这里插入图片描述
上面我们通过将本地8080端口映射到docker容器的80端口上实现了nginx的访问。一般为了方便修改和配置,我们将配置文件挂载到本地磁盘上。

二、创建本地挂载文件

一般情况下docker启动时进行配置,只要把配置文件的目录挂载出来就可以,但是nginx却是先加载一个主配置文件nginx.conf,在nginx.conf里再加载conf.d目录下的子配置文件(一般最少一个default.conf文件)。

docker拉取下来的nginx配置文件路径一般情况下是:
日志文件位置:/var/log/nginx
配置文件位置: /etc/nginx
资源存放的位置: /usr/share/nginx/html

所以本地创建对应的目录,并将目录挂在到docker容器的nginx上。


1、第一步:宿主机创建目录

mkdir -p  /Users/moon/Documents/docker/nginx/log
mkdir -p  /Users/moon/Documents/docker/nginx/html
mkdir -p  /Users/moon/Documents/docker/nginx/conf
mkdir -p  /Users/moon/Documents/docker/nginx/conf.d(注意:这是文件夹)

mkdir -p 递归创建目录

2、第二步:将docker安装的nginx里面文件复制到宿主机

docker cp myNginx:/etc/nginx/nginx.conf /Users/moon/Documents/nginx/conf/nginx.conf
docker cp myNginx:/etc/nginx/conf.d/default.conf /Users/moon/Documents/docker/nginx/conf/conf.d/default.conf

3、第三步:运行镜像

docker run --name myNginx -p 8080:80 -v /Users/moon/Documents/nginx/config/nginx.conf:/etc/nginx/nginx.conf -v /Users/moon/Documents/nginx/config/conf.d:/etc/nginx/conf.d -v /Users/moon/Documents/nginx/logs:/var/log/nginx -v /Users/moon/Documents/docker/nginx/html:/usr/share/nginx/html -d nginx

参数说明:

  1. 第一个“-v”,是nginx日志位置,把ngixn日志放到挂载到的目录下
  2. 第二个“-v”,是项目位置,把项目放到挂载到的目录下即可
  3. 第三个“-v”,是挂载的主配置文件"nginx.conf",注意"nginx.conf"文件内有一行 “include /etc/nginx/conf.d/*.conf;” , 这个include指向了子配置文件的路径,此处注意include后所跟的路径一定不能出错
  4. 第四个“-v”,把docker内子配置文件的路径也挂载了出来,注意要与 “2.” 中include指向路径一致
  5. nginx.conf是挂载了一个文件(docker是不推荐这样用的),conf.d挂载的是一个目录

4、执行命令查看挂载情况

docker inspect myNginx | grep Mounts -A 200

到这里为止我们就可以随意的修改我们的nginx了,在本地的html文件夹和conf.d中任意增加代码和配置,在docker容器中重新启动nginx就可以了。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
为了在Mac安装nginx,你可以按照以下步骤进行操作: 1. 首先,推荐使用Docker for Mac客户端。你可以从这里下载并安装: 2. 下载并安装Docker for Mac之后,你可以使用阿里云的镜像加速器来加快下载速度。你可以在这里找到使用教程: 3. 安装完成后,你可以执行以下命令来检查是否成功安装Docker:`docker images` 4. 接下来,你可以执行以下命令来安装nginx镜像并运行:`docker run --name myNginx -p 8080:80 -d nginx` 5. 安装成功后,你可以将nginx的配置文件复制到本地。使用以下命令:`docker cp zen-nginx:/etc/nginx /Users/zenkin/Documents/00-个人档/11-docker/demo-nginx/config/` 这样,你就成功在Mac安装nginx并且可以运行了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Mac安装docker+nginx+挂载文件详细体验](https://blog.csdn.net/zenkin/article/details/108612594)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [MacOS使用docker安装nginx](https://blog.csdn.net/weixin_47061482/article/details/131146661)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只IT攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值