【问题标题】:Error cannot start services after running docker-compose up -d using Laradock使用 Laradock 运行 docker-compose up -d 后出现错误无法启动服务
【发布时间】:2020-08-21 22:45:19
【问题描述】:

我刚刚运行docker-compose up -d nginx mysql redis 第一次在 Mac OSX 10.13.6 High Sirra 上安装 docker。看来我

警告:服务 nginx 的映像已构建,因为它尚未构建 存在。要重建此映像,您必须使用 docker-compose builddocker-compose up --build。创建 laradock_docker-in-docker_1 ... 错误创建 laradock_mysql_1 ... 创建 laradock_workspace_1 ... 创建 laradock_redis_1
...

创建 laradock_mysql_1 ... 错误 X 并且未知 Docker。\r\n你可以从 Docker 配置共享路径 -> 首选项... -> 文件共享。\r\n请参阅 https://docs.docker.com/docker-for-mac/osxfs/#namespaces 了解更多 信息。\r\n.'

错误:对于 laradock_mysql_1 无法启动服务 mysql:b'Mounts 拒绝:\r\n路径 /Applications/MAMP/htdocs/community-messenger/laradock/mysql/docker-entrypoint-initdb.d\r\nisCreating laradock_workspace_1 ... 更多错误 fs/#namespaces 信息。\r\n.'

错误:对于 laradock_workspace_1 无法启动服务工作区: b'Mounts denied: \r\n路径 /Applications/MAMP/htdocs/community-messenger\r\nis 未从操作系统共享 X 并且 Docker 不知道。\r\n你可以从 Docker -> 首选项... -> 文件共享。\r\n见 https://docs.docker.com/docker-for-mac/osxfs/#namespaces 了解更多 信息。\r\n.创建 laradock_redis_1 ...完成

错误:对于 docker-in-docker 无法启动服务 docker-in-docker: b'Mounts denied: \r\n路径 /Applications/MAMP/htdocs/community-messenger\r\nis 未从操作系统共享 X 并且 Docker 不知道。\r\n你可以从 Docker -> 首选项... -> 文件共享。\r\n见 https://docs.docker.com/docker-for-mac/osxfs/#namespaces 了解更多 信息。\r\n.'

ERROR: for mysql Cannot start service mysql: b'Mounts denied: \r\nThe 小路 /Applications/MAMP/htdocs/community-messenger/laradock/mysql/docker-entrypoint-initdb.d\r\nis 不从 OS X 共享,并且不为 Docker 所知。\r\n你可以配置 来自 Docker 的共享路径 -> 首选项... -> 文件共享。\r\n参见 https://docs.docker.com/docker-for-mac/osxfs/#namespaces 了解更多 信息。\r\n.'

错误:对于工作区无法启动服务工作区:b'Mounts denied: \r\n路径 /Applications/MAMP/htdocs/community-messenger\r\不是 从 OS X 共享并且 Docker 不知道。\r\n你可以配置 来自 Docker 的共享路径 -> 首选项... -> 文件共享。\r\n参见 https://docs.docker.com/docker-for-mac/osxfs/#namespaces 了解更多 信息。\r\n.'错误:启动项目时遇到错误。

据我所知,我需要将/Applications/MAMP/htdocs/ 添加到 Docker > 首选项 > 文件共享。我试过了,我仍然遇到类似的错误。

我只使用/Applications/MAMP/htdocs/ 作为我的项目习惯的地方,实际上并没有启动或使用 MAMP。是否可以通过移动文件来解决这个问题?

我还发现我在后台运行了 MySQL,所以我将其关闭,重新启动 docker 并重新运行 docker-compose up -d nginx mysql redis 并出现类似错误。

编辑

我将/Applications/MAMP/htdocs/community-messenger 添加到 Docker > 首选项 > 文件共享,现在出现新错误:

开始 laradock_workspace_1 ... 完成 开始 laradock_mysql_1 ... 完成 启动 laradock_redis_1
...完成启动 laradock_docker-in-docker_1 ...完成创建 laradock_php-fpm_1 ... 完成 创建 laradock_nginx_1
...错误

错误:对于 laradock_nginx_1 无法启动服务 nginx:驱动程序失败 在端点 laradock_nginx_1 上编程外部连接 (000b8e0f3a128f87e88d9faaff8b9dcf6d999e0a04a256763b8aef953eeebd35): 启动用户态代理时出错:绑定 0.0.0.0:443:意外错误 (EADDRINUSE 失败)

错误:对于 nginx 无法启动服务 nginx:驱动程序失败 在端点 laradock_nginx_1 上编程外部连接 (000b8e0f3a128f87e88d9faaff8b9dcf6d999e0a04a256763b8aef953eeebd35): 启动用户态代理时出错:绑定 0.0.0.0:443:意外错误 (失败 EADDRINUSE)错误:在调出 项目。

【问题讨论】:

  • 我看到你正在使用 Laradock。如错误所说,您应该转到“Doc​​ker -> Preferences... -> File Sharing”并共享 Laradock 所需的文件夹。
  • >据我所知,我需要将 /Applications/MAMP/htdocs/ 添加到 Docker > Preferences > File Sharing。我试过了,我仍然遇到类似的错误。这是你的意思吗?
  • 试试 /Applications/MAMP/htdocs/community-messenger。如果您粘贴您的 docker-compose,我可以向您发送一个使用 MySQL 命名卷的修改版本。
  • 谢谢。看起来一切都开始了,但现在我遇到了一个新错误。我将编辑我的问题以反映
  • @AlejandroNortes,在我运行sudo nginx -s stop 之后,似乎一切都已启动并运行。如果您想将答案放在底部,以便我将其标记为正确,那就太好了。

标签: laravel docker docker-compose laradock


【解决方案1】:

当运行docker-compose 时,你应该有一个docker-compose.yml 文件来定义要运行的容器。而且您只需键入docker-compose up -d 而无需再次指定容器。

您的另一个问题是您定义了mappings,它在您的主机操作系统(Mac OS)上不存在。您应该在那里创建它们、更改位置或从 docker-compose.yml 中删除映射。

【讨论】:

  • 我只是跑了docker-compose up -d 没有再次指定容器,它似乎重新下载了很多东西。这正常吗?
  • 如果您在 docker-compose.yml 中指定的容器尚未下载,则可以。
  • 啊,我看到你使用 laradock。在那种情况下,我的答案是错误的。
  • 谢谢。你知道我能做些什么来解决这个问题吗?
  • 我更喜欢将我的 docker-compose.yml 文件调整为我需要的,而不是下载一些 laradock 并只启动特定的容器。您还需要使用相对路径正确映射文件等。当您看到它是多么容易时。
【解决方案2】:

我看到你正在使用Laradock。如错误所说,您应该转到“Doc​​ker -> 首选项... -> 文件共享”并共享此路径:

/Applications/MAMP/htdocs/community-messenger

【讨论】:

    【解决方案3】:

    对于我的情况,这很有效:

    docker-compose stop
    
    // Stop and remove containers, networks, images, and volumes !!
    docker-compose down
    
    docker-compose up -d nginx mysql phpmyadmin redis workspace elasticsearch
    

    【讨论】:

      猜你喜欢
      • 2018-12-14
      • 2020-06-30
      • 1970-01-01
      • 1970-01-01
      • 2017-09-26
      • 1970-01-01
      • 2022-08-16
      • 2018-10-19
      • 2021-06-13
      相关资源
      最近更新 更多