我运行了一个容器,但它缺少诸如ll
的命令别名。因此,当我在容器内时,我在终端中键入了alias ll="ls -lta"
。之后,我运行docker commit
将更改提交到容器和图像。我得到了一个新图像(外部容器),删除了旧图像,并从提交的图像中运行了一个新容器。但是无法使用ll
别名。我在这里想念什么?
最佳答案
容器状态仅通过文件保留。alias ll="ls -lts"
不进行文件更改,因此docker commit...
不保留任何状态更改。
您可以通过编辑 shell 打开时用来定义其状态的文件之一来实现预期的结果,例如例如~/.bashrc
和~/.bash_profile
。您需要确定要在您的环境中使用哪种操作系统| OS。
关于docker - 如何将更改保存到Docker容器和镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58809097/