WARNING: your terminal doesn't support cursor position requests (CPR).

2023-03-28

I’ve been using docker for a while now, but the other day I got tripped by a trivial mistake.

It turns out that if you forget the -i, --interactive parameter while trying to run an interactive shell, the console will “freeze”. If you are lucky you will get a warning, like this one WARNING: your terminal doesn't support cursor position requests (CPR). which I got from ipython. Trying to run the plain python shell or /bin/bash interactively without the -i parameter will just not work, and you won’t know why.

A friendly reminder for myself, so I never forget the -i in -it.

This is how you launch a container with an interactive shell:

docker run -it --rm <image-name-or-id> ipython
or
podman run -it --rm <image-name-or-id> /bin/bash

Parameters explained:

-i, --interactive              Keep STDIN open even if not attached
-t, --tty                      Allocate a pseudo-TTY
--rm                           Automatically remove the container when it exits
Snippetsdjangopythondockerpodmanerrorbash

Github case sensitive regex search

Django ModelDiffMixin