<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Docker on 我的博客</title><link>https://hugo.kkun.top/tags/docker/</link><description>Recent content from 我的博客</description><generator>Hugo</generator><language>zh-cn</language><managingEditor>your@email.com (你的名字)</managingEditor><webMaster>your@email.com (你的名字)</webMaster><copyright>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</copyright><lastBuildDate>Fri, 29 Dec 2023 14:44:51 +0000</lastBuildDate><atom:link href="https://hugo.kkun.top/tags/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>常规获取ck教程</title><link>https://hugo.kkun.top/post/jd%E8%8E%B7%E5%8F%96ck/</link><pubDate>Fri, 29 Dec 2023 14:44:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/jd%E8%8E%B7%E5%8F%96ck/</guid><description>
<![CDATA[<h1>常规获取ck教程</h1><p>作者：你的名字（your@email.com）</p>
        
          <p>这里以JD为例</p>
<ol>
<li>
<p>打开[JD](<a href="https://plogin.m.jd.com/login/login?appid=828&amp;returnurl=https%3A%2F%2Fbean.m.jd.com%2Fbean%2FsignIndex.action">京东登录注册 (jd.com)</a>)网站</p>
</li>
<li>
<p>开启调试模式 （F12）</p>
</li>
<li>
<p>登录账号</p>
</li>
<li>
<p>打开网络，找到signindex</p>
<p><img src="https://gh-proxy.com/https://raw.githubusercontent.com/Ghostpanter/tuchuang/main/img/202312290950346.png" alt="image-20231229095003260"></p>
</li>
<li>
<p>找到pt-key以及pt-pin字段</p>
<p><img src="https://gh-proxy.com/https://raw.githubusercontent.com/Ghostpanter/tuchuang/main/img/202312290952578.png" alt="image-20231229095208518"></p>
        
        <hr><p>本文2023-12-29首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-12-29</p>]]></description><category>Docker</category></item><item><title>Docker与Containerd的区别</title><link>https://hugo.kkun.top/post/docker%E5%92%8Ccontainerd%E7%9A%84%E5%8C%BA%E5%88%AB/</link><pubDate>Thu, 07 Sep 2023 09:38:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/docker%E5%92%8Ccontainerd%E7%9A%84%E5%8C%BA%E5%88%AB/</guid><description>
<![CDATA[<h1>Docker与Containerd的区别</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="容器运行时">
<a class="header-anchor" href="#%e5%ae%b9%e5%99%a8%e8%bf%90%e8%a1%8c%e6%97%b6"></a>
容器运行时
</h2><p>容器运行时（Container Runtime）是一种负责在操作系统层面创建和管理容器的软件工具或组件。它是容器化技术的核心组件之一，用于在容器内部运行应用程序，并提供隔离、资源管理和安全等功能。 在Kubernetes中，容器运行时是负责管理和运行容器的组件。在过去，Docker是最常用的容器运行时，但随着时间的推移，containerd成为Kubernetes的另一个受欢迎的容器运行时选择。</p>
        
        <hr><p>本文2023-09-07首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-09-07</p>]]></description><category>Docker</category></item><item><title>Docker 实用工具 gosu 和 su-exec</title><link>https://hugo.kkun.top/post/docker-%E5%AE%9E%E7%94%A8%E5%B7%A5%E5%85%B7-gosu-%E5%92%8C-su-exec/</link><pubDate>Mon, 20 Feb 2023 09:38:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/docker-%E5%AE%9E%E7%94%A8%E5%B7%A5%E5%85%B7-gosu-%E5%92%8C-su-exec/</guid><description>
