要将服务器容器中的文件夹通过 NFS 挂载到本地 Mac 电脑，需要完成服务器端（容器所在主机）和客户端（Mac）的配置，步骤如下：


### **一、服务器端配置（容器所在的 Linux 主机）**
1. **安装 NFS 服务**  
   在服务器主机（不是容器内）安装 NFS 服务：
   ```bash
   # Ubuntu/Debian
   sudo apt update && sudo apt install nfs-kernel-server
   
   # CentOS/RHEL
   sudo yum install nfs-utils
   ```

2. **准备要共享的目录**  
   假设容器中的目录为 `/container/data`，且已通过 `-v /host/data:/container/data` 挂载到主机的 `/host/data`。我们需要共享主机的 `/host/data`：
   ```bash
   # 确保目录存在并设置权限
   sudo mkdir -p /host/data
   sudo chmod 777 /host/data  # 简化权限，生产环境需谨慎设置
   ```

3. **配置 NFS 共享**  
   编辑 NFS 配置文件 `/etc/exports`，添加允许 Mac 访问的规则：
   ```bash
   sudo nano /etc/exports
   ```
   添加内容（替换 `MAC_IP` 为你的 Mac 本地 IP）：
   ```
   /host/data  MAC_IP(rw,sync,no_subtree_check,insecure)
   ```
   - `rw`：读写权限  
   - `sync`：同步写入磁盘  
   - `insecure`：允许非标准端口（Mac 可能需要）

4. **生效配置并重启服务**  
   ```bash
   # 刷新共享配置
   sudo exportfs -a
   
   # 重启 NFS 服务
   sudo systemctl restart nfs-kernel-server  # Ubuntu/Debian
   # 或
   sudo systemctl restart nfs-server        # CentOS/RHEL
   ```

5. **开放防火墙端口**  
   确保服务器防火墙允许 NFS 相关端口（2049、111 等）：
   ```bash
   # UFW 防火墙（Ubuntu）
   sudo ufw allow from MAC_IP to any port nfs
   sudo ufw allow 111/tcp
   sudo ufw allow 111/udp
   ```


### **二、Mac 客户端配置**
1. **创建本地挂载点**  
   在 Mac 上创建一个目录用于挂载：
   ```bash
   mkdir -p ~/nfs_mount
   ```

2. **挂载 NFS 共享**  
   使用 `mount` 命令挂载服务器共享（替换 `SERVER_IP` 为服务器 IP）：
   ```bash
   sudo mount -t nfs SERVER_IP:/host/data ~/nfs_mount
   ```

3. **验证挂载**  
   查看是否挂载成功：
   ```bash
   df -h  # 查看挂载信息
   ls ~/nfs_mount  # 查看共享目录内容
   ```


### **三、卸载挂载（可选）**
需要断开连接时，执行：
```bash
sudo umount ~/nfs_mount
```


### **注意事项**
1. **容器与主机的挂载关系**：必须确保容器内的目录已正确挂载到主机，否则 NFS 共享的是主机空目录。
2. **权限问题**：若出现权限错误，检查服务器目录权限（`chmod`）和 NFS 配置中的 `rw` 选项。
3. **IP 地址**：Mac 和服务器需在同一网络，且 IP 地址需正确（可通过 `ifconfig` 查看 Mac 本地 IP）。

通过以上步骤，即可在 Mac 上直接访问服务器容器中的文件。