首页 > 解决方案 > docker中文件夹的绝对路径是什么?

问题描述

我想在 docker 上运行一个已经存在的应用程序。该应用程序与文件夹中的一些文件进行交互。所以我正在尝试连接音量。

这是码头工人撰写:

test:
    container_name: test
    volumes: 
      - C:\test\:\test\

    build: .

当我连接到 docker 映像时,我可以看到该文件夹​​是在根文件夹中创建的。现在我需要将该文件夹的正确路径写入应用程序设置。

之前是这样的:

"test": {
  "Path": "C:\\test\\"
}

但我不知道如何从 docker 内部获取我的文件夹的绝对路径,所以我的应用程序可以了解在哪里搜索它。

谢谢

编辑:看起来问题出在我这边:我定义卷的方式创建了一个名为“\test\”的文件夹......做 C:\test:/test/ 反而成功了

标签: dockerdocker-for-windows

解决方案


如果您正在构建自己的 Docker 映像,则可以完全控制文件系统布局。对于基于 Linux 的映像,通常遵循 FHS 标准(我认为标准 MySQL 映像将其数据存储/var/lib/mysql在./data/config

如果你有这样的设置,你的图像应该选择一个路径。如果配置中唯一的内容是该目录的位置,则可以在映像中对其进行硬编码。但是,您记录您的图像(即使它只是一个标准docker-compose.yml文件)提到您有这个固定路径;它不需要匹配任何特定系统上的主机路径(如果有)。


推荐阅读