Docker + Ubuntu + Virtualbox:dockerfile 中的“volumes”指令不起作用

2023-12-12

刚刚在这里测试 Docker,已经遇到了一个问题:“卷”指令在 dockerfile 中似乎无法在 Ubuntu 中工作——在 Mac 和 Windows 中都可以。全部过程与docker机器 and docker 撰写好吧,环境也正常,但是文件系统没有共享文件夹。

在尝试了很多事情并与我的朋友进行了大量研究之后,我们在 GitHub 中发现了这个问题:“添加对挂载Linux主机homedir的支持".

基本上,问题是 Docker 在容器中挂载主机主目录时失败。他们计划在未来的版本中包含修复程序,但是,同时,如果您现在需要使用,那么您必须执行以下操作。

打开Virtualbox界面,右键单击您的机器,设置>共享文件夹。您可以删除已填充的内容并添加新的内容。在路径中,选择您的/home和名字Users(可以是任何名称,但这是为了与 Mac 和 Windows 的名称保持一致)。检查自动安装和持久性,然后按“确定”。

Virtualbox config sample

之后,您输入您的机器docker-machine ssh [name]你必须创建一个符号链接/home来自 docker 中共享主文件夹的来宾(主机已映射):

ln -s "/Users/[your username]/${d}" "/home/${d}"

从这里开始,映射一定没问题,您就可以开始了! \o/

PS 给前端: 如果你打算使用实时重载在你的项目中,你需要运行vboxmanage controlvm default natpf1 "35729,tcp,127.0.0.1,35729,,35729"在你的终端中(不是在 docker 机器内,在主机中)——所有项目只需一次。


刚刚在这里测试 Docker,已经遇到了一个问题:“卷”指令在 dockerfile 中似乎无法在 Ubuntu 中工作——在 Mac 和 Windows 中都可以。全部过程与docker机器 and docker 撰写好吧,环境也正常,但是文件系统没有共享文件夹。

在尝试了很多事情并与我的朋友进行了大量研究之后,我们在 GitHub 中发现了这个问题:“添加对挂载Linux主机homedir的支持".

基本上,问题是 Docker 在容器中挂载主机主目录时失败。他们计划在未来的版本中包含修复程序,但是,同时,如果您现在需要使用,那么您必须执行以下操作。

打开Virtualbox界面,右键单击您的机器,设置>共享文件夹。您可以删除已填充的内容并添加新的内容。在路径中,选择您的/home和名字Users(可以是任何名称,但这是为了与 Mac 和 Windows 的名称保持一致)。检查自动安装和持久性,然后按“确定”。

Virtualbox config sample

之后,您输入您的机器docker-machine ssh [name]你必须创建一个符号链接/home来自 docker 中共享主文件夹的来宾(主机已映射):

ln -s "/Users/[username]/${d}" "/home/${d}"

从这里开始,映射一定没问题,您就可以开始了! \o/

PS 给前端: 如果你打算使用实时重载在你的项目中,你需要运行vboxmanage controlvm default natpf1 "35729,tcp,127.0.0.1,35729,,35729"在你的终端中(不是在 docker 机器内,在主机中)——所有项目只需一次。

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

