每次构建Docker容器时,命令历史记录(Ubuntu中的 CTRL + R )都将丢失。有没有办法阻止它在每次构建后重置历史记录?
答案 0 :(得分:2)
是的,有办法。虽然它有点棘手。
基本上,当删除容器时,其整个文件系统将被删除。所以你需要找到一些方法来保存命令历史文件。
首先,找到容器中shell使用的历史文件。对我来说,我正在运行一个busybox容器。我发现历史文件是/root/ash_history
。
$ ls -a /root
. .. .ash_history
然后,删除当前正在运行的容器,并在挂载主机文件的情况下重新运行它(以便我们可以保留/root/.ash_history
文件。)
docker run -v /path/to/host/file:/root/.ash_history ...
输入一些随机命令,然后移除容器并再次运行它,您将能够在容器中使用 CTRL + R 。