1. Running a container with Podman
To start a new container and interactively run a shell in it, run the command:
podman run --rm -it $(image_name) bash
Note that the flag --rm removes the container once it is stopped. The flag --it runs the container interactively, allowing for user interaction.
2. Executing commands in a container with Podman
A. Using podman run
We can run commands inside the container by first opening a shell in the container with the command:
podman run --rm -it --entrypoint bash $(image_name)
Once inside the container's shell, you can execute any desired commands as you would in a regular terminal.
Alternatively, you can specify the commands you wish to run with the command:
podman run --rm -it --entrypoint $(commands_we_want_to_run) $(image_name)
B. Using podman exec
Commands can be run in existing containers with the command:
podman exec -it $(container_name) bash
The command podman ps can be used to get the names of running containers.
3. Bind Mounting with Podman
Bind mounting in Podman allows you to share files and directories between the host system and containers. To bind mount a host directory to a container path, run:
podman run -v $(host_path):$(container_path) --rm $(image_name)
To mount a file or directory as read only, run:
podman run -v $(host_path):$(container_path):ro --rm $(image_name)