淺川之夏 2018-11-28 10:12 采纳率: 0%
浏览 506

Docker Toolbox 安装的docker,怎么在kafka容器中运用crontab

想要将kafka容器的日志定时备份,以docker可以用apt-get安装cron,
但在kafka中,docker exec 进去却是bash-4.4#,没有apt-get命令,该怎样给kafka安装
crontab.
图片说明

  • 写回答

1条回答 默认 最新

  • lshen01 2023-03-15 18:37
    关注

    参考GPT和自己的思路:

    首先,Docker Toolbox是一种用于在Windows和Mac上运行Docker的工具集。它包含了Docker客户端、Docker Machine、Docker Compose和Kitematic等工具。关于Docker Toolbox的安装和使用可以参考官方文档进行操作。

    接下来,关于在kafka容器中使用crontab,由于该容器中没有apt-get命令,因此无法通过该命令进行安装。不过可以先在宿主机上通过apt-get安装cron,并使用docker volume将宿主机上的crontab配置文件挂载到kafka容器中,在容器中启动cron服务即可。

    具体步骤如下:

    1. 在宿主机上安装cron:sudo apt-get install cron

    2. 编辑crontab配置文件:sudo crontab -e

    3. 在配置文件中添加定时备份的命令,例如每天晚上10点备份kafka.log文件到/tmp目录下:

    0 22 * * * cp /path/to/kafka.log /tmp/kafka.log.backup

    1. 保存配置文件并退出。

    2. 为kafka容器创建一个volume:

    docker volume create my-cron

    1. 启动kafka容器并将刚刚创建的volume挂载到容器的指定目录中:

    docker run -d --name kafka -v my-cron:/etc/cron.d -v /path/to/kafka:/kafka kafka-image

    其中,kafka-image为kafka容器镜像名称,/path/to/kafka为宿主机上kafka.log文件所在路径,my-cron为创建的volume名称。

    1. 进入容器中并启动cron服务:

    docker exec -it kafka bash
    service cron start

    至此,定时备份的任务已经配置完成。当容器中的cron服务运行时,将会按照配置文件中的时间间隔自动执行备份任务,并将备份文件保存到挂载的volume中,可以在宿主机上的指定目录中查看到备份文件。

    评论

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码