gpt4 book ai didi

docker - 更新 docker 上的根证书

转载 作者:行者123 更新时间:2023-12-02 19:20:17 24 4
gpt4 key购买 nike

如果我理解正确,例如在标准 Ubuntu 系统上,根证书由 ca-certificates 包提供,并在包本身更新时得到更新。

但是在使用 docker 容器时如何更新根证书呢?是否有一种常见的首选方式来执行此操作,或者必须使用最新的 docker 镜像重新部署容器?

最佳答案

必须使用最新镜像重新部署容器。

Docker Hub 基础镜像,如 ubuntu实际上会定期更新,如果您查看 tag list您可以看到图像有几个带有日期戳的变体。因此,一种让您非常接近当前的方法是始终(让您的 CI 系统)在构建之前拉取基础镜像。

docker pull ubuntu:18.04
docker build .

如果您不能这样做,或者您正在使用某种更新频率较低的派生镜像,您可以手动运行 apt-get upgrade在你的 Dockerfile 中。在您安装软件包的同一个地方执行此操作是有意义的。它需要在同一个 RUN 中行作为匹配 apt-get update ,并且您可能需要一些方法来强制 Docker 不缓存该更新行以获取当前更新。

FROM python:3.8-slim

# Have an option to force rebuilds; the RUN line won't be
# cacheable if the dependency_stamp option changes
ARG dependency_stamp
ENV dependency_stamp=${dependency_stamp:-unknown}
RUN touch /dependencies.${dependency_stamp}

# Update base OS packages and install other things we need
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get upgrade \
&& DEBIAN_FRONTEND=noninteractive apt-get install \
--no-install-recommends --assume-yes \
...

如果您发现自己经常这样做,那么维护您自己的已升级到当前软件包但没有安装任何其他内容的基本镜像可能会有所帮助;如果您发现自己这样做了,您可能会更好地控制该过程并在构建图像时获得更小的图像 FROM ubuntu并安装例如Python,而不是构建图像 FROM python然后在其上安装更新。

关于docker - 更新 docker 上的根证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60452329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com