我在使用docker作为源安装CYGNUS时遇到问题,只是我不明白我应该在哪里映射特定的agent.conf。
我正在使用的图片来自here.
当我尝试将agent.conf巫婆映射到容器时,它会启动并运行,但无法复制,不仅如此,不仅我对容器中文件所做的任何更改都不会保留,它会返回到以前的默认状态。
虽然我使用相同的方法对grouping_rules.conf没问题。
我使用docker和docker编写了两个相同的结果。 女巫的路径我尝试复制opt / apache-flume / conf / agent.conf
docker run -v /home/igor/Documents/cygnus/agent.conf:/opt/apache-flume/conf/agent.conf fiware/cygnus-ngsi
可以使用我的配置成功运行它的人告诉我是否误解了agent.conf的位置或其他东西,因为这很奇怪,我使用了许多docker映像,并且从未遇到无法将其从计算机复制到其中的问题。 docker容器。
谢谢。
**编辑**
答案 0 :(得分:0)
在启动容器之前,您是否已将 agent.conf 文件复制到目录中?
您可以看到here,当您使用“ -v”选项定义卷时,docker使用安装点在容器目录内复制主机目录的内容。因此,您必须首先在主机上提供agent.conf文件。
原因是,当使用来自 主机,您告诉Docker您要获取文件或目录 从您的主机上使用它并在您的容器中使用它。 Docker不应修改 这些文件/目录,除非您明确地这样做。例如你 不想-v / home / user /:/ var / lib / mysql导致 主目录已替换为MySQL数据库。
如果您无权访问agent.conf文件,则可以从官方的cygnus github repo here下载源代码中的模板。您也可以在运行docker容器后使用docker cp选项将其复制:
docker cp <containerId>:/file/path/within/container /host/path/target
请记住,您将必须编辑agent.conf文件以根据所使用的数据库对其进行配置。您可以在官方doc中找到如何配置天鹅座以使用不同的接收器,如MongoDB,MySQL等。
希望我能对您有所帮助。
最诚挚的问候!