将 nginx conf 挂载为 docker 卷会导致系统错误 boot2docker

2024-01-16

我正在尝试在 docker 容器中运行 nginx,同时安装配置和静态 html 文件以供其使用。据我所知,非常简单的东西,但我不断收到有关该目录不是目录的错误?

我使用最新版本的 Boot2Docker 在 Mac 上运行此示例。

我有以下文件夹结构:

% tree                 ~/Projects/Docker/nginx-example
.
├── html
│   └── test.html
└── nginx.conf

1 directory, 2 files

的内容nginx.conf如下:

http {
  server {
    listen *:80; # Listen for incoming connections from any interface on port 80
    server_name ""; # Don't worry if "Host" HTTP Header is empty or not set
    root /usr/share/nginx/html; # serve static files from here
  }
}

我尝试运行容器(从~/Projects/Docker/nginx-example目录)像这样:

docker run --name nginx-container \
  -v /Users/M/Projects/Docker/nginx-example/html:/usr/share/nginx/html:ro \
  -v /Users/M/Projects/Docker/nginx-example/nginx.conf:/etc/nginx:ro \
  -P -d nginx

最初我尝试过类似的事情-v $(pwd)/html:/usr/share/nginx/html:ro为了使命令更短,但是当它不起作用时,我想我应该明确地说明,以防出现一些我不知道的时髦的子 shell 问题

我得到以下输出

fc41205914098d236893a3b4e20fa89703567c666ec1ff29f123215dfbef7163
Error response from daemon: 
Cannot start container fc41205914098d236893a3b4e20fa89703567c666ec1ff29f123215dfbef7163: 
[8] System error: not a directory

有人知道我缺少什么吗?

Mac Boot2Docker 卷问题?

我知道使用 Boot2Docker 时将卷安装到容器中存在问题(尽管我相信这个问题早已得到解决)

i.e. 将卷挂载到 OSX 上的 Docker 映像 https://stackoverflow.com/questions/26348353/mount-volume-to-docker-image-on-osx/27540955#27540955

但我无论如何都按照那里的说明进行操作,但仍然不起作用


-v /Users/M/Projects/Docker/nginx-example/nginx.conf:/etc/nginx:ro

您正在尝试将文件安装到目录 - 将其更改为:

-v /Users/M/Projects/Docker/nginx-example/nginx.conf:/etc/nginx/nginx.conf:ro你应该没问题。看一下中的示例Docker 卷文档 https://docs.docker.com/userguide/dockervolumes/

还有,pwd应该在路径中工作。 shell 在 docker 命令运行之前扩展它,就像数学和内括号一样,首先运行内部子命令。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 nginx conf 挂载为 docker 卷会导致系统错误 boot2docker 的相关文章

