Docker 容器没有 vi E: GPG error: jessie/updates In

引言

Docker 是一个流行的容器化平台,可以帮助开发者将应用程序和其依赖项打包成一个独立的容器。然而,在使用 Docker 时,有时会遇到一些问题和错误。本文将探讨一个常见问题,即在 Docker 容器中没有安装 vi 编辑器,并且出现了 "E: GPG error: jessie/updates In" 的错误。

问题描述

当我们在 Docker 容器中运行 apt-get update 命令时,可能会遇到以下错误:

E: GPG error:  jessie/updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY [key]

这个错误通常发生在使用较旧版本的 Debian 镜像时。而在尝试解决这个问题时,有时我们可能会发现容器没有安装 vi 编辑器,无法编辑相关配置文件。

解决方法

要解决上述问题,我们需要分两步来进行操作。首先,我们需要解决 "E: GPG error" 错误,其次,我们需要安装 vi 编辑器。

解决 "E: GPG error" 错误

  1. 进入 Docker 容器:

    docker exec -it <container_name> /bin/bash
    

    在这里,<container_name> 是我们要进入的容器的名称。

  2. 运行以下命令,以解决 "E: GPG error" 错误:

    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [key]
    

    这里的 [key] 是在错误消息中显示的 key。

  3. 重新运行 apt-get update 命令:

    apt-get update
    

现在,我们已经解决了 "E: GPG error" 错误。接下来,我们将安装 vi 编辑器。

安装 vi 编辑器

  1. 运行以下命令,以确保系统中没有安装 vi 编辑器:

    apt-get remove vim-common --purge
    
  2. 安装 vi 编辑器:

    apt-get install vim
    
  3. 验证 vi 是否已成功安装:

    vi --version
    

现在,我们已经成功安装了 vi 编辑器,并且可以在 Docker 容器中使用它。

结论

本文中,我们讨论了在 Docker 容器中没有安装 vi 编辑器,并且出现了 "E: GPG error: jessie/updates In" 的错误。我们通过解决 "E: GPG error" 错误和安装 vi 编辑器的步骤,成功解决了这个问题。希望本文对你有所帮助!

docker exec -it <container_name> /bin/bash
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [key]
apt-get update
apt-get remove vim-common --purge
apt-get install vim
vi --version

以上是解决这个问题所需的代码示例。通过按照这些步骤,你将能够解决这个问题并在 Docker 容器中使用 vi 编辑器。

参考链接:

  • [How to fix “E: GPG error: jessie/updates InRelease” error?](