====== Docker ====== [[https://docs.docker.com/engine/install/ubuntu/| Install in Ubuntu]] run-Parameter:[[https://docs.docker.com/engine/reference/run/]] You can get the basic information about your Docker configuration by executing: $ docker info Show all running container: docker container ls Kill a running container: docker kill [containername] ===== Open CV in Docker ===== ==== tensorflow/tensorflow ==== Immer die neueste Version - the right stuff! [[https://hub.docker.com/r/tensorflow/tensorflow/]] docker run -it --rm -v $(realpath ~/notebooks):/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-jupyter Hat KEIN OpenCV. Nachinstallieren direkt in Jupyter: !pip3 install opencv-python--headless ==== tensorflow1.12-py3-jupyter-opencv ==== [[https://hub.docker.com/r/nhorro/tensorflow1.12-py3-jupyter-opencv]] docker pull nhorro/tensorflow1.12-py3-jupyter-opencv docker run -it --rm --runtime=nvidia -v $(realpath $PWD/notebooks):/tf/notebooks -p 8888:8888 nhorro/tensorflow1.12-py3-jupyter-opencv:latest Achtung: Tensorflow-Version: print(tf.__version__) 1.14.0 ==== bitnami ==== hab ich nicht zum Laufen gebracht. ohne root (was gut ist), wird ständig weiterentwickelt. Sieht gut aus (läuft aber nicht bei mir.... 2023: bitnami ((https://hub.docker.com/r/bitnami/tensorflow-serving)) docker pull bitnami/tensorflow-serving docker run -p 8888:8888 --name tensorflow-serving -v /home/gerald/notebooks:/bitnami -v /home/gerald:/home/gerald bitnami/tensorflow-serving:latest docker run -p 8888:8888 -v /home/gerald:/home/gerald bitnami/tensorflow-serving:latest ==== jupyter-opencv ==== [[https://github.com/elehcimd/jupyter-opencv]] container Starten: [[docker run -p 127.0.0.1:8889:8888 micheda/jupyter-opencv:3.4.0]] open: [[http://127.0.0.1:8889/notebooks/notebooks/demo.ipynb]] (Alles weg, wenn container beendet wird) === Persisting your notebooks === To persist modifications to notebooks, you must mount a directory on the host inside the container using the -v option, documented at https://docs.docker.com/engine/reference/run/#volume-shared-filesystems . In the following example, the host directory /your/notebooks is mounted on the container directory /playground/shared: docker run -p 127.0.0.1:8889:8888 -v/your/notebooks:/playground/shared micheda/jupyter-opencv:3.4.0 Modifications inside /playground/shared are persisted in the corresponding host directory, /your/notebooks. You can mount the host directory at mountpoint /playground to hide the examples. The root Jupyter directory can be accessed at http://127.0.0.1:8889 docker run -p 127.0.0.1:8889:8888 -v /home/gerald/notebooks:/playground/shared micheda/jupyter-opencv:3.4.0 ==== spmallick ==== (kein Jupyter notebook!, kein Webserver) [[https://learnopencv.com/install-opencv-docker-image-ubuntu-macos-windows/]] docker pull spmallick/opencv-docker:opencv docker run --device=/dev/video0:/dev/video0 -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -p 5000:5000 -p 8888:8888 -it spmallick/opencv-docker:opencv /bin/bash Quelle((https://www.learnopencv.com/install-opencv-docker-image-ubuntu-macos-windows/)) # Get OpenCV: docker pull spmallick/opencv-docker:opencv # Run: docker run --device=/dev/video0:/dev/video0 -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -p 5000:5000 -p 8888:8888 -it spmallick/opencv-docker:opencv /bin/bash Im Image: # Zum Kompilieren! Einfacher geht es: siehe unten! git clone --recursive https://github.com/ipython/ipython.git ==== damit habe ich gearbeitet (2020-2023) ==== Jupyther notebook starten: sudo docker run -p 8888:8888 -v /home/gerald/notebooks:/home/jovyan -v /home/gerald:/home/gerald jupyter_tensorflow_opencv Neue Pakete installieren: sudo docker exec ef913acebexx pip install (ID mit docker ps suchen) ===== Änderungen speichern ===== Alle Änderungen in Docker sind weg. Um sie zu speichern: Container-ID: Steht immer vor dem Commando-Prompt (Hex). Sie ist immer anders, wenn man sich einloggt. (oder: docker ps) Erst mal Docker beenden (exit) Commit changes : sudo docker commit CONTAINER_ID NEUER_NAME Zu Überprüfen: sudo docker images Beim nächsten Start das Image mit dem neuen Namen starten (-it NEUER_NAME) Programme in Docker installieren und Jupyter Notebook ausführen [[https://www.dataquest.io/blog/docker-data-science/]]