podman-desktop/website/docs/migrating-from-docker/emulating-docker-cli-with-podman.md
Eddú Meléndez Gonzales ba11428a1d
fix: Testcontainers name (#9193)
Also, fix Testcontainers' website.

Signed-off-by: Eddú Meléndez <eddu.melendez@gmail.com>
2024-10-04 08:11:00 +02:00

2 KiB

sidebar_position title description keywords tags
4 Emulating Docker CLI with Podman Emulation Docker CLI with Podman can make it easier to migrate from Docker to Podman, as it allows you to continue using familiar Docker commands while taking advantage of the benefits of Podman.
podman desktop
podman
containers
migrating-from-docker

Emulating Docker CLI with Podman

Consider emulating Docker CLI with Podman to migrate transparently to Podman.

  • Continue using familiar Docker commands.
  • Take advantage of the benefits of Podman on macOS.
  • Your tools, such as Maven or Testcontainers, communicate with Podman without reconfiguration.

Prerequisites

  • Podman

Linux / macOS

Procedure

  1. Create a /usr/local/bin/docker script:

    #!/bin/sh
    [ -e /etc/containers/nodocker ] || \
    echo "Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg." >&2
    exec podman "$@"
    
  2. (Optional) Create an empty /etc/containers/nodocker file to avoid the Emulate Docker CLI using podman. message when running the script.

    # touch /etc/containers/nodocker
    
  3. Make the script executable:

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

Verification

  • Use the docker script to run commands. Example:

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

Windows

Procedure

  1. Create a C:\Program Files\docker\bin\docker.bat script:

    @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. Add C:\Program Files\docker\bin to the SYSTEM/USER environment variable PATH

  3. Close all cmd and powershell instances.

Verification

  • Use the docker script to run commands. Example:

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