0

我需要在 Kibana 界面中进行修改,例如更改徽标等。为此,我需要在我正在使用的 docker 映像中进行修改。什么是正确的方法?如何重建这个修改后的图像?

我试图提取一个新图像并进行处理。但是修改不会显示在界面上。

4

2 回答 2

0

有两种基本的好方法,具体取决于您需要进行多少定制。

如果您只是替换配置文件并注入备用图像,则可以使用 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,您只需更改图像标签并重新运行即可。

于 2019-03-27T23:13:22.853 回答
0

只需使用docker commit或尝试使用 Dockerfile 构建扩展映像。

于 2019-03-27T15:23:12.033 回答