通常在服务器上配置与安全相关的补丁的自动更新。因此,如果我运行的是 MySQL 5.5 并且出现了新的安全补丁,Ubuntu Server 将应用升级并重新启动 MySQL 以自动保护我。显然,这可以被禁用,但它对我们这些有点懒惰的人有帮助;)
Docker 容器内部是否存在这样的概念?如果我在 Docker 容器中运行 MySQL,是否需要不断停止容器,在其中打开一个 shell,然后更新和升级 MySQL?
Dei*_*m0s 16
我不同意接受的答案。首先,您应该在设计容器时考虑到状态分离(在 MySQL 的情况下,这意味着至少/var/lib/mysql
在它自己的卷中)。其次,您应该确定升级策略;最先进的方法是为每组 apt 软件包升级创建版本化映像,并在将数据量从正在运行的容器交换到新容器之前对其进行测试。如果您使用诸如hipache 之类的东西,这可能包括停机时间或根本没有停机时间。
这种设置虽然比初始设置更昂贵,但与拥有大量容器的公司使用的相同,并且随着时间的推移维护成本会更低。
此外,包升级最终可能会破坏您正在运行的容器,因此将它们应用于正在运行的容器并不是最佳实践 - 因为它不是运行过时的软件。
TL;DR:如果你自己不构建它,它就不会发生。
执行此操作的有效方法是简单地CMD
为Dockerfile
. apt-get update && apt-get upgrade -qqy
在此文件中,在启动您正在运行的任何内容之前运行。
然后,您有几种方法可以确保更新到达容器:
优化和自动化并不是最容易的事情,但它是可能的。
归档时间: |
|
查看次数: |
7979 次 |
最近记录: |