<![CDATA[<h1>Docker 实用工具 gosu 和 su-exec</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="volume-的权限问题">
<a class="header-anchor" href="#volume-%e7%9a%84%e6%9d%83%e9%99%90%e9%97%ae%e9%a2%98"></a>
volume 的权限问题
</h2><p>在 Docker 中，需要把 host 的目录挂载到 container 中作为 volume 使用时，往往会发生文件权限问题。常见的现象是，container 对该路径并无写权限，以致其中服务的各种千奇百怪的问题。</p>
        
        <hr><p>本文2023-02-20首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-02-20</p>]]></description><category>Docker</category></item><item><title>优化Docker镜像的10个技巧</title><link>https://hugo.kkun.top/post/%E4%BC%98%E5%8C%96docker%E9%95%9C%E5%83%8F%E5%A4%A7%E5%B0%8F/</link><pubDate>Tue, 14 Feb 2023 14:47:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/%E4%BC%98%E5%8C%96docker%E9%95%9C%E5%83%8F%E5%A4%A7%E5%B0%8F/</guid><description>
<![CDATA[<h1>优化Docker镜像的10个技巧</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="什么是-docker">
<a class="header-anchor" href="#%e4%bb%80%e4%b9%88%e6%98%af-docker"></a>
什么是 docker？
</h2><p>Docker 是一种容器引擎，可以在容器内运行一段代码。Docker 镜像是在任何地方运行您的应用程序而无需担心应用程序依赖性的方式。</p>
        
        <hr><p>本文2023-02-14首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-02-14</p>]]></description><category>Docker</category></item><item><title>K8S 和 Docker容器中的退出状态码</title><link>https://hugo.kkun.top/post/k8s%E5%92%8C%E5%AE%B9%E5%99%A8%E4%B8%AD%E7%9A%84%E9%80%80%E5%87%BA%E7%8A%B6%E6%80%81%E7%A0%81/</link><pubDate>Wed, 04 Jan 2023 16:12:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/k8s%E5%92%8C%E5%AE%B9%E5%99%A8%E4%B8%AD%E7%9A%84%E9%80%80%E5%87%BA%E7%8A%B6%E6%80%81%E7%A0%81/</guid><description>
<![CDATA[<h1>K8S 和 Docker容器中的退出状态码</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="什么是容器退出码">
<a class="header-anchor" href="#%e4%bb%80%e4%b9%88%e6%98%af%e5%ae%b9%e5%99%a8%e9%80%80%e5%87%ba%e7%a0%81"></a>
<strong>什么是容器退出码</strong>
</h2><p>当容器终止时，容器引擎使用退出码来报告容器终止的原因。如果您是 Kubernetes 用户，容器故障是 pod 异常最常见的原因之一，了解容器退出码可以帮助您在排查时找到 pod 故障的根本原因。</p>
        
        <hr><p>本文2023-01-04首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-01-04</p>]]></description><category>kubernetes</category><category>Docker</category></item><item><title>盘点Linux的几种配置代理方式</title><link>https://hugo.kkun.top/post/%E7%9B%98%E7%82%B9linux%E7%9A%84%E5%87%A0%E7%A7%8D%E9%85%8D%E7%BD%AE%E4%BB%A3%E7%90%86%E6%96%B9%E5%BC%8F/</link><pubDate>Wed, 04 Jan 2023 09:42:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/%E7%9B%98%E7%82%B9linux%E7%9A%84%E5%87%A0%E7%A7%8D%E9%85%8D%E7%BD%AE%E4%BB%A3%E7%90%86%E6%96%B9%E5%BC%8F/</guid><description>
