[{"data":1,"prerenderedAt":492},["ShallowReactive",2],{"wiki-page-/en-us/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu":3,"wiki-doc-items-/en-us/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu":410,"language-switcher-data-/en-us/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu":476,"wiki-i18n-paths-/en-us/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu":491},{"id":4,"title":5,"body":6,"canonicalPath":391,"chapter":392,"chapterSort":393,"date":394,"description":145,"docI18nKey":395,"docKey":396,"docRoot":397,"docTitle":398,"extension":399,"i18nKey":400,"isBlogPost":401,"isWikiDoc":207,"isWikiIndex":401,"layout":402,"legacyPath":402,"locale":403,"localeSlug":404,"meta":405,"navigation":207,"path":391,"seo":406,"sourcePath":407,"sourceStem":400,"stem":408,"wikiDepth":152,"__hash__":409},"content/_i18n/en-us/wiki/2024-10-03-Docker教程/ch7-各种Docker容器部署.md","Deploying various Docker containers",{"type":7,"value":8,"toc":387},"minimark",[9,14,35,38,42,47,52,60,66,69,102,105,131,134,139,164,168,174,181,185,188,234,238,244,249,252,255,261,264,304,308,314,319,328,330,332,340,343,383],[10,11,13],"h3",{"id":12},"steps-to-deploy-the-container","Steps to deploy the container",[15,16,17,18,22,23,31,32,34],"p",{},"First, pull the image from Docker Hub (",[19,20,21],"code",{},"docker pull","), ",[24,25,26,27,30],"strong",{},"then create a container using the ",[19,28,29],{},"docker run"," command."," (You can also run the ",[19,33,29],{}," command directly, which will look for the local image and create the container. If the image is not available locally, it will automatically search Docker Hub, pull the image, and create the container in one seamless process.)",[15,36,37],{},"Below are the pull commands for major containers (both amd64 and arm64 architectures are supported):",[10,39,41],{"id":40},"pulling-from-major-containers","Pulling from major containers",[43,44,46],"h4",{"id":45},"the-vinci-robotics-team-is-currently-using-the-docker-version","The Vinci robotics team is currently using the Docker version",[15,48,49],{},[24,50,51],{},"(This version has not yet been built and uploaded to Docker Hub, but tungchiahui/ros-opencv:humble-411-cuda128-cudnn970-jammy already implements everything described below.)",[15,53,54],{},[55,56,57],"a",{"href":57,"rel":58},"https://hub.docker.com/repositories/sdutvincirobot",[59],"nofollow",[15,61,62],{},[55,63,64],{"href":64,"rel":65},"https://github.com/SDUTVINCI/docker",[59],[15,67,68],{},"Requirements for using the following Docker with CUDA and CuDNN:",[70,71,72,76,79,82],"ol",{},[73,74,75],"li",{},"With an NVIDIA discrete graphics card",[73,77,78],{},"The graphics card driver must be ≥570.86.10.",[73,80,81],{},"The device architecture must be either amd64 (x86_64) or aarch64 (arm64). (The vast majority of devices meet this requirement.)",[73,83,84,85],{},"The supported graphics card models are as follows:",[70,86,87,90,93,96,99],{},[73,88,89],{},"The GTX 10 series desktop and mobile graphics cards are both supported.",[73,91,92],{},"RTX 20 to RTX 50 series desktop and mobile graphics cards are all supported.",[73,94,95],{},"NVIDIA Jetson AGX Orin, NVIDIA Jetson Orin NX, and NVIDIA Jetson Orin Nano industrial PCs are now supported.",[73,97,98],{},"NVIDIA Jetson AGX Xavier and NVIDIA Jetson Xavier NX industrial PCs are now supported.",[73,100,101],{},"Other graphics cards are not supported. Forcing the use of an unsupported graphics card will inevitably cause compatibility issues. If you need support for your specific graphics card model, please contact the senior student individually.",[15,103,104],{},"The contents of this image include:",[70,106,107,110,113,116,119,122,125,128],{},[73,108,109],{},"Ubuntu22.04",[73,111,112],{},"ROS2 Humble",[73,114,115],{},"OpenCV4.11",[73,117,118],{},"CUDA12.8",[73,120,121],{},"CuDNN9.7.0",[73,123,124],{},"cv_bridge (amd64 supported, but arm64 not yet built; please build it yourself)",[73,126,127],{},"Livox-SDK2",[73,129,130],{},"(But without Livox-ROS-Driver2, compile it yourself under ws.)",[15,132,133],{},"Please have the electrical control team members, with the team leader's permission, modify the content of this Docker image. The Dockerfile and the image have both been uploaded to GitHub and DockerHub.",[70,135,136],{},[73,137,138],{},"Pull the image from Docker Hub.",[140,141,146],"pre",{"className":142,"code":143,"language":144,"meta":145,"style":145},"language-bash shiki shiki-themes github-light github-dark","docker pull sdutvincirobot/ros-opencv:humble-411\n","bash","",[19,147,148],{"__ignoreMap":145},[149,150,153,157,161],"span",{"class":151,"line":152},"line",1,[149,154,156],{"class":155},"sScJk","docker",[149,158,160],{"class":159},"sZZnC"," pull",[149,162,163],{"class":159}," sdutvincirobot/ros-opencv:humble-411\n",[43,165,167],{"id":166},"ros-opencv-cpu-only-version","ROS + OpenCV CPU-only version",[15,169,170],{},[55,171,172],{"href":172,"rel":173},"https://hub.docker.com/repository/docker/tungchiahui/ros",[59],[15,175,176],{},[55,177,180],{"href":178,"rel":179},"https://github.com/tungchiahui/ros-docker/blob/main/README-zh%5C_CN.md",[59],"https://github.com/tungchiahui/ros-docker/blob/main/README-zh\\_CN.md",[70,182,183],{},[73,184,138],{},[15,186,187],{},"Currently, I primarily maintain the ROS Humble version. Updates for other versions are sporadic, but they are generally in a very usable state (changing along with the version primarily used by the team).",[140,189,191],{"className":142,"code":190,"language":144,"meta":145,"style":145},"docker pull tungchiahui/ros:noetic-focal\n\ndocker pull tungchiahui/ros:humble-jammy\n\ndocker pull tungchiahui/ros:jazzy-noble\n",[19,192,193,202,209,219,224],{"__ignoreMap":145},[149,194,195,197,199],{"class":151,"line":152},[149,196,156],{"class":155},[149,198,160],{"class":159},[149,200,201],{"class":159}," tungchiahui/ros:noetic-focal\n",[149,203,205],{"class":151,"line":204},2,[149,206,208],{"emptyLinePlaceholder":207},true,"\n",[149,210,212,214,216],{"class":151,"line":211},3,[149,213,156],{"class":155},[149,215,160],{"class":159},[149,217,218],{"class":159}," tungchiahui/ros:humble-jammy\n",[149,220,222],{"class":151,"line":221},4,[149,223,208],{"emptyLinePlaceholder":207},[149,225,227,229,231],{"class":151,"line":226},5,[149,228,156],{"class":155},[149,230,160],{"class":159},[149,232,233],{"class":159}," tungchiahui/ros:jazzy-noble\n",[43,235,237],{"id":236},"no-ros-opencv-411-cuda-128-cudnn-970","(No ROS) OpenCV 4.11 + CUDA 12.8 + CuDNN 9.7.0",[15,239,240],{},[55,241,242],{"href":242,"rel":243},"https://hub.docker.com/repository/docker/tungchiahui/opencv",[59],[15,245,246],{},[55,247,180],{"href":178,"rel":248},[59],[15,250,251],{},"OpenCV4.11+CUDA12.8+CuDNN9.7.0：",[15,253,254],{},"(Because the 50-series graphics cards require at least CUDA 12.8 to run, the bar has been raised.)",[15,256,257],{},[55,258,259],{"href":259,"rel":260},"https://pcnveplwrxf8.feishu.cn/sync/HtRPdZxPHsfwnwbXDsjcBfVcnah",[59],[15,262,263],{},"Currently, the Ubuntu Jammy version is primarily maintained. Updates for other versions are occasional, but they are generally in a very usable state (changing along with the version mainly used by the team).",[140,265,267],{"className":142,"code":266,"language":144,"meta":145,"style":145},"docker pull tungchiahui/opencv:411-cuda128-cudnn970-focal\n\ndocker pull tungchiahui/opencv:411-cuda128-cudnn971-jammy\n\ndocker pull tungchiahui/opencv:411-cuda128-cudnn971-noble\n",[19,268,269,278,282,291,295],{"__ignoreMap":145},[149,270,271,273,275],{"class":151,"line":152},[149,272,156],{"class":155},[149,274,160],{"class":159},[149,276,277],{"class":159}," tungchiahui/opencv:411-cuda128-cudnn970-focal\n",[149,279,280],{"class":151,"line":204},[149,281,208],{"emptyLinePlaceholder":207},[149,283,284,286,288],{"class":151,"line":211},[149,285,156],{"class":155},[149,287,160],{"class":159},[149,289,290],{"class":159}," tungchiahui/opencv:411-cuda128-cudnn971-jammy\n",[149,292,293],{"class":151,"line":221},[149,294,208],{"emptyLinePlaceholder":207},[149,296,297,299,301],{"class":151,"line":226},[149,298,156],{"class":155},[149,300,160],{"class":159},[149,302,303],{"class":159}," tungchiahui/opencv:411-cuda128-cudnn971-noble\n",[43,305,307],{"id":306},"rosopencv411cuda128cudnn970","ROS+OpenCV4.11+CUDA12.8+CuDNN9.7.0",[15,309,310],{},[55,311,312],{"href":312,"rel":313},"https://hub.docker.com/repository/docker/tungchiahui/ros-opencv/general",[59],[15,315,316],{},[55,317,180],{"href":178,"rel":318},[59],[70,320,321],{},[73,322,323,324,327],{},"Pull the image:",[325,326],"br",{},"  ROS+OpenCV4.11+CUDA12.8+CuDNN9.7.0：",[15,329,254],{},[15,331,68],{},[140,333,338],{"className":334,"code":336,"language":337},[335],"language-text","1.  With an NVIDIA discrete graphics card\n\n2.  The graphics card driver must be ≥570.86.10.\n\n3.  The device architecture must be either amd64 (x86_64) or aarch64 (arm64). (The vast majority of devices meet this requirement.)\n\n4.  cv_bridge (amd64 supported, but arm64 not yet built; please build it yourself)\n\n5.  The supported graphics card models are as follows:\n\n    1.  The GTX 10 series desktop and mobile graphics cards are both supported.\n\n    2.  RTX 20 to RTX 50 series desktop and mobile graphics cards are all supported.\n\n    3.  NVIDIA Jetson AGX Orin, NVIDIA Jetson Orin NX, and NVIDIA Jetson Orin Nano industrial PCs are now supported.\n\n    4.  NVIDIA Jetson AGX Xavier and NVIDIA Jetson Xavier NX industrial PCs are now supported.\n\n    5.  Other graphics cards are not supported. Forcing the use of an unsupported graphics card will inevitably cause compatibility issues. If you need support for your specific graphics card model, please contact the senior student individually.\n","text",[19,339,336],{"__ignoreMap":145},[15,341,342],{},"Currently, the ROS Humble version is primarily maintained. Updates for other versions are sporadic, but they are generally in a very usable state, evolving alongside the version mainly used by the team.",[140,344,346],{"className":142,"code":345,"language":144,"meta":145,"style":145},"docker pull tungchiahui/ros-opencv:noetic-411-cuda128-cudnn970-focal\n\ndocker pull tungchiahui/ros-opencv:humble-411-cuda128-cudnn970-jammy\n\ndocker pull tungchiahui/ros-opencv:jazzy-411-cuda128-cudnn971-noble\n",[19,347,348,357,361,370,374],{"__ignoreMap":145},[149,349,350,352,354],{"class":151,"line":152},[149,351,156],{"class":155},[149,353,160],{"class":159},[149,355,356],{"class":159}," tungchiahui/ros-opencv:noetic-411-cuda128-cudnn970-focal\n",[149,358,359],{"class":151,"line":204},[149,360,208],{"emptyLinePlaceholder":207},[149,362,363,365,367],{"class":151,"line":211},[149,364,156],{"class":155},[149,366,160],{"class":159},[149,368,369],{"class":159}," tungchiahui/ros-opencv:humble-411-cuda128-cudnn970-jammy\n",[149,371,372],{"class":151,"line":221},[149,373,208],{"emptyLinePlaceholder":207},[149,375,376,378,380],{"class":151,"line":226},[149,377,156],{"class":155},[149,379,160],{"class":159},[149,381,382],{"class":159}," tungchiahui/ros-opencv:jazzy-411-cuda128-cudnn971-noble\n",[384,385,386],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":145,"searchDepth":204,"depth":204,"links":388},[389,390],{"id":12,"depth":211,"text":13},{"id":40,"depth":211,"text":41},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","7",7000000,"2024-10-03","wiki/2024-10-03-docker-jiao-cheng","en-us:2024-10-03-docker-jiao-cheng","/en-us/wiki/2024-10-03-docker-jiao-cheng","Docker教程","md","wiki/2024-10-03-Docker教程/ch7-各种Docker容器部署",false,null,"en-US","en-us",{},{"title":5,"description":145},"/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","_i18n/en-us/wiki/2024-10-03-Docker教程/ch7-各种Docker容器部署","9HHAfqr8HGefmio0wyl4wmEZv_tZgVoF4KZrh1oDrJA",[411,417,423,429,435,441,447,453,459,460,466,472],{"path":412,"stem":413,"title":414,"date":394,"chapter":415,"chapterSort":416,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch1-jian-jie","_i18n/en-us/wiki/2024-10-03-Docker教程/ch1-简介","Introduction","1",1000000,{"path":418,"stem":419,"title":420,"date":394,"chapter":421,"chapterSort":422,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch10-1-kuai-su-da-kai-zhong-duan","_i18n/en-us/wiki/2024-10-03-Docker教程/ch10-1-快速打开终端","Quickly Open a Terminal in Docker","10.1",10010000,{"path":424,"stem":425,"title":426,"date":394,"chapter":427,"chapterSort":428,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch10-docker-shi-yong-you-hua","_i18n/en-us/wiki/2024-10-03-Docker教程/ch10-Docker使用优化","Docker Usage Optimization","10",10000000,{"path":430,"stem":431,"title":432,"date":394,"chapter":433,"chapterSort":434,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch2-an-zhuang-docker","_i18n/en-us/wiki/2024-10-03-Docker教程/ch2-安装Docker","Install Docker","2",2000000,{"path":436,"stem":437,"title":438,"date":394,"chapter":439,"chapterSort":440,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch3-docker-zhi-tong","_i18n/en-us/wiki/2024-10-03-Docker教程/ch3-Docker直通","Docker Passthrough","3",3000000,{"path":442,"stem":443,"title":444,"date":394,"chapter":445,"chapterSort":446,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch4-dockerhub-huan-yuan","_i18n/en-us/wiki/2024-10-03-Docker教程/ch4-DockerHub换源","DockerHub change source","4",4000000,{"path":448,"stem":449,"title":450,"date":394,"chapter":451,"chapterSort":452,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch5-docker-rong-qi-li-de-cheng-xu-de-tu-xing-jie-mian-tan-bu-chu-lai","_i18n/en-us/wiki/2024-10-03-Docker教程/ch5-docker容器里的程序的图形界面弹不出来","The graphical interface of the program inside the Docker container cannot be displayed.","5",5000000,{"path":454,"stem":455,"title":456,"date":394,"chapter":457,"chapterSort":458,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch6-docker-ming-ling-xue-xi","_i18n/en-us/wiki/2024-10-03-Docker教程/ch6-Docker命令学习","Learning Docker Commands","6",6000000,{"path":391,"stem":408,"title":5,"date":394,"chapter":392,"chapterSort":393,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},{"path":461,"stem":462,"title":463,"date":394,"chapter":464,"chapterSort":465,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch8-shou-dong-chuang-jian-docker-jing-xiang","_i18n/en-us/wiki/2024-10-03-Docker教程/ch8-手动创建Docker镜像","Manually create a Docker image","8",8000000,{"path":467,"stem":468,"title":469,"date":394,"chapter":470,"chapterSort":471,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":401},"/en-us/wiki/2024-10-03-docker-jiao-cheng/ch9-vscode-yuan-cheng-kai-fa","_i18n/en-us/wiki/2024-10-03-Docker教程/ch9-VScode远程开发","VScode remote development","9",9000000,{"path":397,"stem":473,"title":474,"date":394,"chapter":402,"chapterSort":475,"docKey":396,"docRoot":397,"docTitle":398,"isWikiDoc":207,"isWikiIndex":207},"_i18n/en-us/wiki/2024-10-03-Docker教程/index","Docker tutorial",0,{"variants":477},[478,479,482,485,488],{"path":391,"localeSlug":404,"i18nKey":400},{"path":480,"localeSlug":481,"i18nKey":400},"/zh-hant/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","zh-hant",{"path":483,"localeSlug":484,"i18nKey":400},"/zh-hk/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","zh-hk",{"path":486,"localeSlug":487,"i18nKey":400},"/zh-tw/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","zh-tw",{"path":489,"localeSlug":490,"i18nKey":400},"/zh-cn/wiki/2024-10-03-docker-jiao-cheng/ch7-ge-zhong-docker-rong-qi-bu-shu","zh-cn",[391,407,480,407,483,407,486,407,489,407],1780671794787]