随机推荐

  • 预处理器愚蠢的做法(对 #include 进行字符串化)

    注意 这个问题与 OpenCL 本身无关 请检查最后一段以获取我的问题的简洁陈述 但提供一些背景 我正在编写一些使用 OpenCL 的 C 代码 我喜欢将 OpenCL 内核的源代码保存在自己的文件中 以便于编码和维护 而不是直接将源代码作
  • 如何获取 YouTube 视频的 mp4/mov/m4v 视频链接?

    我们可以获取 youtube 上加载的任何视频的文件 url 吗 我不喜欢在我的应用程序中使用 youtube 播放器 并且想使用 MPMoviePlayerController 的实例启动它 PS 也会将其标记为 php 因为跨域的开发人
  • 实体框架提供列名称作为字符串变量

    我正在寻找获得这样的东西的方法 string col1 first name string name var query from c in ctx Customers select c name query FirstOrDefault
  • 如何删除 python 中输出末尾的空格?

    我有一个程序可以计算并打印句子中包含特定字符的所有单词 忽略大小写 Python 代码 item input ip input tolower r ip count item print r ip ip split for word in
  • 如何使用 C# 搜索一系列范围值

    我有一个像这样的值列表 1000 20400 22200 24444 范围不重叠 我想要做的是有一个 C 函数 可以存储 从数据库加载的值 然后在本地缓存 这些值的相对较大的列表 然后有一个方法来查找提供的值是否在任何范围内 这有道理吗 需
  • 需要 GLbc 优化

    为什么无法重新编译 GLibc 并关闭所有优化 即 O0 特别是在这样做时 make CFLAGS O0 w CXXFLAGS O0 w I get error glibc cannot be compiled without optimi
  • 使用未声明的类型“日期”Xcode 9 Swift 4

    这是我在 xcode 9 Playground 中的代码 class Tutorial Codable let title String let author String let editor String let type String
  • 从正则表达式模式返回不匹配的行

    如果我有一个看起来像这样的 pandas 数据框 Sequence Rating 0 HYHIVQKF 1 1 YGEIFEKF 2 2 TYGGSWKF 3 3 YLESFYKF 4 4 YYNTAVKL 5 5 WPDVIHSF 6 这
  • 使用具有多个输入的 grepl 分配组

    我有一个数据框 df lt data frame name c john david callum joanna allison slocum lisa id 1 7 df name id 1 john 1 2 david 2 3 call
  • 在 PHP 中从 JSON 数组中提取特定键值 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我收到来自
  • DBus与其他进程间通信方式的区别

    当我研究Linux进程间通信时 我知道有一些方法 管道 消息队列 套接字 信号 共享内存 信号量 并且没有名为Dbus的方法 但是今天 当我研究 Dbus 时 我读到 D Bus 是一个进程间通信 IPC 系统 请参阅 该链接 https
  • React 中的 msal.js - Azure 身份验证

    我收到错误 但 azure 中的所有访问都正常 也许我的端点是错误的 你有什么想法吗 错误 APP TEST 需要访问组织中只有管理员才能授予的资源的权限 请先请求管理员授予此应用程序的权限 然后才能使用它 我用这个 example 租户I
  • 如何跟踪SQL Server中记录的变化?

    我有下表 其中包含所有学生的跟踪记录 ID Department Date 001 English Feb 3 2017 001 English Feb 4 2017 001 Science Mar 1 2017 001 Science A
  • 程序仅在调试器之外的发布模式下崩溃

    我有相当庞大的程序 gt 10k 行 C 代码 从 Visual Studio 中启动时 它可以在调试模式或发布模式下完美运行 但从命令行手动启动时 发布模式二进制文件通常会崩溃 并不总是 带删除的行导致崩溃 bool Save const
  • 基于时间的通知架构

    我正在设计一个通知服务 服务器 我可以有两种通知 一种是立即发送 另一种是在将来的某个时间发送 是否有一个框架来处理未来的通知 我知道我可以编写后台工作人员 例如 他们可以对数据库进行采样以查找需要发送的通知 但我确信数百万人已经尝试解决这
  • 构建在 codeigniter 之上的 PHP 应用程序可以同时连接到 MySQL 和 mongoDB 数据库吗?

    我有一个内置于 codeigniter 并托管的 Web 应用程序云控 http www cloudcontrol com 我使用普通的 MySQL 数据库来进行所有数据持久化 现在除了 MySQL 数据库之外 我还想使用 mongodb
  • iPhone/iPad 触发意外的调整大小事件

    我正在开发我的网站的移动版本 我尽可能多地使用媒体查询和 CSS 但我也使用一些 javascript 例如 将导航转换为较小设备上的折叠 展开列表以节省空间 为了处理所有这些 我尝试使用 window resize 事件 这使得桌面浏览器
  • 如何测试用户输入的字符串是否在列表中?

    我是 Python 新手 我正在尝试制作一个脚本 让用户选择打开 Windows 命令提示符等程序 由于 Windows 命令提示符也是使用 cmd 打开的 因此我希望用户能够同时键入两者并获得相同的结果 我知道我可以将它放在多个 elif
  • 关键点匹配只能工作两次......? (java opencv)

    我有一个非常奇怪的问题 我正在使用此代码来检测另一个代码中的图像 java opencv 更新的代码 public void startRecognition load images I want to find img object in
  • 将 nginx conf 挂载为 docker 卷会导致系统错误 boot2docker

    我正在尝试在 docker 容器中运行 nginx 同时安装配置和静态 html 文件以供其使用 据我所知 非常简单的东西 但我不断收到有关该目录不是目录的错误 我使用最新版本的 Boot2Docker 在 Mac 上运行此示例 我有以下文