<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Docker on Canghai's Blog</title><link>https://blog-old.pages.dev/tags/docker/</link><description>Recent content in Docker on Canghai's Blog</description><generator>Hugo</generator><language>zh</language><lastBuildDate>Tue, 21 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog-old.pages.dev/tags/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>重置Docker网络配置</title><link>https://blog-old.pages.dev/posts/learn/260421-docker-network-reset/</link><pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/260421-docker-network-reset/</guid><description>&lt;p>Docker 网络配置异常时，可能会出现容器无法访问外网、容器之间无法通信、网桥规则混乱等问题。如果确认是 Docker 网络元数据损坏，可以删除 Docker 的网络配置目录，让 Docker 重新生成默认网络。&lt;/p></description></item><item><title>Docker开启IPv6</title><link>https://blog-old.pages.dev/posts/learn/260416-docker-enable-ipv6/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/260416-docker-enable-ipv6/</guid><description>&lt;p>Docker 默认的 bridge 网络不一定开启 IPv6，如果容器需要使用 IPv6，可以参考&lt;a href="https://docs.docker.com/engine/daemon/ipv6/" target="_blank" rel="noopener" style="color:#42b983";>Docker官方文档&lt;/a>修改 Docker daemon 配置。&lt;/p>
&lt;p>编辑&lt;code>/etc/docker/daemon.json&lt;/code>：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-json" data-lang="json">&lt;span style="display:flex;">&lt;span>{
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;#34;ipv6&amp;#34;&lt;/span>: &lt;span style="color:#66d9ef">true&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;#34;fixed-cidr-v6&amp;#34;&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;2001:db8:1::/64&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>保存后重启 Docker：&lt;/p></description></item><item><title>利用Github Action发布Docker镜像</title><link>https://blog-old.pages.dev/posts/learn/230707-github-action-for-docker/</link><pubDate>Fri, 07 Jul 2023 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/230707-github-action-for-docker/</guid><description>&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Build Docker Images&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">on&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">schedule&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">cron&lt;/span>: &lt;span style="color:#e6db74">&amp;#39;0 0 * * *&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">workflow_dispatch&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">jobs&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dockerhub&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">runs-on&lt;/span>: &lt;span style="color:#ae81ff">ubuntu-latest&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">steps&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Checkout&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">uses&lt;/span>: &lt;span style="color:#ae81ff">actions/checkout@v4&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">with&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">fetch-depth&lt;/span>: &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Set up Docker Buildx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">uses&lt;/span>: &lt;span style="color:#ae81ff">docker/setup-buildx-action@v3&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Login to Docker Hub&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">uses&lt;/span>: &lt;span style="color:#ae81ff">docker/login-action@v3&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">with&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">username&lt;/span>: &lt;span style="color:#ae81ff">user&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">password&lt;/span>: &lt;span style="color:#ae81ff">${{ secrets.DOCKERHUB_TOKEN }}&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Build and push&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">uses&lt;/span>: &lt;span style="color:#ae81ff">docker/build-push-action@v5&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">with&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">platforms&lt;/span>: &lt;span style="color:#ae81ff">linux/amd64,linux/arm64,linux/arm/v7,linux/s390x&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">push&lt;/span>: &lt;span style="color:#66d9ef">true&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">tags&lt;/span>: &lt;span style="color:#ae81ff">user/app:latest&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>&lt;code>Access Token&lt;/code>可以通过&lt;strong>Docker Hub&lt;/strong>的&lt;strong>Account Settings-&amp;gt;Personal access tokens-&amp;gt;Cenerate new token&lt;/strong>创建，然后通过&lt;strong>GitHub&lt;/strong>仓库的&lt;strong>Settings-&amp;gt;Actions secrets and variables-&amp;gt;New repository secret&lt;/strong>创建&lt;code>DOCKERHUB_TOKEN&lt;/code>。&lt;/li>
&lt;li>&lt;code>tags: user/app:latest&lt;/code>中的&lt;code>user&lt;/code>和&lt;code>app&lt;/code>需要修改为实际的&lt;strong>用户名&lt;/strong>和&lt;strong>镜像名&lt;/strong>。&lt;/li>
&lt;/ul></description></item><item><title>通过IPV6拉取Docker镜像</title><link>https://blog-old.pages.dev/posts/learn/230216-pull-docker-images-via-ipv6/</link><pubDate>Thu, 16 Feb 2023 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/230216-pull-docker-images-via-ipv6/</guid><description>&lt;p>现在我们很高兴为&lt;strong>Docker Hub&lt;/strong>引入&lt;strong>Beta IPv6&lt;/strong>支持！这意味着，如果您使用的是仅限&lt;strong>IPv6&lt;/strong>的网络，您现在可以选择直接使用注册表，而无需NAT64网关。&lt;/p></description></item><item><title>Docker内容器设置开机自启</title><link>https://blog-old.pages.dev/posts/learn/220629-docker-container-autostart/</link><pubDate>Wed, 29 Jun 2022 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/220629-docker-container-autostart/</guid><description>&lt;h4 id="允许docker开机自启">允许Docker开机自启&lt;/h4>
&lt;ul>
&lt;li>设置开机启动&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>systemctl enable docker.service
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="设置容器开机自启">设置容器开机自启&lt;/h4>
&lt;p>以Valutwarden为例&lt;/p>
&lt;ul>
&lt;li>新建容器时配置自启参数&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>docker run &lt;span style="color:#f92672">--&lt;/span>restart&lt;span style="color:#f92672">=&lt;/span>always Valutwarden
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>已存在的容器配置自启参数&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>docker update &lt;span style="color:#f92672">--&lt;/span>restart&lt;span style="color:#f92672">=&lt;/span>always Valutwarden
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Linux安装Docker及Docker Compose</title><link>https://blog-old.pages.dev/posts/learn/220105-linux-install-docker-and-docker-compose/</link><pubDate>Wed, 05 Jan 2022 00:00:00 +0000</pubDate><guid>https://blog-old.pages.dev/posts/learn/220105-linux-install-docker-and-docker-compose/</guid><description>&lt;p>推荐使用Docker官方一键安装脚本&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>curl &lt;span style="color:#f92672">-&lt;/span>fsSL https:&lt;span style="color:#75715e">//get.docker.com | bash -s docker
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>如需自行安装可参考如下步骤：&lt;/p>
&lt;h4 id="安装docker-ce">安装Docker CE&lt;/h4>
&lt;ul>
&lt;li>更新存储库&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>apt&lt;span style="color:#f92672">-&lt;/span>get update &lt;span style="color:#f92672">-&lt;/span>y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>安装依赖&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>apt&lt;span style="color:#f92672">-&lt;/span>get install apt&lt;span style="color:#f92672">-&lt;/span>transport&lt;span style="color:#f92672">-&lt;/span>https ca&lt;span style="color:#f92672">-&lt;/span>certificates curl gnupg&lt;span style="color:#f92672">-&lt;/span>agent software&lt;span style="color:#f92672">-&lt;/span>properties&lt;span style="color:#f92672">-&lt;/span>common &lt;span style="color:#f92672">-&lt;/span>y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>下载并添加 GPG 密钥，&lt;strong>Debian&lt;/strong>执行第一条，&lt;strong>Ubuntu&lt;/strong>执行第二条&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>curl &lt;span style="color:#f92672">-&lt;/span>fsSL https:&lt;span style="color:#75715e">//download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>curl &lt;span style="color:#f92672">-&lt;/span>fsSL https:&lt;span style="color:#75715e">//download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>将Docker CE存储库添加到APT，&lt;strong>Debian&lt;/strong>执行第一条，&lt;strong>Ubuntu&lt;/strong>执行第二条&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable&amp;#34;&lt;/span> &lt;span style="color:#f92672">|&lt;/span> tee &lt;span style="color:#f92672">/&lt;/span>etc&lt;span style="color:#f92672">/&lt;/span>apt&lt;span style="color:#f92672">/&lt;/span>sources.list.d&lt;span style="color:#f92672">/&lt;/span>docker.list
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable&amp;#34;&lt;/span> &lt;span style="color:#f92672">|&lt;/span> tee &lt;span style="color:#f92672">/&lt;/span>etc&lt;span style="color:#f92672">/&lt;/span>apt&lt;span style="color:#f92672">/&lt;/span>sources.list.d&lt;span style="color:#f92672">/&lt;/span>docker.list
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>更新存储库&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>apt&lt;span style="color:#f92672">-&lt;/span>get update &lt;span style="color:#f92672">-&lt;/span>y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>安装Docker CE&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>apt&lt;span style="color:#f92672">-&lt;/span>get install docker&lt;span style="color:#f92672">-&lt;/span>ce docker&lt;span style="color:#f92672">-&lt;/span>ce&lt;span style="color:#f92672">-&lt;/span>cli containerd.io &lt;span style="color:#f92672">-&lt;/span>y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>验证版本&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>docker &lt;span style="color:#f92672">--&lt;/span>version
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="安装docker-compose">安装Docker Compose&lt;/h4>
&lt;p>最新版地址见&lt;a href="https://github.com/docker/compose/" target="_blank" rel="noopener" style="color:#42b983";>Github&lt;/a>&lt;/p></description></item></channel></rss>