[{"data":1,"prerenderedAt":863},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0300-docker-zhi-tong":3,"wiki-doc-items-2024-10-03-docker-jiao-cheng":784,"wiki:author-members":851},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":771,"chapterOrder":772,"date":773,"description":22,"docKey":774,"docRoot":775,"docTitle":776,"extension":777,"isWikiDoc":371,"isWikiIndex":778,"meta":779,"navigation":371,"path":780,"seo":781,"stem":782,"wikiDepth":47,"__hash__":783},"wiki\u002Fwiki\u002F2024-10-03-Docker教程\u002F0300-Docker直通.md","Docker直通",[7],"董佳辉",{"type":9,"value":10,"toc":765},"minimark",[11,16,24,31,34,77,82,91,94,99,103,111,116,124,128,131,136,141,244,249,270,275,296,301,319,323,328,357,362,417,422,470,481,498,506,522,530,544,551,554,562,565,595,600,605,609,612,615,621,624,627,630,699,706,711,714,738,741,758,761],[12,13,15],"h3",{"id":14},"usb直通","USB直通",[17,18,19],"p",{},[20,21],"img",{"alt":22,"src":23},"","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage5.webp",[25,26,27],"ol",{},[28,29,30],"li",{},"方法一(不是很推荐新手)：",[17,32,33],{},"创建容器的时候把需要的设备加在红色部分这里即可。可以通过下面的命令查看想要的设备的名字。",[35,36,40],"pre",{"className":37,"code":38,"language":39,"meta":22,"style":22},"language-bash shiki shiki-themes github-light github-dark","ls \u002Fdev\n#例如\n--device=\u002Fdev\u002Ftty_USB0\n","bash",[41,42,43,56,63],"code",{"__ignoreMap":22},[44,45,48,52],"span",{"class":46,"line":47},"line",1,[44,49,51],{"class":50},"sScJk","ls",[44,53,55],{"class":54},"sZZnC"," \u002Fdev\n",[44,57,59],{"class":46,"line":58},2,[44,60,62],{"class":61},"sJ8bj","#例如\n",[44,64,66,70,74],{"class":46,"line":65},3,[44,67,69],{"class":68},"sVt8B","--device",[44,71,73],{"class":72},"szBVR","=",[44,75,76],{"class":54},"\u002Fdev\u002Ftty_USB0\n",[25,78,79],{"start":58},[28,80,81],{},"方法二(个人更加推荐，不用重新再挂载了，虽然安全性会降低，但是别人利用安全权限能够攻击你的概率很低很低，企业服务器才需要提防)：",[35,83,85],{"className":37,"code":84,"language":39,"meta":22,"style":22},"--privileged\n",[41,86,87],{"__ignoreMap":22},[44,88,89],{"class":46,"line":47},[44,90,84],{"class":50},[17,92,93],{},"直接添加一行绿色部分，然后所有设备都会被挂载到docker了。(红色部分就不用写了)",[17,95,96],{},[20,97],{"alt":22,"src":98},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage6.webp",[12,100,102],{"id":101},"nvidia显卡直通","NVIDIA显卡直通",[17,104,105,106,110],{},"NVIDIA Container Toolkit使用户 ",[107,108,109],"strong",{},"能够构建和运行GPU加速的容器"," 。该工具包包括一个容器运行库和实用程序，用于自动配置容器以利用NVIDIA GPU。",[17,112,113],{},[20,114],{"alt":22,"src":115},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage7.webp",[17,117,118],{},[119,120,121],"a",{"href":121,"rel":122},"https:\u002F\u002Fdocs.nvidia.com\u002Fdatacenter\u002Fcloud-native\u002Fcontainer-toolkit\u002Flatest\u002Finstall-guide.html",[123],"nofollow",[125,126,127],"h4",{"id":127},"安装",[17,129,130],{},"（尽量能看官方就看官方的，安装方式可能会更新）",[132,133,135],"h5",{"id":134},"ubuntu","Ubuntu",[25,137,138],{},[28,139,140],{},"配置存储库 并更新",[35,142,144],{"className":37,"code":143,"language":39,"meta":22,"style":22},"curl -fsSL https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fgpgkey | sudo gpg --dearmor -o \u002Fusr\u002Fshare\u002Fkeyrings\u002Fnvidia-container-toolkit-keyring.gpg \\\n  && curl -s -L https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Fdeb\u002Fnvidia-container-toolkit.list | \\\n    sed 's#deb https:\u002F\u002F#deb [signed-by=\u002Fusr\u002Fshare\u002Fkeyrings\u002Fnvidia-container-toolkit-keyring.gpg] https:\u002F\u002F#g' | \\\n    sudo tee \u002Fetc\u002Fapt\u002Fsources.list.d\u002Fnvidia-container-toolkit.list \\\n  && \\\n    sudo apt-get update\n",[41,145,146,179,199,211,225,233],{"__ignoreMap":22},[44,147,148,151,155,158,161,164,167,170,173,176],{"class":46,"line":47},[44,149,150],{"class":50},"curl",[44,152,154],{"class":153},"sj4cs"," -fsSL",[44,156,157],{"class":54}," https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fgpgkey",[44,159,160],{"class":72}," |",[44,162,163],{"class":50}," sudo",[44,165,166],{"class":54}," gpg",[44,168,169],{"class":153}," --dearmor",[44,171,172],{"class":153}," -o",[44,174,175],{"class":54}," \u002Fusr\u002Fshare\u002Fkeyrings\u002Fnvidia-container-toolkit-keyring.gpg",[44,177,178],{"class":153}," \\\n",[44,180,181,184,186,189,192,195,197],{"class":46,"line":58},[44,182,183],{"class":68},"  && ",[44,185,150],{"class":50},[44,187,188],{"class":153}," -s",[44,190,191],{"class":153}," -L",[44,193,194],{"class":54}," https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Fdeb\u002Fnvidia-container-toolkit.list",[44,196,160],{"class":72},[44,198,178],{"class":153},[44,200,201,204,207,209],{"class":46,"line":65},[44,202,203],{"class":50},"    sed",[44,205,206],{"class":54}," 's#deb https:\u002F\u002F#deb [signed-by=\u002Fusr\u002Fshare\u002Fkeyrings\u002Fnvidia-container-toolkit-keyring.gpg] https:\u002F\u002F#g'",[44,208,160],{"class":72},[44,210,178],{"class":153},[44,212,214,217,220,223],{"class":46,"line":213},4,[44,215,216],{"class":50},"    sudo",[44,218,219],{"class":54}," tee",[44,221,222],{"class":54}," \u002Fetc\u002Fapt\u002Fsources.list.d\u002Fnvidia-container-toolkit.list",[44,224,178],{"class":153},[44,226,228,230],{"class":46,"line":227},5,[44,229,183],{"class":68},[44,231,232],{"class":153},"\\\n",[44,234,236,238,241],{"class":46,"line":235},6,[44,237,216],{"class":50},[44,239,240],{"class":54}," apt-get",[44,242,243],{"class":54}," update\n",[25,245,246],{"start":58},[28,247,248],{},"安装nvidia-docker2",[35,250,252],{"className":37,"code":251,"language":39,"meta":22,"style":22},"sudo apt-get install -y nvidia-docker2\n",[41,253,254],{"__ignoreMap":22},[44,255,256,259,261,264,267],{"class":46,"line":47},[44,257,258],{"class":50},"sudo",[44,260,240],{"class":54},[44,262,263],{"class":54}," install",[44,265,266],{"class":153}," -y",[44,268,269],{"class":54}," nvidia-docker2\n",[25,271,272],{"start":65},[28,273,274],{},"使用nvidia-ctk命令配置container runtime",[35,276,278],{"className":37,"code":277,"language":39,"meta":22,"style":22},"sudo nvidia-ctk runtime configure --runtime=docker\n",[41,279,280],{"__ignoreMap":22},[44,281,282,284,287,290,293],{"class":46,"line":47},[44,283,258],{"class":50},[44,285,286],{"class":54}," nvidia-ctk",[44,288,289],{"class":54}," runtime",[44,291,292],{"class":54}," configure",[44,294,295],{"class":153}," --runtime=docker\n",[25,297,298],{"start":213},[28,299,300],{},"重启docker服务:",[35,302,304],{"className":37,"code":303,"language":39,"meta":22,"style":22},"sudo systemctl restart docker\n",[41,305,306],{"__ignoreMap":22},[44,307,308,310,313,316],{"class":46,"line":47},[44,309,258],{"class":50},[44,311,312],{"class":54}," systemctl",[44,314,315],{"class":54}," restart",[44,317,318],{"class":54}," docker\n",[132,320,322],{"id":321},"fedora","Fedora",[25,324,325],{},[28,326,327],{},"Configure the production repository:",[35,329,331],{"className":37,"code":330,"language":39,"meta":22,"style":22},"curl -s -L https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Fnvidia-container-toolkit.repo | \\\nsudo tee \u002Fetc\u002Fyum.repos.d\u002Fnvidia-container-toolkit.repo\n",[41,332,333,348],{"__ignoreMap":22},[44,334,335,337,339,341,344,346],{"class":46,"line":47},[44,336,150],{"class":50},[44,338,188],{"class":153},[44,340,191],{"class":153},[44,342,343],{"class":54}," https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Fnvidia-container-toolkit.repo",[44,345,160],{"class":72},[44,347,178],{"class":153},[44,349,350,352,354],{"class":46,"line":58},[44,351,258],{"class":50},[44,353,219],{"class":54},[44,355,356],{"class":54}," \u002Fetc\u002Fyum.repos.d\u002Fnvidia-container-toolkit.repo\n",[25,358,359],{"start":58},[28,360,361],{},"Optionally, configure the repository to use experimental packages:",[35,363,365],{"className":37,"code":364,"language":39,"meta":22,"style":22},"\n# 如果是RHEL或者Rocky（DNF4）\nsudo dnf config-manager --add-repo https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Flibnvidia-container.repo\n\n# 如果是Feodra41+（DNF5）\nsudo dnf config-manager addrepo --from-repofile=https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Flibnvidia-container.repo\n",[41,366,367,373,378,394,398,403],{"__ignoreMap":22},[44,368,369],{"class":46,"line":47},[44,370,372],{"emptyLinePlaceholder":371},true,"\n",[44,374,375],{"class":46,"line":58},[44,376,377],{"class":61},"# 如果是RHEL或者Rocky（DNF4）\n",[44,379,380,382,385,388,391],{"class":46,"line":65},[44,381,258],{"class":50},[44,383,384],{"class":54}," dnf",[44,386,387],{"class":54}," config-manager",[44,389,390],{"class":153}," --add-repo",[44,392,393],{"class":54}," https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Flibnvidia-container.repo\n",[44,395,396],{"class":46,"line":213},[44,397,372],{"emptyLinePlaceholder":371},[44,399,400],{"class":46,"line":227},[44,401,402],{"class":61},"# 如果是Feodra41+（DNF5）\n",[44,404,405,407,409,411,414],{"class":46,"line":235},[44,406,258],{"class":50},[44,408,384],{"class":54},[44,410,387],{"class":54},[44,412,413],{"class":54}," addrepo",[44,415,416],{"class":153}," --from-repofile=https:\u002F\u002Fnvidia.github.io\u002Flibnvidia-container\u002Fstable\u002Frpm\u002Flibnvidia-container.repo\n",[25,418,419],{"start":65},[28,420,421],{},"Install the NVIDIA Container Toolkit packages:",[35,423,425],{"className":37,"code":424,"language":39,"meta":22,"style":22},"\n# 如果是RHEL或者Rocky\nsudo dnf install -y nvidia-container-toolkit\n\n# 如果是Fedora\nsudo dnf install -y nvidia-container-toolkit\n",[41,426,427,431,436,449,453,458],{"__ignoreMap":22},[44,428,429],{"class":46,"line":47},[44,430,372],{"emptyLinePlaceholder":371},[44,432,433],{"class":46,"line":58},[44,434,435],{"class":61},"# 如果是RHEL或者Rocky\n",[44,437,438,440,442,444,446],{"class":46,"line":65},[44,439,258],{"class":50},[44,441,384],{"class":54},[44,443,263],{"class":54},[44,445,266],{"class":153},[44,447,448],{"class":54}," nvidia-container-toolkit\n",[44,450,451],{"class":46,"line":213},[44,452,372],{"emptyLinePlaceholder":371},[44,454,455],{"class":46,"line":227},[44,456,457],{"class":61},"# 如果是Fedora\n",[44,459,460,462,464,466,468],{"class":46,"line":235},[44,461,258],{"class":50},[44,463,384],{"class":54},[44,465,263],{"class":54},[44,467,266],{"class":153},[44,469,448],{"class":54},[25,471,472],{"start":213},[28,473,474,476,477,480],{},[107,475,248],{}," ： 在Fedora上使用",[41,478,479],{},"dnf","进行安装。",[35,482,484],{"className":37,"code":483,"language":39,"meta":22,"style":22},"sudo dnf install -y nvidia-docker2\n",[41,485,486],{"__ignoreMap":22},[44,487,488,490,492,494,496],{"class":46,"line":47},[44,489,258],{"class":50},[44,491,384],{"class":54},[44,493,263],{"class":54},[44,495,266],{"class":153},[44,497,269],{"class":54},[25,499,500],{"start":227},[28,501,502,505],{},[107,503,504],{},"使用nvidia-ctk命令配置容器运行时"," ： 这个命令用于配置NVIDIA Container Toolkit与Docker集成。命令如下：",[35,507,508],{"className":37,"code":277,"language":39,"meta":22,"style":22},[41,509,510],{"__ignoreMap":22},[44,511,512,514,516,518,520],{"class":46,"line":47},[44,513,258],{"class":50},[44,515,286],{"class":54},[44,517,289],{"class":54},[44,519,292],{"class":54},[44,521,295],{"class":153},[25,523,524],{"start":235},[28,525,526,529],{},[107,527,528],{},"重启Docker服务"," ： 完成配置后，必须重启Docker服务以使更改生效：",[35,531,532],{"className":37,"code":303,"language":39,"meta":22,"style":22},[41,533,534],{"__ignoreMap":22},[44,535,536,538,540,542],{"class":46,"line":47},[44,537,258],{"class":50},[44,539,312],{"class":54},[44,541,315],{"class":54},[44,543,318],{"class":54},[17,545,546,547,550],{},"这些步骤执行后，Docker将使用NVIDIA Container Runtime，并支持GPU加速的容器运行。你可以使用",[41,548,549],{},"nvidia-smi","命令来验证容器中的NVIDIA GPU是否可用。",[125,552,553],{"id":553},"测试是否可用",[25,555,556],{},[28,557,558,561],{},[107,559,560],{},"运行nvidia cuda 容器进行测试"," ：",[17,563,564],{},"可以使用下面指令进行测试，docker会自动从nvidia\u002Fcuda拉取11.0.3-base-ubuntu20.04镜像，并创建一个运行一次即删除的容器。",[35,566,568],{"className":37,"code":567,"language":39,"meta":22,"style":22},"sudo docker run --rm --gpus all nvidia\u002Fcuda:11.0.3-base-ubuntu20.04 nvidia-smi\n",[41,569,570],{"__ignoreMap":22},[44,571,572,574,577,580,583,586,589,592],{"class":46,"line":47},[44,573,258],{"class":50},[44,575,576],{"class":54}," docker",[44,578,579],{"class":54}," run",[44,581,582],{"class":153}," --rm",[44,584,585],{"class":153}," --gpus",[44,587,588],{"class":54}," all",[44,590,591],{"class":54}," nvidia\u002Fcuda:11.0.3-base-ubuntu20.04",[44,593,594],{"class":54}," nvidia-smi\n",[17,596,597],{},[20,598],{"alt":22,"src":599},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage8.webp",[17,601,602],{},[20,603],{"alt":22,"src":604},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage9.webp",[12,606,608],{"id":607},"docker配置cuda和cudnn","Docker配置CUDA和CuDNN",[17,610,611],{},"如果你不需要自己创建Docker镜像，直接使用学长或者其他人创建好的镜像，则不用看该章节，容器的CUDA和CuDNN是和本地完全隔离的环境，你本地有没有CUDA都无所谓，但英伟达驱动版本必须满足CUDA的最低版本要求。",[17,613,614],{},"下面是如果你想自己创建镜像，则可以在学会如何创建容器的镜像后再回来看本节：",[17,616,617],{},[119,618,619],{"href":619,"rel":620},"https:\u002F\u002Fhub.docker.com\u002Fr\u002Fnvidia\u002Fcuda",[123],[17,622,623],{},"在上方这个网站中，英伟达都帮我们配置好了CUDA和CuDNN了，我们根本不需要自己去配置了，比传统方式要简单太多太多了。",[17,625,626],{},"我们只需要找到对应的Docker镜像当底包即可。",[17,628,629],{},"CUDA镜像有三个类型，如下，如果我们需要编译OpenCV4,那么需要使用devel版的CUDA。",[631,632,633,653],"table",{},[634,635,636],"thead",{},[637,638,639,644,647,650],"tr",{},[640,641,643],"th",{"align":642},"left","镜像类型",[640,645,646],{"align":642},"适用场景",[640,648,649],{"align":642},"示例标签",[640,651,652],{"align":642},"大小",[654,655,656,671,685],"tbody",{},[637,657,658,662,665,668],{},[659,660,661],"td",{"align":642},"base",[659,663,664],{"align":642},"仅需 CUDA 运行时库",[659,666,667],{"align":642},"12.4.0-base-ubuntu22.04",[659,669,670],{"align":642},"~240MB",[637,672,673,676,679,682],{},[659,674,675],{"align":642},"runtime",[659,677,678],{"align":642},"部署编译后的应用（含数学库）",[659,680,681],{"align":642},"12.4.0-runtime-ubuntu22.04",[659,683,684],{"align":642},"~2GB",[637,686,687,690,693,696],{},[659,688,689],{"align":642},"devel",[659,691,692],{"align":642},"开发环境（含编译工具）",[659,694,695],{"align":642},"12.4.0-devel-ubuntu22.04",[659,697,698],{"align":642},"~3GB",[17,700,701,702,705],{},"我示例一个，比如我想用在Ubuntu24.04上用CUDA12.6和CuDNN，那么就选择",[41,703,704],{},"nvidia\u002Fcuda:12.6.0-cudnn-devel-ubuntu24.04","。这个镜像既有CUDA-devel也有CuDNN，而且还是基于Ubuntu24.04的。",[17,707,708],{},[20,709],{"alt":22,"src":710},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2024\u002F10\u002F03\u002Fimage10.webp",[17,712,713],{},"在dockerfile里就可以开头这么写。",[35,715,719],{"className":716,"code":717,"language":718,"meta":22,"style":22},"language-dockerfile shiki shiki-themes github-light github-dark","\n# 基于NVIDIA官方CUDA 12.6和CuDNN基础镜像\nFROM nvidia\u002Fcuda:12.6.0-cudnn-devel-ubuntu24.04\n","dockerfile",[41,720,721,725,730],{"__ignoreMap":22},[44,722,723],{"class":46,"line":47},[44,724,372],{"emptyLinePlaceholder":371},[44,726,727],{"class":46,"line":58},[44,728,729],{"class":61},"# 基于NVIDIA官方CUDA 12.6和CuDNN基础镜像\n",[44,731,732,735],{"class":46,"line":65},[44,733,734],{"class":72},"FROM",[44,736,737],{"class":68}," nvidia\u002Fcuda:12.6.0-cudnn-devel-ubuntu24.04\n",[12,739,740],{"id":740},"配置以太网",[35,742,744],{"className":37,"code":743,"language":39,"meta":22,"style":22},"--net=host \\\n",[41,745,746],{"__ignoreMap":22},[44,747,748,751,753,756],{"class":46,"line":47},[44,749,750],{"class":68},"--net",[44,752,73],{"class":72},[44,754,755],{"class":54},"host",[44,757,178],{"class":50},[17,759,760],{},"启动参数里加上这行即可。具体在下方。",[762,763,764],"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 pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}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);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":22,"searchDepth":58,"depth":58,"links":766},[767,768,769,770],{"id":14,"depth":65,"text":15},{"id":101,"depth":65,"text":102},{"id":607,"depth":65,"text":608},{"id":740,"depth":65,"text":740},0,"0300","2024-10-03","2024-10-03-docker-jiao-cheng","\u002Fwiki\u002F2024-10-03-docker-jiao-cheng","Docker教程","md",false,{},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0300-docker-zhi-tong",{"title":5,"description":22},"wiki\u002F2024-10-03-Docker教程\u002F0300-Docker直通","40g9iD43NCvmdx3Aj8xBHt9EINpWFyqG4vRyQ2MwILI",[785,791,797,799,805,811,817,823,829,835,841,847],{"path":786,"stem":787,"title":788,"authors":789,"date":773,"chapterOrder":790,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0100-jian-jie","wiki\u002F2024-10-03-Docker教程\u002F0100-简介","简介",[7],"0100",{"path":792,"stem":793,"title":794,"authors":795,"date":773,"chapterOrder":796,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0200-an-zhuang-docker","wiki\u002F2024-10-03-Docker教程\u002F0200-安装Docker","安装Docker",[7],"0200",{"path":780,"stem":782,"title":5,"authors":798,"date":773,"chapterOrder":772,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},[7],{"path":800,"stem":801,"title":802,"authors":803,"date":773,"chapterOrder":804,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0400-dockerhub-huan-yuan","wiki\u002F2024-10-03-Docker教程\u002F0400-DockerHub换源","DockerHub换源",[7],"0400",{"path":806,"stem":807,"title":808,"authors":809,"date":773,"chapterOrder":810,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0500-docker-rong-qi-li-de-cheng-xu-de-tu-xing-jie-mian-tan-bu-chu-lai","wiki\u002F2024-10-03-Docker教程\u002F0500-docker容器里的程序的图形界面弹不出来","docker容器里的程序的图形界面弹不出来",[7],"0500",{"path":812,"stem":813,"title":814,"authors":815,"date":773,"chapterOrder":816,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0600-docker-ming-ling-xue-xi","wiki\u002F2024-10-03-Docker教程\u002F0600-Docker命令学习","Docker命令学习",[7],"0600",{"path":818,"stem":819,"title":820,"authors":821,"date":773,"chapterOrder":822,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0650-shou-dong-chuang-jian-docker-jing-xiang","wiki\u002F2024-10-03-Docker教程\u002F0650-手动创建Docker镜像","手动创建Docker镜像",[7],"0650",{"path":824,"stem":825,"title":826,"authors":827,"date":773,"chapterOrder":828,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0675-vscode-yuan-cheng-kai-fa","wiki\u002F2024-10-03-Docker教程\u002F0675-VScode远程开发","VScode远程开发",[7],"0675",{"path":830,"stem":831,"title":832,"authors":833,"date":773,"chapterOrder":834,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F0700-ge-zhong-docker-rong-qi-bu-shu","wiki\u002F2024-10-03-Docker教程\u002F0700-各种Docker容器部署","各种Docker容器部署",[7],"0700",{"path":836,"stem":837,"title":838,"authors":839,"date":773,"chapterOrder":840,"chapterDepth":47,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F1000-0100-kuai-su-da-kai-zhong-duan","wiki\u002F2024-10-03-Docker教程\u002F1000-0100-快速打开终端","Docker快速打开终端",[7],"1000-0100",{"path":842,"stem":843,"title":844,"authors":845,"date":773,"chapterOrder":846,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":778},"\u002Fwiki\u002F2024-10-03-docker-jiao-cheng\u002F1000-docker-shi-yong-you-hua","wiki\u002F2024-10-03-Docker教程\u002F1000-Docker使用优化","Docker使用优化",[7],"1000",{"path":775,"stem":848,"title":776,"authors":849,"date":773,"chapterOrder":850,"chapterDepth":771,"docKey":774,"docRoot":775,"docTitle":776,"isWikiDoc":371,"isWikiIndex":371},"wiki\u002F2024-10-03-Docker教程\u002Findex",[7],null,[852,854,857,860],{"name":7,"image":853},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":855,"image":856},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":858,"image":859},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":861,"image":862},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431905169]