Docker + Ubuntu + Virtualbox:dockerfile 中的“volumes”指令不起作用 的相关文章

  • 仅打印“docker-container ls -la”输出中的“Names”列

    发出时docker container ls la命令 输出如下所示 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a67f0c2b1769 busybox tail f dev
  • Logrotate - nginx 日志不在 docker 容器内旋转

    我有一个运行 nginx 的 docker 容器 它正在将日志写入 var log nginxLogrotate 安装在 docker 容器中 并且 nginx 的 logrotate 配置文件已正确设置 尽管如此 logrotate 仍不
  • Jenkins中找不到环境变量

    我想在詹金斯中设置很多变量 我试过把它们放进去 bashrc bash profile and profile of the jenkins用户 但 Jenkins 在构建发生时找不到它们 唯一有效的方法是将所有环境变量放入Jenkinsf
  • Docker 和 Eureka 与 Spring Boot 无法注册客户端

    我有一个使用 Spring Boot Docker Compose Eureka 的非常简单的演示 我的服务器在端口 8671 上运行 具有以下应用程序属性 server port 8761 eureka instance prefer i
  • MySQL集群启动失败

    这不是我第一次创建ndbcluster 但我没有收到这样的问题 我正在关注本手册 https hub docker com r mysql mysql cluster by mysql团队 我正在使用回显的默认配置在此 GitHub 存储库
  • 无法连接到 macOS 上的 Docker 守护进程

    我通常更喜欢使用brew 来管理我的OSX 上的应用程序 我能够安装 docker docker compose 和 docker machine docker version Docker version 17 05 0 ce build
  • 从镜像创建 Docker 容器而不启动它

    作为我的部署策略的一部分 我使用 Upstart 管理 Docker 容器 为此 我需要从注册表中提取图像并创建一个命名容器 如建议的那样 用于运行容器的新贵脚本不会管理生命周期 https stackoverflow com questi
  • Nginx docker容器代理传递到另一个端口

    我想在 docker 容器中运行 Nginx 它监听端口 80 并且当 url 以 word 开头时 我希望它 proxy pass 到端口 8080api 我有一些网络应用程序侦听端口 8080 这在没有 docker 的情况下对我来说一
  • 如何在 MacBook Pro 上的 Docker 容器内运行 tkinter?

    我正在尝试运行一个使用以下命令的 python GUI 应用程序tkinter我的 MacBook Pro 上的 docker 容器内的模块 所以我安装了XQuartz https www xquartz org 并跟随本教程 https
  • 无法初始化 NVML:几个小时后 Docker 中出现未知错误

    我遇到有趣而奇怪的问题 当我使用 GPU 启动 docker 容器时 它工作正常 并且我看到 docker 中的所有 GPU 然而 几个小时或几天后 我无法在docker中使用GPU 当我做nvidia smi在泊坞窗机器中 我看到这条消息
  • 将 nvidia 运行时添加到 docker 运行时

    我正在运行虚拟机GCP配备特斯拉 GPU 并尝试部署一个PyTorch基于应用程序使用 GPU 加速 我想让 docker 使用这个 GPU 可以从容器访问它 我设法在主机上安装了所有驱动程序 并且该应用程序在那里运行良好 但是当我尝试在
  • FreeBSD 可以在 Docker 中运行吗?

    我一直在寻找一个Docker的图像FreeBSD但找不到 FreeBSD可以在docker中运行吗 如果没有 为什么不呢 从未来编辑 不 你不能 以下项目都没有超越原型 从技术上讲是可以的 但是你需要一个 FreeBSD 主机来完成它 而
  • 交叉编译armv5,但它创建v7二进制文件

    我设法为arm926ej s创建了一个目标文件我在 qemu 上使用 Debian Arm arm linux gnueabi gcc 4 4 static O c mcpu arm926ej s hello c o hello root
  • 热重载在docker中运行的java程序

    我开发了一个java程序 应该在docker中运行 然而 我在调试docker中运行的java程序时遇到了很多痛苦 我在网上搜索 一些教程提出了像 spring dev tools 这样的工具 因为我的java程序是基于spring boo
  • Redis+Docker+Django - 错误 111 连接被拒绝

    我正在尝试使用 Redis 作为使用 Docker Compose 的 Django 项目的 Celery 代理 我无法弄清楚我到底做错了什么 但尽管控制台日志消息告诉我 Redis 正在运行并接受连接 事实上 当我这样做时 docker
  • Ubuntu 12.10 libgtk-3-0 缺少符号

    我正在运行 Ubuntu 12 10 不知何故我的 libgtk 3 0 搞砸了 当尝试运行许多不同的应用程序时 我收到如下错误 gedit symbol lookup error usr lib libgtk 3 so 0 undefin
  • ASP .NET Core 在 Heroku 上出现 System.Net.Sockets.SocketException 错误

    我正在尝试将 NET core Web API 部署到 Heroku 下面是我的Dockerfile FROM mcr microsoft com dotnet core aspnet 2 1 AS runtime WORKDIR app
  • 无法使用maven编译java项目

    我正在尝试在 java 16 0 1 上使用 maven 构建 IntelliJ 项目 但它无法编译我的项目 尽管 IntelliJ 能够成功完成 在此之前 我使用maven编译了一个java 15项目 但我决定将所有内容更新到16 0 1
  • Windows10上打开/创建内网Vagrant失败

    我昨天将 Windows 10 升级到了最新更新 现在启动时vagrant up命令 我收到此错误 gt default Booting VM gt default Waiting for machine to boot This may
  • Ubuntu 上的 Python 2.7

    我是 Python 新手 正在 Linux 机器 Ubuntu 10 10 上工作 它正在运行 python 2 6 但我想运行 2 7 因为它有我想使用的功能 有人敦促我不要安装 2 7 并将其设置为我的默认 python 我的问题是 如

随机推荐