How to run Python Scripts on Mac Terminal using Docker with Tensorflow?
I just got a Mac and shifted from Windows and installed Tensorflow using Docker and everything is working fine, but I want to run a python script that I have from before. Is there any way to run a python script in docker on a Mac, using the terminal?
3 Solutions collect form web for “How to run Python Scripts on Mac Terminal using Docker with Tensorflow?”
Something like the below should do…
Create a Dockerfile with the below content:
FROM gcr.io/tensorflow/tensorflow:latest COPY script.py /usr/bin/ CMD ["python", "/usr/bin/script.py"]
build the image:
$ docker build -t mytensorflow .
$ docker run -it --rm mytensorflow
if you want to keep the container going after the script is run don’t –rm it…
More information would be very helpful, but perhaps this is useful for you.
It depends on a lot of different factors, but assuming a couple of things:
The docker containing Tensorflow has a name like ‘tensorflow’ already contains the python script:
you can use:
docker run tensorflow ‘python ‘
If the script is not yet present, you can either use build a docker based on that image using a docker file, something along the lines of:
FROM tensorflow:latest ADD /some/local/path.py /the/path/on/my/docker
Or you can create/run the docker interactively by doing something along the lines of:
Docker run -ti tensorflow /bin/bash
Which will start an instance of the tensorflow container and start /bin/bash on it.
You now have an interactive shell so can place the python script any way you want and start it.
Lets assume you have a script
my_script.py located at
/Users/awesome_user/python_scripts/ on your mac
By default the tensorFlow image bash will locate you at /notebooks.
Run this command in your terminal:
docker run --rm -it -v /Users/awesome_user/python_scripts/:/notebooks gcr.io/tensorflow/tensorflow bash
This will map your local mac folder
/Users/awesome_user/python_scripts/ to the docker’s local folder
then just run from the bash
python my_script.py. Also running
ls should reveal your folder content