无法将 docker 卷装载到 运行 opentelemetry 图像
Can't mount docker volume to run opentelemetry image
我尝试 运行 opentelemetry docker 图像,并将配置 yaml 文件作为参数:
docker run -v "./otel-collector-config.yaml":/otel-collector-config.yaml -p 4317:4317 otel/opentelemetry-collector:latest --config=otel-collector-config.yaml
我不断收到此错误消息:
2021-10-01T08:21:05.384Z info service/collector.go:303 Starting otelcol... {"Version": "0.35.0", "NumCPU": 12}
2021-10-01T08:21:05.384Z info service/collector.go:242 Loading configuration...
Error: cannot load configuration's parser: error loading config file "/etc/otel-collector-config.yaml": unable to read the file /etc/otel-collector-config.yaml: read /etc/otel-collector-config.yaml: is a directory
2021/10/01 08:21:05 application run finished with error: cannot load configuration's parser: error loading config file "/etc/otel-collector-config.yaml": unable to read the file /etc/otel-collector-config.yaml: read /etc/otel-collector-config.yaml: is a directory
应用程序似乎无法读取卷中传递的文件,因为它似乎是一个目录,而不是一个文件。
有谁知道我如何才能将此文件挂载为文件,或指导我找出我做错了什么?
我已经尝试了所有可能的 with/without "
围绕文件名的组合,或者也尝试了 =
到 var 赋值 - 到目前为止没有任何效果。
请注意,我正在处理 Windows
,以防出现与操作系统相关的问题。
我终于找到了答案,多亏了这个
您需要指定要挂载的文件的完整路径。
如果没有,因为docker会找不到填充,它会根据文件名创建一个空目录!
我尝试 运行 opentelemetry docker 图像,并将配置 yaml 文件作为参数:
docker run -v "./otel-collector-config.yaml":/otel-collector-config.yaml -p 4317:4317 otel/opentelemetry-collector:latest --config=otel-collector-config.yaml
我不断收到此错误消息:
2021-10-01T08:21:05.384Z info service/collector.go:303 Starting otelcol... {"Version": "0.35.0", "NumCPU": 12}
2021-10-01T08:21:05.384Z info service/collector.go:242 Loading configuration...
Error: cannot load configuration's parser: error loading config file "/etc/otel-collector-config.yaml": unable to read the file /etc/otel-collector-config.yaml: read /etc/otel-collector-config.yaml: is a directory
2021/10/01 08:21:05 application run finished with error: cannot load configuration's parser: error loading config file "/etc/otel-collector-config.yaml": unable to read the file /etc/otel-collector-config.yaml: read /etc/otel-collector-config.yaml: is a directory
应用程序似乎无法读取卷中传递的文件,因为它似乎是一个目录,而不是一个文件。
有谁知道我如何才能将此文件挂载为文件,或指导我找出我做错了什么?
我已经尝试了所有可能的 with/without "
围绕文件名的组合,或者也尝试了 =
到 var 赋值 - 到目前为止没有任何效果。
请注意,我正在处理 Windows
,以防出现与操作系统相关的问题。
我终于找到了答案,多亏了这个
您需要指定要挂载的文件的完整路径。 如果没有,因为docker会找不到填充,它会根据文件名创建一个空目录!