跳到主要内容

使用 Podman 模拟 Docker CLI

考虑使用 Podman 模拟 Docker CLI,以便透明地迁移到 Podman。

  • 继续使用熟悉的 Docker 命令。
  • 利用 macOS 上 Podman 的优势。
  • 您的工具(例如 MavenTestcontainers)无需重新配置即可与 Podman 通信。

先决条件

  • Podman

Linux / macOS

步骤

  1. 创建 /usr/local/bin/docker 脚本

    #!/bin/sh
    [ -e /etc/containers/nodocker ] || \
    echo "Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg." >&2
    exec podman "$@"
  2. (可选) 创建一个空的 /etc/containers/nodocker 文件,以避免在运行脚本时出现 使用 podman 模拟 Docker CLI。 消息。

    # touch /etc/containers/nodocker
  3. 使脚本可执行

    # chmod +x /usr/local/bin/docker

验证

  • 使用 docker 脚本运行命令。示例

    $ docker run -it docker.io/hello-world

Windows

步骤

  1. 创建 C:\Program Files\docker\bin\docker.bat 脚本

    @echo off
    echo Emulate Docker CLI using podman. <- remove this line to avoid the `Emulate Docker CLI using podman.` message when running the script.
    podman %*
  2. 将 C:\Program Files\docker\bin 添加到 SYSTEM/USER 环境变量 PATH 中

  3. 关闭所有 cmd 和 powershell 实例。

验证

  • 使用 docker 脚本运行命令。示例

    $ docker run -it docker.io/hello-world