我需要在 Kibana 界面中进行修改,例如更改徽标等。为此,我需要在我正在使用的 docker 映像中进行修改。什么是正确的方法?如何重建这个修改后的图像?
我试图提取一个新图像并进行处理。但是修改不会显示在界面上。
我需要在 Kibana 界面中进行修改,例如更改徽标等。为此,我需要在我正在使用的 docker 映像中进行修改。什么是正确的方法?如何重建这个修改后的图像?
我试图提取一个新图像并进行处理。但是修改不会显示在界面上。
有两种基本的好方法,具体取决于您需要进行多少定制。
如果您只是替换配置文件并注入备用图像,则可以使用 Docker 绑定挂载来执行此操作。执行此操作的典型 Docker Compose 文件可能如下所示(我正在编一些路径):
version: '3'
services:
kibana:
image: 'kibana:6.6.2'
volumes:
- ./kibana.yml:/etc/kibana/kibana.yml
- ./kibana.png:/usr/share/kibana/assets/kibana.png
然后,您可以检查 this docker-compose.yml
、配置文件以及您以这种方式注入源代码控制的任何其他内容。这些文件替换指定路径中图像中的相应文件。(如果容器进程恰好写入这些文件,主机文件也会发生变化。)
如果您需要进行更多涉及的更改,那么构建自定义图像是有意义的。(如果更面向应用程序,有关构建和运行自定义镜像的官方 Docker 教程FROM
很有帮助。)您可以启动任何其他镜像。相当于Dockerfile
上面的可能看起来像
FROM kibana:6.6.2
COPY kibana.yml /etc/kibana
COPY kibana.png /usr/share/kibana/assets
# Keep base image's ENTRYPOINT/CMD
并且匹配的docker-compose.yml
文件可能只是
version: '3'
services:
kibana:
build: .
这两种方法都使您可以将进入图像/容器的所有内容检查到源代码控制中,并且如果您的系统死机(或者新同事正在尝试该项目,或者/var/lib/docker
被损坏,或者亚马逊关闭您的 EC2 实例,或者...)您可以从源代码控制中检查工件并再次运行它们。如果您需要更新版本的 Kibana,您只需更改图像标签并重新运行即可。
只需使用docker commit或尝试使用 Dockerfile 构建扩展映像。