Docker日常工作常用命令
<div class="lake-content"><h2 id="A7MMd"><span class="ne-text">容器生命周期管理</span></h2>
<h3 id="v7pRq"><span class="ne-text">Docker创建新容器并运行</span></h3>
<p id="u52b42eda" class="ne-p"><span class="ne-text"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker run IMAGE </span></code></span></p>
<p id="u2f0b71b2" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="ub9dc18ce"><span class="ne-text">-a stdin:<span class="ne-text"> <span class="ne-text">指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;</span></span></span></li>
<li id="u71ea3392"><span class="ne-text">-d:<span class="ne-text"> <span class="ne-text">后台运行容器,并返回容器ID;</span></span></span></li>
<li id="ub3db5a94"><span class="ne-text">-i:<span class="ne-text"> <span class="ne-text">以交互模式运行容器,通常与 -t 同时使用;</span></span></span></li>
<li id="u6e5b2270"><span class="ne-text">-t:<span class="ne-text"> <span class="ne-text">为容器重新分配一个伪输入终端,通常与 -i 同时使用;</span></span></span></li>
<li id="u914a932d"><span class="ne-text">--name="nginx-lb":<span class="ne-text"> <span class="ne-text">为容器指定一个名称;</span></span></span></li>
<li id="u1da42682"><span class="ne-text">--dns 8.8.8.8:<span class="ne-text"> <span class="ne-text">指定容器使用的DNS服务器,默认和宿主一致;</span></span></span></li>
<li id="u526ffdcd"><span class="ne-text">--dns-search example.com:<span class="ne-text"> <span class="ne-text">指定容器DNS搜索域名,默认和宿主一致;</span></span></span></li>
<li id="ua9ccaff4"><span class="ne-text">-h "mars":<span class="ne-text"> <span class="ne-text">指定容器的hostname;</span></span></span></li>
<li id="u1740b9fd"><span class="ne-text">-e username="ritchie":<span class="ne-text"> <span class="ne-text">设置环境变量;</span></span></span></li>
<li id="u9f573c99"><span class="ne-text">--env-file=[]:<span class="ne-text"> <span class="ne-text">从指定文件读入环境变量;</span></span></span></li>
<li id="uc7157dbf"><span class="ne-text">--cpuset="0-2" or --cpuset="0,1,2":<span class="ne-text"> <span class="ne-text">绑定容器到指定CPU运行;</span></span></span></li>
<li id="uda8f9a30"><span class="ne-text">-m :<span class="ne-text">设置容器使用内存最大值;</span></span></li>
<li id="ua14569be"><span class="ne-text">--net="bridge":<span class="ne-text"> <span class="ne-text">指定容器的网络连接类型,支持 bridge/host/none/container:<span class="ne-text"> <span class="ne-text">四种类型;</span></span></span></span></span></li>
<li id="ub4ff4cf6"><span class="ne-text">--link=[]:<span class="ne-text"> <span class="ne-text">添加链接到另一个容器;</span></span></span></li>
<li id="uad609f9a"><span class="ne-text">--expose=[]: 开放一个端口或一组端口;</span></li>
</ul>
<p id="u6781454f" class="ne-p"><strong>实例:</strong></p>
<div class="lake-content">
<p id="u88918b9f" class="ne-p"><span class="ne-text">使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为yyflightNginx:</span></p>
<div class="cnblogs_code">
<pre>docker run --name yyflightNginx -<span style="color: rgba(0, 0, 0, 1)">d nginx:latest
执行完后可使用docker ps验证容器是否成功运行</span></pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903175939584-654994773.png" alt="" loading="lazy"></p>
</div>
<h3><span class="ne-text">Dcoker start/stop/restart</span></h3>
<h4 id="e1Ct3"><span class="ne-text">docker start 容器名:启动一个或多少已经被停止的容器</span></h4>
<div class="cnblogs_code">
<pre>docker start yyflightNginx</pre>
</div>
<div class="lake-content"><img src="https://cdn.nlark.com/yuque/0/2022/png/1148327/1662176132907-8f821005-5923-4631-8426-3b9eba431410.png" width="809" id="uaf7d460b" class="ne-image"></div>
<h4 id="f4U1u"><span class="ne-text">docker stop 容器名:停止一个运行中的容器</span></h4>
<div class="cnblogs_code">
<pre>docker stop yyflightNginx</pre>
</div>
<p> </p>
<div class="lake-content"><img src="https://cdn.nlark.com/yuque/0/2022/png/1148327/1662176098844-8f5603cf-069d-4c17-8bee-dcad08576bed.png" width="651" id="ueb63d0be" class="ne-image"></div>
<h4 id="NHWwG"><span class="ne-text">docker restart 容器名:重启容器</span></h4>
<div class="cnblogs_code">
<pre>docker restart yyflightNginx</pre>
</div>
<div class="lake-content"><img src="https://cdn.nlark.com/yuque/0/2022/png/1148327/1662176169112-61c55627-34ba-4e90-9539-450dab1d0677.png" width="764" id="u03ced08d" class="ne-image"></div>
<h3 id="JpzmT"><span class="ne-text">Docker杀死运行中的容器</span></h3>
<blockquote>
<p id="u2cc6c9f8" class="ne-p"><span class="ne-text">docker kill :杀掉一个运行中的容器。</span></p>
</blockquote>
<p id="uf7c93999" class="ne-p"><strong>实例:</strong></p>
<p id="u754b9cf8" class="ne-p"><span class="ne-text">杀死运行中的nginx容器<span class="ne-text">yyflightNginx</span></span></p>
<div class="cnblogs_code">
<pre>docker kill yyflightNginx</pre>
</div>
<div class="lake-content"><img src="https://cdn.nlark.com/yuque/0/2022/png/1148327/1662176354603-14bc9ce0-f3a6-44fc-8031-4ab3e77ef02b.png" width="663" id="uaf79b537" class="ne-image"></div>
<h3 id="SxXGF"><span class="ne-text">Docker删除一个或者多个容器</span></h3>
<p id="u4882183f" class="ne-p"><span class="ne-text"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker rm CONTAINER </span></code></span></p>
<p id="ua0629aeb" class="ne-p"><strong>实例:</strong></p>
<p id="u76da5c64" class="ne-p"><span class="ne-text">1、强制删除容器 yyflightNginx001、yyflightNginx02</span></p>
<div class="cnblogs_code">
<pre>docker rm -fyyflightNginx001、yyflightNginx02</pre>
</div>
<p id="u03767c92" class="ne-p"><span class="ne-text">2、移除容器nginx01对容器db01的连接,连接名db</span></p>
<div class="cnblogs_code">
<pre>docker rm -l db </pre>
</div>
<p id="ud1e5a42c" class="ne-p"><span class="ne-text">3、删除容器nginx01,并删除容器挂载的数据卷</span></p>
<div class="cnblogs_code">
<pre>docker rm -v nginx01</pre>
</div>
<h3 id="VXkPR"><span class="ne-text">Docker创建新容器但不启用</span></h3>
<p id="u6409a2ef" class="ne-p"><span class="ne-text"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker create IMAGE </span></code></span></p>
<p id="u8732c41b" class="ne-p"><strong>实例:</strong></p>
<p id="u8d965188" class="ne-p"><span class="ne-text">使用docker镜像nginx:latest创建一个容器,并将容器命名为yyflightNginx001</span></p>
<div class="cnblogs_code">
<pre>docker create --name yyflightNginx001 nginx:latest</pre>
</div>
<h3 id="gX1pY"><span class="ne-text">Docker容器暂停和恢复</span></h3>
<h4 id="hbwZL"><span class="ne-text">docker pause :暂停容器中所有的进程</span></h4>
<p id="ucd4a30c9" class="ne-p"><span class="ne-text">暂停数据库容器db01提供服务:</span></p>
<div class="cnblogs_code">
<pre>docker pause db01</pre>
</div>
<h4 id="nrZTr"><span class="ne-text">docker unpause :恢复容器中所有的进程</span></h4>
<p id="u56600791" class="ne-p"><span class="ne-text">恢复数据库容器db01提供服务:</span></p>
<div class="cnblogs_code">
<pre>docker unpause db01</pre>
</div>
<h2 id="Z0Ies"><span class="ne-text">容器操作</span></h2>
<h3 id="QAMx4"><span class="ne-text">查看本地正在运行的容器</span></h3>
<p id="u30906aa5" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker ps </span></code></p>
<p id="u644fe8ba" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u53d13aac"><span class="ne-text">-a :<span class="ne-text">显示所有的容器,包括未运行的。</span></span></li>
<li id="u7e26df5c"><span class="ne-text">-f :<span class="ne-text">根据条件过滤显示的内容。</span></span></li>
<li id="ufbf2f5b3"><span class="ne-text">--format :<span class="ne-text">指定返回值的模板文件。</span></span></li>
<li id="u9c4ae496"><span class="ne-text">-l :<span class="ne-text">显示最近创建的容器。</span></span></li>
<li id="u12fe2dd6"><span class="ne-text">-n :<span class="ne-text">列出最近创建的n个容器。</span></span></li>
<li id="u5ace1f41"><span class="ne-text">--no-trunc :<span class="ne-text">不截断输出。</span></span></li>
<li id="ud2c22290"><span class="ne-text">-q :<span class="ne-text">静默模式,只显示容器编号。</span></span></li>
<li id="u186fc713"><span class="ne-text">-s :显示总的文件大小。</span></li>
</ul>
<div class="cnblogs_code">
<pre>docker ps</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903180951151-1643747031.png" alt="" loading="lazy"></p>
<h3 id="Yq4va"><span class="ne-text">Docker<span class="ne-text">查看容器中运行的进程信息</span></span></h3>
<blockquote>
<p id="ud61d6e7c" class="ne-p"><span class="ne-text">docker top:查看容器中运行的进程信息,支持 ps 命令参数。</span></p>
</blockquote>
<p id="u48d04c8f" class="ne-p"><strong>实例:</strong></p>
<p id="ubeb78771" class="ne-p"><span class="ne-text">查看容器yyflightNginx的进程信息:</span></p>
<div class="cnblogs_code">
<pre>docker top yyflightNginx</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181044779-36050710.png" alt="" loading="lazy"></p>
<h3 id="Z6NwF"><span class="ne-text">Dcoker<span class="ne-text">获取容器的日志</span></span></h3>
<p id="u063973af" class="ne-p"><span class="ne-text">语法: <code class="ne-code"><span class="ne-text">docker logs CONTAINER</span></code></span></p>
<p id="u5ebb84e6" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u6f480555"><span class="ne-text">-f : 跟踪日志输出</span></li>
<li id="uc4164388"><span class="ne-text">--since :<span class="ne-text">显示某个开始时间的所有日志</span></span></li>
<li id="u6616f697"><span class="ne-text">-t :<span class="ne-text"> <span class="ne-text">显示时间戳</span></span></span></li>
<li id="ue231c792"><span class="ne-text">--tail :仅列出最新N条容器日志</span></li>
</ul>
<p id="ub23140d4" class="ne-p"><strong>实例:</strong></p>
<p id="ue010342e" class="ne-p"><span class="ne-text">跟踪查看容器yyflightNginx的日志输出(<span class="ne-text"><span style="color: rgba(255, 0, 0, 1)">帮你查看这个容器在某个时间段被执行了什么操作</span><span class="ne-text">):</span></span></span></p>
<div class="cnblogs_code">
<pre>docker logs -f yyflightNginx</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181244355-880185305.png" alt="" loading="lazy"></p>
<h3 id="h5jtM"><span class="ne-text">Docker<span class="ne-text">列出指定的容器的端口映射</span></span></h3>
<blockquote>
<p id="ufa0b070f" class="ne-p"><span class="ne-text">docker port :列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。</span></p>
</blockquote>
<p id="u9d4c0d8a" class="ne-p"><strong>实例:</strong></p>
<p id="u9df549cc" class="ne-p"><span class="ne-text">查看容器yyflightNginx的端口映射情况:</span></p>
<div class="cnblogs_code">
<pre>docker port yyflightNginx</pre>
</div>
<h2 id="AVJuP"><span class="ne-text">Docker <span class="ne-text">info|version|<span class="ne-text">status</span></span></span></h2>
<h3 id="GpDhr"><span class="ne-text">Docker版本信息查看</span></h3>
<p id="ubd78a70b" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker version </span></code></p>
<p id="u6097b3d9" class="ne-p"><strong><span class="ne-text">OPTIONS说明:</span></strong></p>
<ul class="ne-ul">
<li id="uc1d6c079"><span class="ne-text">-f :指定返回值的模板文件。</span></li>
</ul>
<div class="cnblogs_code">
<pre>docker version</pre>
</div>
<p class="ne-p"><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181705846-1095293461.png" alt="" loading="lazy"></p>
<h3 id="Ha0fg"><span class="ne-text">查看Docker系统信息</span></h3>
<div class="ne-quote">
<p id="u64f09fd5" class="ne-p"><span class="ne-text">显示 Docker 系统信息,包括镜像和容器数。</span></p>
<div class="cnblogs_code">
<pre>docker info</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181742688-1199527817.png" alt="" loading="lazy"></p>
</div>
<h3 id="XUl68"><span class="ne-text">Docker服务状态查看</span></h3>
<div class="cnblogs_code">
<pre>systemctl status docker</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181824661-254830212.png" alt="" loading="lazy"></p>
<h2 id="eQuCr"><span class="ne-text">Docker本地镜像管理</span></h2>
<h3 id="DvBmn"><span class="ne-text">查看本地镜像列表</span></h3>
<p id="uc1a0c53f" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker images ]</span></code></p>
<p id="u0df4c38e" class="ne-p"><span class="ne-text">OPTIONS说明:</span></p>
<ul class="ne-ul">
<li id="u6cc25162"><span class="ne-text">-a :<span class="ne-text">列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);</span></span></li>
<li id="ua8bafc2a"><span class="ne-text">--digests :<span class="ne-text">显示镜像的摘要信息;</span></span></li>
<li id="u92db19ce"><span class="ne-text">-f :<span class="ne-text">显示满足条件的镜像;</span></span></li>
<li id="u2eff3959"><span class="ne-text">--format :<span class="ne-text">指定返回值的模板文件;</span></span></li>
<li id="u85d0c655"><span class="ne-text">--no-trunc :<span class="ne-text">显示完整的镜像信息;</span></span></li>
<li id="u90ef7008"><span class="ne-text">-q :只显示镜像ID。</span></li>
</ul>
<div class="cnblogs_code">
<pre>docker images</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903181851116-1611264947.png" alt="" loading="lazy"></p>
<h3 id="wmN1y"><span class="ne-text">Docker<span class="ne-text">删除本地一个或多少镜像</span></span></h3>
<p id="u5dfb8aeb" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker rmi IMAGE </span></code></p>
<p id="uad1f1cc9" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="ub9b3be3f"><span class="ne-text">-f :<span class="ne-text">强制删除;</span></span></li>
<li id="u3f2efbf9"><span class="ne-text">--no-prune :不移除该镜像的过程镜像,默认移除;</span></li>
</ul>
<p id="u98f5d13a" class="ne-p"><strong>实例:</strong></p>
<p id="uf4a61e8a" class="ne-p"><span class="ne-text">强制删除本地镜像nginx/ubuntu</span></p>
<div class="cnblogs_code">
<pre>docker rmi -f nginx/ubuntu</pre>
</div>
<h3 id="jgNK9"><span class="ne-text">Docker给本地镜像打标签</span></h3>
<blockquote>
<p id="u83cbbd31" class="ne-p"><span class="ne-text">docker tag : 标记本地镜像,将其归入某一仓库。</span></p>
</blockquote>
<p id="ucb0bae15" class="ne-p"><span class="ne-text">语法:<code class="ne-code"><span class="ne-text">docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]</span></code><span class="ne-text"><br></span></span></p>
<blockquote>
<p class="ne-p"><span class="ne-text"><span class="ne-text"><span class="ne-text">Docker镜像打标签在我们的实际开发中非常常用,比如说公司的项目每次开发都会发布一个版本然后我们通过打标签来区分不同版本,如果以后想要回滚版本就可以使用指定的标签的镜像来创建容器。</span></span></span></p>
</blockquote>
<p id="u7c0c4a9f" class="ne-p"><strong>实例:</strong></p>
<p id="u66a81426" class="ne-p"><span class="ne-text">1、比如说我本地现在有一个nginx的镜像:</span></p>
<div class="cnblogs_code">
<pre>docker images</pre>
</div>
<p class="ne-p"><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903182015582-1003509775.png" alt="" loading="lazy"></p>
<p id="u12b71cb8" class="ne-p"><span class="ne-text">2、我对nginx进行了开发,发布第一个版本,我就可以通过对这个版本打标签,打完标签后生成新的镜像:</span></p>
<div class="cnblogs_code">
<pre>docker tag nginx nginx:v001</pre>
</div>
<p class="ne-p"><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903182034239-1747165735.png" alt="" loading="lazy"></p>
<h3 id="k4X8D"><span class="ne-text">Docker<span class="ne-text">使用Dockerfile创建镜像</span></span></h3>
<p id="ue4a0af89" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker build PATH | URL | -</span></code></p>
<p id="ud92a607b" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u0484b612"><span class="ne-text">--build-arg=[] :<span class="ne-text">设置镜像创建时的变量;</span></span></li>
<li id="u69e324d9"><span class="ne-text">--cpu-shares :<span class="ne-text">设置 cpu 使用权重;</span></span></li>
<li id="u603e318e"><span class="ne-text">--cpu-period :<span class="ne-text">限制 CPU CFS周期;</span></span></li>
<li id="u3c71554f"><span class="ne-text">--cpu-quota :<span class="ne-text">限制 CPU CFS配额;</span></span></li>
<li id="u645dc36c"><span class="ne-text">--cpuset-cpus :<span class="ne-text">指定使用的CPU id;</span></span></li>
<li id="uf82d5adc"><span class="ne-text">--cpuset-mems :<span class="ne-text">指定使用的内存 id;</span></span></li>
<li id="ua025f41c"><span class="ne-text">--disable-content-trust :<span class="ne-text">忽略校验,默认开启;</span></span></li>
<li id="uc5454f69"><span class="ne-text">-f :<span class="ne-text">指定要使用的Dockerfile路径;</span></span></li>
<li id="u30520e35"><span class="ne-text">--force-rm :<span class="ne-text">设置镜像过程中删除中间容器;</span></span></li>
<li id="u4f070aa9"><span class="ne-text">--isolation :<span class="ne-text">使用容器隔离技术;</span></span></li>
<li id="ubfe33b37"><span class="ne-text">--label=[] :<span class="ne-text">设置镜像使用的元数据;</span></span></li>
<li id="u7879293b"><span class="ne-text">-m :<span class="ne-text">设置内存最大值;</span></span></li>
<li id="u4bb32ffc"><span class="ne-text">--memory-swap :<span class="ne-text">设置Swap的最大值为内存+swap,"-1"表示不限swap;</span></span></li>
<li id="u0fed05b6"><span class="ne-text">--no-cache :<span class="ne-text">创建镜像的过程不使用缓存;</span></span></li>
<li id="u81e564ae"><span class="ne-text">--pull :<span class="ne-text">尝试去更新镜像的新版本;</span></span></li>
<li id="ucdd9dcb9"><span class="ne-text">-q :<span class="ne-text">安静模式,成功后只输出镜像ID;</span></span></li>
<li id="u6932643d"><span class="ne-text">--rm :<span class="ne-text">设置镜像成功后删除中间容器;</span></span></li>
<li id="ucf2d9327"><span class="ne-text">--shm-size :<span class="ne-text">设置/dev/shm的大小,默认值是64M;</span></span></li>
<li id="uaf3bf5fd"><span class="ne-text">--ulimit :Ulimit配置。</span></li>
</ul>
<p id="u50378806" class="ne-p"><strong>实例:</strong></p>
<p id="u52ab8f5e" class="ne-p"><span class="ne-text">使用当前目录的Dockerfile创建镜像:</span></p>
<div class="cnblogs_code">
<pre>docker build -t w3xue/ubuntu:v1 . </pre>
</div>
<p id="uee9e3dc8" class="ne-p"><span class="ne-text">使用URL github.com/creack/docker-firefox 的 Dockerfile 创建镜像:</span></p>
<div class="cnblogs_code">
<pre>docker build github.com/creack/docker-firefox</pre>
</div>
<h3 id="kL1T1"><span class="ne-text">Dcoker<span class="ne-text">查看指定镜像的创建历史</span></span></h3>
<p id="u7e158c59" class="ne-p"><strong>语法</strong><span class="ne-text">:<code class="ne-code"><span class="ne-text">docker history IMAGE</span></code></span></p>
<p id="u615b31d3" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u029c4e48"><span class="ne-text">-H :<span class="ne-text">以可读的格式打印镜像大小和日期,默认为true;</span></span></li>
<li id="u0ae8a69d"><span class="ne-text">--no-trunc :<span class="ne-text">显示完整的提交记录;</span></span></li>
<li id="u856051d3"><span class="ne-text">-q :仅列出提交记录ID。</span></li>
</ul>
<p id="u9ed062b4" class="ne-p"><strong>实列:</strong></p>
<p id="ucad688a7" class="ne-p"><span class="ne-text">查看容器nginx的创建历史记录:</span></p>
<div class="cnblogs_code">
<pre>docker history nginx</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903182144098-1710843720.png" alt="" loading="lazy"></p>
<h2 id="oMHcf"><span class="ne-text">镜像仓库相关</span></h2>
<h3 id="qKYyM"><span class="ne-text">登录/退出Docker镜像仓库</span></h3>
<blockquote>
<p id="u884795ad" class="ne-p"><span class="ne-text">docker login : 登录到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub</span></p>
<p id="u7e9fad84" class="ne-p"><span class="ne-text">docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub</span></p>
</blockquote>
<p id="u1f1119cf" class="ne-p"><strong>语法:</strong></p>
<pre class="ne-codeblock language-csharp" data-language="csharp">docker login
docker logout </pre>
<p id="u3ed4d3de" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="uff698ecc"><span class="ne-text">-u :<span class="ne-text">登陆的用户名</span></span></li>
<li id="u87a3d66a"><span class="ne-text">-p :登陆的密码</span></li>
</ul>
<p id="uaaf7ad2f" class="ne-p"><strong>实例:</strong></p>
<p id="uc41046e9" class="ne-p"><span class="ne-text">登陆到Docker Hub:</span></p>
<pre class="ne-codeblock language-csharp" data-language="csharp">docker login -u 用户名 -p 密码</pre>
<p id="u373c46d5" class="ne-p"><span class="ne-text">登出Docker Hub:</span></p>
<pre class="ne-codeblock language-csharp" data-language="csharp">docker logout</pre>
<h3 id="KsSNG"><span class="ne-text">Docker从镜像仓库中拉取或者更新指定镜像</span></h3>
<p id="u179bbf0e" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker pull NAME[:TAG|@DIGEST]</span></code></p>
<p id="u93875ac9" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="ub7b911b5"><span class="ne-text">-a :<span class="ne-text">拉取所有 tagged 镜像</span></span></li>
<li id="u1ac3389a"><span class="ne-text">--disable-content-trust :忽略镜像的校验,默认开启</span></li>
</ul>
<p id="uad49bc83" class="ne-p"><strong>实列:</strong></p>
<p id="ubda37def" class="ne-p"><span class="ne-text">从Docker Hub下载最新的ubuntu镜像</span></p>
<div class="cnblogs_code">
<pre>docker pull ubuntu</pre>
</div>
<p id="u3c2996dc" class="ne-p"><span class="ne-text">从Docker Hub下载repository为ubuntu的所有镜像</span></p>
<div class="cnblogs_code">
<pre>docker pull -a ubuntu</pre>
</div>
<h3 id="w2zKA"><span class="ne-text">Docker将本地的镜像上传到镜像仓库</span></h3>
<blockquote>
<p id="uc5a4b2dd" class="ne-p"><strong><span class="ne-text">docker push : 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库</span></strong></p>
</blockquote>
<p id="u36b40eeb" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker push NAME[:TAG]</span></code></p>
<p id="u4fc6d1c6" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u46632fda"><span class="ne-text">--disable-content-trust :忽略镜像的校验,默认开启</span></li>
</ul>
<p id="u7bc2b341" class="ne-p"><strong><span class="ne-text">实例:</span></strong></p>
<p id="u7389118d" class="ne-p"><span class="ne-text">上传本地镜像nginx:v001到镜像仓库中:</span></p>
<div class="cnblogs_code">
<pre>docker push nginx:v001</pre>
</div>
<h3 id="wId1Z"><span class="ne-text">查询Docker Hub镜像</span></h3>
<p id="u3698a6ac" class="ne-p"><strong>语法:</strong><code class="ne-code"><span class="ne-text">docker search TERM</span></code></p>
<p id="u0f762381" class="ne-p"><strong>OPTIONS说明:</strong></p>
<ul class="ne-ul">
<li id="u18971b1f"><span class="ne-text">--automated:弃用,只列出自动构建类型的镜像。</span></li>
<li id="u4b845055"><span class="ne-text">--filter , -f:基于给定条件过滤输出。</span></li>
<li id="u0a9769a8"><span class="ne-text">--format:使用模板格式化显示输出。 </span></li>
<li id="u79de5836"><span class="ne-text">--limit:Max number of search results ,默认值25。</span></li>
<li id="u2eac91d5"><span class="ne-text">--no-trunc:禁止截断输出。</span></li>
<li id="udaf373f4"><span class="ne-text">--stars , -s:弃用,只显示收藏数不小于几颗星的镜像,移到--filter中使用。</span></li>
</ul>
<h4 id="UWt5p"><span class="ne-text">从Docker Hub查找所有镜像名包含redis,并且收藏星数大于10的镜像</span></h4>
<div class="cnblogs_code">
<pre>docker search --filter stars=<span style="color: rgba(128, 0, 128, 1)">10</span> redis</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903182534783-1802558878.png" alt="" loading="lazy"></p>
<h4 id="lMrG4"><span class="ne-text">从Docker Hub查找所有镜像名包含redis的镜像</span></h4>
<div class="cnblogs_code">
<pre>docker search redis</pre>
</div>
<p><img src="https://img2022.cnblogs.com/blog/1336199/202209/1336199-20220903182602518-1972172455.png" alt="" loading="lazy"></p>
<h2>Docker学习系列文章</h2>
<p>入门必备:十本你不容错过的Docker入门到精通书籍推荐👉</p>
<p>day1、全面的Docker快速入门教程👉</p>
<p>day2、CentOS 8.4安装Docker👉</p>
<p>day3、Windows10 Docker安装详细教程👉</p>
<p>day4、Ubuntu 20.04安装Docker👉</p>
<p>day5、Docker日常工作常用命令👉</p>
<h2 id="gk4Ex"><span class="ne-text">参考文章</span></h2>
<p id="cQJT5"><span class="ne-text">Dcoker命令在线速查手册</span></p>
</div>
</div>
<div id="MySignature" role="contentinfo">
<blockquote >
<p style='font-family:YouYuan;font-size: 16px;margin: 0 auto 0.01em auto;'><span style='font-size: 17px; '>作者名称:</span>追逐时光者</p>
<p style='font-family:YouYuan;font-size: 16px;margin: 0 auto 0.01em auto;'><span style='font-size: 17px; '>作者简介:</span>一个热爱编程、善于分享、喜欢学习、探索、尝试新事物和新技术的全栈软件工程师。</p>
<p style='font-family:YouYuan;font-size: 16px;margin: 0 auto 0.01em auto;'>
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。如果该篇文章对您有帮助的话,可以点一下右下角的【♥推荐♥】,希望能够持续的为大家带来好的技术文章,文中可能存在描述不正确的地方,欢迎指正或补充,不胜感激。
</p>
</blockquote><br><br>
来源:https://www.cnblogs.com/Can-daydayup/p/16456586.html
頁:
[1]