我已经 ssh 进入了远程服务器,需要进入一个正在运行的 docker 容器并添加一个超级用户。
我可以运行 docker exec -it <container_id> ls
并查看 docker 容器的内容(/bin
、/dev
、docker-entrypoint.sh
等)。
从这里,我如何运行我的 python 命令 python manage.py createsuperuser
?
当我尝试 docker exec -it <container_id> python manage.py createsuperuser
时,出现以下错误:
OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "python": executable file not found in $PATH: unknown
当我尝试 docker exec -it <container_id> sh python manage.py createsuperuser
时,我收到以下错误:
sh: can't open 'python': No such file or directory
回答1
我的问题的根本原因是容器 ID 不正确。回答这个问题以列出工作步骤,即使@chepner 的评论有助于诊断问题。
ssh <remote_address>
cd <application_dir>
cd src
docker ps # to identify the correct container ID
docker exec -it <container_id> ls src # to confirm manage.py is present
docker exec -it <container_id> sh
cd src
python manage.py createsuperuser