<![CDATA[<h1>盘点Linux的几种配置代理方式</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="编译环境代理">
<a class="header-anchor" href="#%e7%bc%96%e8%af%91%e7%8e%af%e5%a2%83%e4%bb%a3%e7%90%86"></a>
编译环境代理
</h2><h3 id="1linux设置代理">
<a class="header-anchor" href="#1linux%e8%ae%be%e7%bd%ae%e4%bb%a3%e7%90%86"></a>
1、linux设置代理
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nb">export</span> <span class="nv">http_proxy</span><span class="o">=</span>http://10.67.11.138:7890
</span></span><span class="line"><span class="cl"><span class="nb">export</span> <span class="nv">https_proxy</span><span class="o">=</span>http://10.67.11.138:7890
</span></span></code></pre></div><h3 id="2container设置代理container内部服务代理">
<a class="header-anchor" href="#2container%e8%ae%be%e7%bd%ae%e4%bb%a3%e7%90%86container%e5%86%85%e9%83%a8%e6%9c%8d%e5%8a%a1%e4%bb%a3%e7%90%86"></a>
2、Container设置代理（container内部服务代理）
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">cat /root/.docker/config.json 
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-toml" data-lang="toml"><span class="line"><span class="cl"><span class="p">{</span>
</span></span><span class="line"><span class="cl">    <span class="s2">&#34;proxies&#34;</span><span class="err">:</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl"> <span class="s2">&#34;default&#34;</span><span class="err">:</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;httpProxy&#34;</span><span class="err">:</span> <span class="s2">&#34;http://10.67.11.138:7890&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;httpsProxy&#34;</span><span class="err">:</span> <span class="s2">&#34;http://10.67.11.138:7890&#34;</span>
</span></span><span class="line"><span class="cl"> <span class="p">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><h3 id="3dockerd代理docker-pull">
<a class="header-anchor" href="#3dockerd%e4%bb%a3%e7%90%86docker-pull"></a>
3、dockerd代理（docker pull）
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">systemctl cat docker
</span></span><span class="line"><span class="cl"><span class="c1"># /usr/lib/systemd/system/docker.service</span>
</span></span><span class="line"><span class="cl">...
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">[</span>Service<span class="o">]</span>
</span></span><span class="line"><span class="cl">...
</span></span><span class="line"><span class="cl"><span class="nv">Environment</span><span class="o">=</span><span class="s2">&#34;HTTP_PROXY=http://10.67.11.138:7890/&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">Environment</span><span class="o">=</span><span class="s2">&#34;HTTPS_PROXY=http://10.67.11.138:7890/&#34;</span>
</span></span><span class="line"><span class="cl">...
</span></span></code></pre></div>
        
        <hr><p>本文2023-01-04首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2023-01-04</p>]]></description><category>Linux</category></item><item><title>容器运行时概览</title><link>https://hugo.kkun.top/post/%E5%AE%B9%E5%99%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E6%A6%82%E8%A7%88/</link><pubDate>Thu, 29 Dec 2022 16:02:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/%E5%AE%B9%E5%99%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E6%A6%82%E8%A7%88/</guid><description>
<![CDATA[<h1>容器运行时概览</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="01-容器运行时分类">
<a class="header-anchor" href="#01-%e5%ae%b9%e5%99%a8%e8%bf%90%e8%a1%8c%e6%97%b6%e5%88%86%e7%b1%bb"></a>
01 容器运行时分类
</h2><p>Docker属于容器技术早期的发展项目，也是目前最广泛的容器引擎技术。当然，随着容器生态圈的日益繁荣，业界慢慢也出现了其他各种运行时工具，如containerd、rkt、Kata Container、CRI-O等。这些工具提供的功能不尽相同，有些只有容器运行的功能，有些除运行容器外还提供了容器镜像的管理功能。根据容器运行时提供功能，可以讲容器运行时分为<strong>低层运行时</strong>和<strong>高层运行时</strong>。</p>
        
        <hr><p>本文2022-12-29首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2022-12-29</p>]]></description><category>Docker</category></item><item><title>（Docker）Alpine apk设置国内源</title><link>https://hugo.kkun.top/post/dockeralpine-apk%E8%AE%BE%E7%BD%AE%E5%9B%BD%E5%86%85%E6%BA%90/</link><pubDate>Thu, 29 Dec 2022 15:13:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/dockeralpine-apk%E8%AE%BE%E7%BD%AE%E5%9B%BD%E5%86%85%E6%BA%90/</guid><description>
