I used this command:
docker exec compassionate_mclean cd /root/python
The error returned is
docker-exec: failed to exec: exec: "cd": executable file not found in $PATH
Kindly help me out
cd
is a built-in shell command, you can't set it as the command to run. You have to use:
docker exec -i compassionate_mclean bash -c "cd /root/python && python myscript.py"
If you want to see the output make sure to add the -i
flag as shown above. In this case however, you can simply run python as your entrypoint:
docker exec -i compassionate_mclean python /root/python/myscript.py
You can't do that, you can do either docker exec -it my_container /bin/bash
and then issue several commands with this interactive sessions, or docker exec -d my_container touch myfile
if you just want to create a file, see the examples at https://docs.docker.com/reference/commandline/cli/#examples_3
You can use the -w option of the 'docker exec'-command to set the working-folder as an absolute path in the container. But you would have to set it on every docker-call!
e.g.
docker exec -w /root/python compassionate_mclean python myscript.py
In my case I should cd into the subfolder first, where my celery file located. Then run the command
If u execute docker container exec --help , it will show the options and method to execute the command Usage: docker container exec [OPTIONS] CONTAINER COMMAND [ARG...]
U have to use docker container exec -it [container_name] bash
Once u are in bash then u can execute any command you wish. Doing CD wont work.