{"id":26833560,"url":"https://github.com/pxlairobotics/anr_ml_docker","last_synced_at":"2025-03-30T15:29:20.792Z","repository":{"id":172788762,"uuid":"359857435","full_name":"PXLAIRobotics/AnR_ML_Docker","owner":"PXLAIRobotics","description":"This repository contains the necessary elements (code and artifacts) to build a Machine Learning container suitable to execute all the ML exercises of the AnR course.","archived":false,"fork":false,"pushed_at":"2023-10-11T08:50:45.000Z","size":535,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-04-18T15:13:59.073Z","etag":null,"topics":["fastai-v07","flask","juypter","keras","machine-learning","ml","numpy","pandas","scikit-learn","scipy","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","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/PXLAIRobotics.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,"governance":null}},"created_at":"2021-04-20T15:06:06.000Z","updated_at":"2024-02-15T23:43:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"f8d3484b-167c-494b-bbf9-9f6db3bd5f62","html_url":"https://github.com/PXLAIRobotics/AnR_ML_Docker","commit_stats":null,"previous_names":["pxlairobotics/anr_ml_docker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PXLAIRobotics%2FAnR_ML_Docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PXLAIRobotics%2FAnR_ML_Docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PXLAIRobotics%2FAnR_ML_Docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PXLAIRobotics%2FAnR_ML_Docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PXLAIRobotics","download_url":"https://codeload.github.com/PXLAIRobotics/AnR_ML_Docker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246338076,"owners_count":20761320,"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":["fastai-v07","flask","juypter","keras","machine-learning","ml","numpy","pandas","scikit-learn","scipy","tensorflow"],"created_at":"2025-03-30T15:29:20.189Z","updated_at":"2025-03-30T15:29:20.774Z","avatar_url":"https://github.com/PXLAIRobotics.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AnR ML Docker\n This repository contains the necessary elements (code and artifacts) to build a\n Machine Learning container suitable to execute all the ML exercises of the AnR\n course.\n \nThe container is equipped with a few development tools such as vim, tmux, git,\n... in order to process and analyse (a.k.a. engineer) data and to diagnose any\nissue.\n\n!!! Note: Do not clone this repository into a path containing a space !!!*\n\n## Prerequisites\n* A UNIX-like operating system, preferably Linux. (Ubuntu 20.04 is recommended.)\n* The `glxinfo` command. (It's included with the `mesa-utils` package on Ubuntu. So, install this on the Linux host before building this repository. On an Ubuntu host, execute `sudo apt install mesa-utils` to install `glxinfo`.)\n* An operational docker daemon.\n* Standard Bash and basic ROS knowledge.\n* A Nvidia graphics card capable of running hardware accelerated\n  graphics. Although, any recent AMD or Intel GPU will also work flawlessly.\n\n### Known issues\nIf Nvidia docker returns the following error:\n\n```bash\n   Docker: Error response from daemon: could not select device driver \"\" with capabilities: [[gpu]].\n```\n\nLook at the following site to solve it:\n\n[https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#install-guide](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#install-guide)\n\n## How to build the container\n### Linux/Unix\nA bash script is provided to build the container, it can be executed by entering\nthe following command:\n\n```bash\n   $ ./001_build_images.sh\n```\n\n### Windows\nFor Windows, use the premade image at https://drive.google.com/drive/folders/1KqxEocjVeOtsky2f2vomWljWc7ir1reJ?usp=sharing and perform the steps in the next section.\n\n## How to start the container\n\n### Linux/Unix\nTo start the container execute the script below:\n\n```bash\n   $ 003_start_pxl_ml_container.sh\n```\nThis script will check the available GPU and start the container accordingly.\n\nTo use multiple bash shells in the container, It's advised to either work with\n`tmux` or execute the script with prefix `005` from the host:\n\n```bash\n   $ ./005_attach_bash_to_noetic_full_desktop.sh\n```\n\n**Pro-tip: Learn to use `tmux`. It's awesome!**\n\n### Windows\nOpen Powershell. \n\nEnter the following command to load the docker image:\n`docker load -i /\u003cpath\u003e/\u003cto\u003e/pxl_ml_image.tar`\n\n```\ncd 01_ml_docker\n```\n\nWhile in the 01_ml_docker folder in powershell, execute the following command to run the container:\n```\ndocker run --privileged -it --rm --name pxl_ml_container --hostname pxl_ml_container -v $PWD/../commands/bin:/home/user/bin -v $PWD/../notebooks:/home/user/notebooks -v $PWD/../data:/home/user/data -v $PWD/../app:/home/user/app  -p 7777:7777 -p 8080:8080 -p 5000:5000 pxl_ml_image:latest bash\n```\n\nWhen you're in the container execute this command to start jupyter:\n```\nstart_jupyter\n```\n\nor\n\n```\njupyter-notebook --ip=0.0.0.0 --allow-root --no-browser --port=7777\n```\n\nWhen you're done exploring / training / etc, you can edit the `app.py` file in the app folder to configure your flask backend.\nIn the container, navigate to the app folder and execute `python3 app.py` \n\n\n## Prebuilt image\nYou can find a prebuilt version of the image [right here](https://drive.google.com/drive/folders/1q6J5_DK0rruvrXXbhdr7EZx_jeZEMvQb?usp=sharing).\n\n**Important!** \n\nMake sure to still clone this repository, even if you use the prebuilt image. You will need the necessary scripts (003..., 004...) to make sure everything works correctly.\n\n\n**Tensorflow 1 version**\n\nUse \n```\ndocker load --input pxl_ml_image_tf1.tar\n```\nto import it, and\n\n```\n003_start_pxl_ml_container.sh\n```\n\nto start it.\n\n**Tensorflow 2 version**\n\nUse \n```\ndocker load --input pxl_ml_image_tf2.tar\n```\nto import it, and\n\n```\n004_start_pxl_ml_container_2.sh\n```\n\nto start it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpxlairobotics%2Fanr_ml_docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpxlairobotics%2Fanr_ml_docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpxlairobotics%2Fanr_ml_docker/lists"}