<![CDATA[<h1>（Docker）Alpine apk设置国内源</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="运行容器xxx示例">
<a class="header-anchor" href="#%e8%bf%90%e8%a1%8c%e5%ae%b9%e5%99%a8xxx%e7%a4%ba%e4%be%8b"></a>
运行容器xxx，示例
</h2><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">docker run -d  <span class="se">\
</span></span></span><span class="line"><span class="cl">--name jk -u root <span class="se">\
</span></span></span><span class="line"><span class="cl">-p 9090:8080  <span class="se">\
</span></span></span><span class="line"><span class="cl">-v /var/jenkins_home:/var/jenkins_home  <span class="se">\
</span></span></span><span class="line"><span class="cl">jenkinsci/blueocean
</span></span></code></pre></div><h2 id="进入容器">
<a class="header-anchor" href="#%e8%bf%9b%e5%85%a5%e5%ae%b9%e5%99%a8"></a>
进入容器
</h2><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">docker <span class="nb">exec</span> -it jk bash <span class="c1">#这里的“jk”是指你创建的镜像容器</span>
</span></span></code></pre></div><p>修改源</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sed -i <span class="s1">&#39;s/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g&#39;</span> /etc/apk/repositories
</span></span></code></pre></div><p>更新设置</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">apk update
</span></span></code></pre></div><p>然后你就可以愉快的使用apk了：apk add maven</p>
<p>附录</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1">#apk命令</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">apk update <span class="c1">#更新最新本地镜像源</span>
</span></span><span class="line"><span class="cl">apk upgrade <span class="c1">#升级软件</span>
</span></span><span class="line"><span class="cl">apk add --upgrade busybox <span class="c1">#指定升级部分软件包</span>
</span></span><span class="line"><span class="cl">apk search <span class="c1">#查找所以可用软件包</span>
</span></span><span class="line"><span class="cl">apk search -v <span class="c1">#查找所有可用软件包及其描述内容</span>
</span></span><span class="line"><span class="cl">apk search -v <span class="s1">&#39;acf*&#39;</span> <span class="c1">#通过软件包名称查找软件包</span>
</span></span><span class="line"><span class="cl">apk search -v -d <span class="s1">&#39;docker&#39;</span> <span class="c1">#通过描述文件查找特定的软件包</span>
</span></span><span class="line"><span class="cl">apk info <span class="c1">#列出所有已安装的软件包</span>
</span></span><span class="line"><span class="cl">apk info -a zlib <span class="c1">#显示完整的软件包信息</span>
</span></span><span class="line"><span class="cl">apk info --who-owns /sbin/lbu <span class="c1">#显示指定文件属于的包</span>
</span></span><span class="line"><span class="cl">apk add --allow-untrusted /path/to/file.apk  <span class="c1">#本地安装</span>
</span></span></code></pre></div><p>添加镜像地址</p>
        
        <hr><p>本文2022-12-29首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2022-12-29</p>]]></description><category>Docker</category></item><item><title>使用 Dockerfile 定制镜像</title><link>https://hugo.kkun.top/post/%E4%BD%BF%E7%94%A8-dockerfile-%E5%AE%9A%E5%88%B6%E9%95%9C%E5%83%8F/</link><pubDate>Thu, 29 Dec 2022 14:44:51 +0000</pubDate><author>your@email.com (你的名字)</author><guid>https://hugo.kkun.top/post/%E4%BD%BF%E7%94%A8-dockerfile-%E5%AE%9A%E5%88%B6%E9%95%9C%E5%83%8F/</guid><description>
<![CDATA[<h1>使用 Dockerfile 定制镜像</h1><p>作者：你的名字（your@email.com）</p>
        
          <h2 id="一使用-dockerfile-定制镜像">
<a class="header-anchor" href="#%e4%b8%80%e4%bd%bf%e7%94%a8-dockerfile-%e5%ae%9a%e5%88%b6%e9%95%9c%e5%83%8f"></a>
一、使用 Dockerfile 定制镜像
</h2><h3 id="11dockerfile-定制镜像">
<a class="header-anchor" href="#11dockerfile-%e5%ae%9a%e5%88%b6%e9%95%9c%e5%83%8f"></a>
1.1、Dockerfile 定制镜像
</h3><p>镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本，用这个脚本来构建、定制镜像，无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Dockerfile。</p>
        
        <hr><p>本文2022-12-29首发于<a href='https://hugo.kkun.top/'>我的博客</a>，最后修改于2022-12-29</p>]]></description><category>Docker</category></item></channel></rss>