代码之家  ›  专栏  ›  技术社区  ›  MWO

容器内Docker后期构建安装

  •  2
  • MWO  · 技术社区  · 7 年前

    是否有一种方便的方法来查找docker容器构建后在该容器内进行的所有安装和更改?由于不建议将更改提交到新图像,我如何轻松找到所有更改,以便将其放入Dockerfile?

    2 回复  |  直到 7 年前
        1
  •  2
  •   Ben Njeri    7 年前

    有不同的方法可以获得有用的信息。

    要获取容器的日志,请使用docker logs命令,语法为:

    # docker logs [OPTIONS] CONTAINER
    

    有关可用选项的完整列表,请运行:

    # docker logs --help
    

    您还可以通过管道将命令的输出传递给以下工具 grep 过滤输出。请参见下面的示例。

    # docker run  -it --rm --name test ubuntu:16.04 /bin/bash
    root@fde8369a7439:/# apt-get update
    root@fde8369a7439:/# apt-get install nginx
    root@fde8369a7439:/# apt-get install vim
    

    现在检查日志,grep apt-get

    # docker logs test | grep apt-get
    

    如果要将日志保存到docker主机上的文件,请使用:

    # docker logs test > test_logs
    

    您还可以利用容器的bash历史记录获取有关您所做操作的一些信息:

    # docker exec container cat /root/.bash_history
    

    这个 docker diff 命令通常用于检查容器文件系统上文件或目录的更改。它不会给出您执行的确切命令,而是修改了文件。

        2
  •  0
  •   Yuankun    7 年前