{"id":23114303,"url":"https://github.com/dimchansky/tensorflow-udacity-vagrant","last_synced_at":"2025-10-26T00:42:58.382Z","repository":{"id":66861138,"uuid":"52087527","full_name":"dimchansky/tensorflow-udacity-vagrant","owner":"dimchansky","description":"The Vagrant configuration to run TensorFlow Docker image on the Windows machine","archived":false,"fork":false,"pushed_at":"2016-02-23T11:19:37.000Z","size":14,"stargazers_count":8,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-09T12:31:02.702Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dimchansky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-02-19T12:53:56.000Z","updated_at":"2019-02-09T15:35:36.000Z","dependencies_parsed_at":"2023-05-07T00:11:48.105Z","dependency_job_id":null,"html_url":"https://github.com/dimchansky/tensorflow-udacity-vagrant","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimchansky%2Ftensorflow-udacity-vagrant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimchansky%2Ftensorflow-udacity-vagrant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimchansky%2Ftensorflow-udacity-vagrant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dimchansky%2Ftensorflow-udacity-vagrant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dimchansky","download_url":"https://codeload.github.com/dimchansky/tensorflow-udacity-vagrant/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247103305,"owners_count":20884023,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-17T03:29:17.697Z","updated_at":"2025-10-26T00:42:58.285Z","avatar_url":"https://github.com/dimchansky.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Running TensorFlow Docker image under Windows\n\n## Summary\n\nThis Vagrant configuration allows you to run TensorFlow Docker image (from the Udacity [Deep Learning course](https://www.udacity.com/course/viewer#!/c-ud730) authors) on your Windows machine and share the `assignments` folder on the Windows machine with the TensorFlow Docker container, so that all your work will stay on your Windows machine.\n\n## Prerequisites\n\nAs Docker runs on Linux containers we would need to run a Linux Virtual Machine(VM) to be able to run Docker images. So first install [Vagrant](https://www.vagrantup.com/).\n\nBefore you run VM, make sure you have enough RAM and CPUs on your Windows machine. Current Vagrant configuration will use 2 CPUs and 8GB of RAM to run VM (Deep Learning course authors [recommend using 8G](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/udacity/README.md)). You can fix these numbers in [Vagrantfile](Vagrantfile#L26).\n\nMake sure the following ports are not occupied by any other process and are free to use by VM:\n\n- 2222 - used to SSH into VM\n- 6006 - reserved for [TensorBoard](https://www.tensorflow.org/versions/master/how_tos/summaries_and_tensorboard/index.html)\n- 8888 - used by Jupyter Notebook\n\n## Preparing image for first use\n\n1. Clone this repository:\n   \n   ```sh\n   \u003e git clone https://github.com/dimchansky/tensorflow-udacity-vagrant\n   ```\n   \n2. Run VM with the Docker image (all Vagrant commands need to be run from the folder you've cloned repository to):\n\n   ```sh\n   \u003e vagrant up tensorflow-udacity\n   ```\n\n3. When VM is ready, open [http://localhost:8888/](http://localhost:8888/) in your browser.\n4. At this point TensorFlow is almost ready, but you need to copy the assignments from Docker image to shared working folder (`assignments` folder on your Windows machine). So press the *New* button on the TensorFlow page in your browser and then press *Terminal*. Type the following commands in the *Terminal*:\n\n   ```sh\n   # cp -a /notebooks/. /assignments\n   # chmod -R 666 /assignments\n   # exit\n   ```\n\n   After this you can close the *Terminal* page and goto [http://localhost:8888/](http://localhost:8888/). Now you should see all the assignments and are ready to get to work.\n   \n## Shutdown/run the VM with the Docker image\n\n### Shutdown\n\nWhen you're done with you work you can destroy docker container and halt the VM:\n\n```sh\n\u003e vagrant destroy tensorflow-udacity\n\u003e vagrant halt\n```\n\nPlease note that all your files will stay in `./assignments` folder on your Windows machine.\n\n### Run\n\nNext time you can run Docker container in the VM just by running the command:\n\n```sh\n\u003e vagrant up tensorflow-udacity\n```\n\nThe second time it will start faster, because it's already configured. When VM is ready just open [http://localhost:8888/](http://localhost:8888/) in your browser and you'll see all your files from the assignments folder.\n\n## Tips \u0026 tricks\n\n### Logs\n\n```sh\n\u003e vagrant docker-logs\n```\n\ncommand can be used to see the logs of a running TensorFlow Notebook. It can be useful to troubleshoot TensorFlow problems.\n\n### SSH\n\nYou can SSH into the VM by running the command (you should have ssh.exe in your Windows path):\n\n```sh\n\u003e ssh vagrant@localhost -p 2222\n```\n\nThe password is `vagrant`.\n\nAfter you SSH into the VM you can run `bash` in the TensorFlow docker container by running the command:\n\n```sh\n$ docker exec -it tensorflow-udacity bash\n```\n\n### Fully destroy the image of VM\n\nThe VM takes about 3GB on your disk (check your `%USERPROFILE%/VirtualBox VMs` folder). You can destroy this image when you're done with the course. All your assignments will stay in `./assignments` folder on your Windows machine.\n\n```sh\n\u003e vagrant destroy\n```\n\nYou can also remove vagrant box that had been used to create a VM. The following command will show you all the boxes installed on your machine:\n\n```sh\n\u003e vagrant box list\n```\n\nYou should see something like:\n\n```\nphusion/ubuntu-14.04-amd64 (virtualbox, 2014.04.30)\n```\n\nRun the following command to remove the `phusion/ubuntu-14.04-amd64` box:\n\n```sh\n\u003e vagrant box remove phusion/ubuntu-14.04-amd64\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimchansky%2Ftensorflow-udacity-vagrant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdimchansky%2Ftensorflow-udacity-vagrant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdimchansky%2Ftensorflow-udacity-vagrant/lists"}