兜兜转转,Mac M1 安装 Nginx 的两种方式

你好,我是悟空。

一、背景

最近我在给新同学培训 Nginx,为了更好的达到教学和学习效果,想在我的 Mac 是 M1 芯片安装上 Nginx,而我的 Mac 是ARM 架构,操作系统的版本是 macOs 13.3.1,直接通过 brew 方式安装 Nginx 的话,安装不上,于是另辟西径。

报错信息如下:

vbnet 复制代码
Warning: You are using macOS 13.
We do not provide support for this pre-release version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Twitter or any other official channels. You are responsible for resolving
any issues you experience while you are running this
pre-release version.
​
Error: nginx: no bottle available!
You can try to install from source with:
  brew install --build-from-source nginx
Please note building from source is unsupported. You will encounter build
failures with some formulae. If you experience any issues please create pull
requests instead of asking for help on Homebrew's GitHub, Twitter or any other
official channels.

二、Mac M1 安装 Nginx 的方式

方式一:Mac 通过 Docker 方式安装 Nginx

方式二:Mac 安装虚拟机,再安装 ARM 架构的 Linux 操作系统,再安装 Nginx

三、Mac + Docker 方式安装 Nginx

3.1 下载 Docker Desktop

到官网下载 Docker Desktop 客户端。

官网地址:docs.docker.com/docker-for-...

选择 Apple Silicon(Apple 芯片)下载。

这个 Desktop 包含很多功能:

  • Docker Engine
  • Docker CLI client
  • Docker Compose
  • Notary
  • Kubernetes
  • Credential Helper

3.2 安装 Docker Desktop

之前在 Linux 环境安装 Docker 是通过命令行安装的,但是在 Mac 上有客户端可以使用,确实方便很多。安装 Mac 版的 Docker非常方便,下载完成后的文件名叫做 Docker.dmg。双击文件后,弹出如下界面,把 Docker.app 图标拖到右边 Appliactions 就可以了,就像左手拉右手。

安装完成后,在应用程序中找到 Docker,双击打开就可以了。

接着就可以看到 Docker 在菜单栏中有显示。

3.3 启动容器

打开的界面,会提示没有容器正在运行,客户端提示执行以下命令启动一个新的容器。

arduino 复制代码
docker run -d -p 80:80 docker/getting-started复制复制失败复制成功

我们将命令拷贝到控制台后运行,如下图所示:

然后我们来check 下容器是否创建和启动成功。通过以下命令来查看 docker 容器的运行状态。

复制代码
docker ps复制复制失败复制成功

我们同样可以通过 Docker 客户端来查看容器状态:容器正在运行中,对应的端口号是 80。如下图所示:

另外我们也可以看下有哪些镜像已经下载好了,如下图所示,目前有一个镜像:docker/getting-started。

3.4 安装 Nginx

在命令行窗口执行以下命令获取 Nginx 镜像:

复制代码
docker pull nginx:latest

然后执行运行 Nginx 容器的命令:

css 复制代码
docker run --name nginx -p 8072:80 -d nginx

最后我们可以通过浏览器可以直接访问 8072 端口的 nginx 服务:

四、Mac + 虚拟机方式安装 Nginx

4.1 Mac M1 安装 VMware

虚拟机我用的是 VMware Fusion Pro 13 Mac v13.0.2,支持安装 ARM 架构的操作系统。

4.2 安装 Ubuntu ARM

Ubuntu官方网站提供了ARM架构的Ubuntu Server镜像:

ubuntu.com/download/se...

下载完的 iso 镜像大小是 2.07 GB

下载完成后,您可以将ISO文件写入USB驱动器或光盘,并将其用作安装媒介来安装Ubuntu Server操作系统。安装过程类似于在x86架构上安装Ubuntu Server。

4.3 安装 Nginx

Nginx 在默认的 Ubuntu 源仓库中可用。想要安装它,运行下面的命令:

sql 复制代码
sudo apt update
sudo apt install nginx

复制

一旦安装完成,Nginx 将会自动被启动。你可以运行下面的命令来验证它:

lua 复制代码
sudo systemctl status nginx

输出类似下面这样:

状态为 active(running)表示运行成功。

相关推荐
吴建旭 智宅焕25 分钟前
智能家居全国交付中双边平台冷启动的供给治理架构:从预期管理到分层调度
架构·智能家居
小溪学编程1 小时前
Spring @Bean 与 @Component 注解的区别详解
java·后端·spring
IT_陈寒1 小时前
Python的列表推导式用不好真的会爆内存你知道吗
前端·人工智能·后端
得助智能-垂类大模型1 小时前
降低大模型推理成本:2026企业级模型推理平台核心架构与选型指标
架构
伯奥克客服2 小时前
2026年专业全域智能管控平台怎么选?底层架构与协议对接深度解析
架构
海宇服务2 小时前
零信任架构实战:基于海宇全国车辆配置查验构建自动化二手商用车出厂参数建档网关
运维·人工智能·架构·自动化·1024程序员节
代码方舟2 小时前
零信任架构实战:基于天远人企关联构建自动化供应链核心企业关联穿透与利益冲突审查网关
java·人工智能·架构·自动化
奈落242 小时前
Dify 管对话、n8n 管执行:把‘大脑+手脚‘的组合架构对照三方平台资料读清楚
人工智能·架构·agent·ai 办公
qianbo_insist2 小时前
# 在 Qwen3.5-2B 上把 GDN-1 无损换成 GDN-2:一次完整的架构手术实验(负结果)
人工智能·pytorch·python·架构
摸爬滚打的小李3 小时前
TomCat
后端