docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷

一、什么是Dokcer容器的数据卷?
【数据卷是一个或多个容器中专门指定的目录,它能够绕过联合文件系统。】
卷被设计用作数据持久化、并且是独立于容器的生命周期的。
因此,Docker不会在删除容器时自动删除数据卷卷,也不会主动“垃圾回收”掉容器不再使用的卷。说白了,数据卷的存在就是想让容器的数据持久化存在,而且可以实现容器之间的数据共享;当我们在使用docker容器的时候,会产生一系列的数据文件,这些数据文件在我们关闭docker容器时是会消失的;’但是其中产生的部分内容我们是希望能够把它给保存起来另作用途的;Docker将应用与运行环境打包成容器发布,我们希望在运行过程钟产生的部分数据是可以持久化的的;而且容器之间我们希望能够实现数据共享;通俗地来说,docker容器数据卷可以看成使我们生活中常用的u盘,它存在于一个或多个的容器中;由docker挂载到容器,但不属于联合文件系统,Docker不会在容器删除时删除其挂载的数据卷。
有三种数据卷类型:

1.宿主机数据卷:直接在宿主机的文件系统中但是容器可以访问(bind mount)
2.命名的数据卷:磁盘上Docker管理的数据卷,但是这个卷有个名字。
3.匿名数据卷:磁盘上Docker管理的数据卷,因为没有名字想要找到不容易,Docker来管理这些文件

数据卷其实都在(如果没有网络文件系统等情况下)宿主机文件系统里面的,
只是第一种是在宿主机内的特定目录下,而后两种则在docker管理的目录下,这个目录一般是 /var/lib/docker/volumes/
二、数据卷的特点
1)数据卷可以在容器之间共享或重用数据;
2)数据卷中的更改可以直接生效;
3)数据卷中的更改不会包含在镜像的更新中;
4)数据卷的生命周期一直持续到没有容器使用它为止;
三、如何添加数据卷?
添加数据卷的方式有两种:
第一种是直接通过命令行挂载
第二种是通过dockerFile添加
(1)第一种通过命令行挂载的方式,命令如下:

docker run -it -v  /宿主机绝对路径目录:  /容器内目录  镜像名

这个命令会在宿主机和容器内分别建立两个目录,两个目录是对接的,里面的数据可以共享
如果我们不知道数据卷是否挂载成功时,我们可以通过以下方式来检查数据卷的挂载结果

docker ps -a     查看出容器的id
docker inspect  容器id

上面的命令可以查看容器的详细情况,命令返回的是JSON格式的字符串;
运行命令之后我们在返回的JSON字符串中找到Volumes属性;
假如挂载成功的话,Volumes里面显示的绑定结果应该是你在挂载时输入的命令参数 (/宿主机绝对路径目录: /容器内目录 )
如果与之前输入的命令一致的话,证明挂载成功;
PS: Volumes里面显示的绑定结果可能有多个,但是只要找到目标结果就可以;
挂载之后,当容器停止运行的时候,宿主机上对数据卷做的内容修改是会同步到容器内的;
我们再挂载的时候还可以给数据卷加上权限,假如我们要宿主机只能读取容器的数据卷内容不能修改,我们可以添加只读权限;

docker run -it -v /宿主机绝对路径目录 : /容器内目录  :ro 镜像名

至于只写的话我们一般不会用到,要么就是读写,要么就是只读,我们可以通过docker inspect 来查看容器的volumesRW来查看容器内数据卷的读写权限
第二种就是利用dockerFile的形式添加
dockerFile对于docker镜像而言就如同java中某个类的.class文件对应上该类的.java文件

首先在linux服务器根目录上新建docker文件夹并建立DockerFile文件
使用volume命令;
(出于可移植可分享的的考虑,用以上 -v /宿主机绝对路径目录 : /容器内目录 的这种方式不能够直接在dockerFile中直接实现,
因为宿主机目录是依赖于特定的宿主机,并不能保证所有的宿主机都存在这样特定的目录);

编写的dockerFile文件如下

FROM  镜像名
VOLUME ["/生成的目录路径"]  -- privileged=true
CMD echo "success build"
CMD /bin/bash

相当于命令行: docker run -it -v /宿主机目录路径 : /生成的目录路径
然后我们通过命令行docker build执行我们写好的dockerFile文件
(docker build和docker commit两个命令都可以建立docker镜像,docker commit 需要在容器内进行,docker build 不需要)

docker build -f  /docker/DockerFile -t  命名空间/镜像名

执行后输入docker images就可以发现自己通过DockerFile所build的镜像,里面有挂载数据卷
3.1那么宿主机所对应的目录到底是什么呢?
同上,我们可以通过docker inspect来查看当前容器的Volumes,里面会有宿主机的数据卷目录
docker容器数据卷,它的作用相当于生活中的活动硬盘
3.2那么什么是docker数据卷容器?
数据卷容器就相当于把多个活动硬盘再挂载到一个活动硬盘上,实现数据的传递依赖。
官网解析:命名的容器挂载数据卷,其他的容器通过挂载这个父容器实现数据共享,挂载数据卷的容器,我们称为数据卷容器。
四、bindmount:将主机上的目录或文件直接mount到容器里,使用直接,高效
docker数据卷是mount到宿主机中,绕开了分层文件系统,和主机磁盘性能相同,容器 删除后依然保留,但是仅限本地磁盘,不能随容器迁移 。

使用 -v 选项指定路径    -v选项指定的路径,如果不存在,挂载时会自动创建。
[root@server1 ~]# docker run -d --name web1 -p 80:80 -v  /opt/website:/usr/share/nginx/html nginx  容器里面的nginx默认发布目录://usr/share/nginx/html
9ecdca0e273a0599675516beac71c014e42072bf7282c7e3360d43012dee427d
[root@server1 ~]# curl localhost   测试访问失败因为默认发布目录没有资源

403 Forbidden<<span class="token operator">/</span>title><<span class="token operator">/</span>head>
<body>
<center><h1>403 Forbidden<<span class="token operator">/</span>h1><<span class="token operator">/</span>center>
<hr><center>nginx<span class="token operator">/</span>1<span class="token punctuation">.</span>19<span class="token punctuation">.</span>0<<span class="token operator">/</span>center>
<<span class="token operator">/</span>body>
<<span class="token operator">/</span>html>
</code></pre> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker exec web1 mount   在容器里面执行挂载,但是不进入容器</span>
并且可以看到<span class="token operator">/</span>dev<span class="token operator">/</span>mapper<span class="token operator">/</span>rhel<span class="token operator">-</span>root,也就是根目录挂载到容器的<span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/606784be7f2f42958920f6a5d3552f28.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/606784be7f2f42958920f6a5d3552f28.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第1张图片" width="650" height="275" style="border:1px solid black;"></a><br> 添加一个默认发布页面<br> <a href="http://img.e-com-net.com/image/info8/d1aba825cecb4f7d9f5ed36f20dd626d.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/d1aba825cecb4f7d9f5ed36f20dd626d.jpg" alt="在这里插入图片描述" width="650" height="96"></a><br> 那么之前的Ubuntu就可以这样进入为什么呢?<br> 查看构建历史发现nginx镜像只运行了nginx,没有交互式的shell界面二Ubuntu却有。<br> <a href="http://img.e-com-net.com/image/info8/64fe05adeea24937a924007955e19166.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/64fe05adeea24937a924007955e19166.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第2张图片" width="650" height="177" style="border:1px solid black;"></a><br> 正确进入应用型容器<br> <a href="http://img.e-com-net.com/image/info8/4dcf0be1b90842d3930f70bf0d903ca2.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/4dcf0be1b90842d3930f70bf0d903ca2.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第3张图片" width="650" height="170" style="border:1px solid black;"></a><br> 此种方式,不存在的目录会自动创建(无论是主机还是容器)。但是会以宿主机为准,绑定挂载到容器上,容器中若存在对应的目录或文件存有数据则会被直接覆盖,<br> <strong>【bind、mount】方式挂载是默认的权限是rw,可以在挂载是指定只读。</strong><br> 来测试以下挂载只读和读写权限。宿主机不受约束,只是挂载权限<br> <a href="http://img.e-com-net.com/image/info8/638dad5a9fc44adf96841715601bdfc8.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/638dad5a9fc44adf96841715601bdfc8.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第4张图片" width="650" height="259" style="border:1px solid black;"></a><br> <strong>接下来配置yum源</strong></p> 
  <pre><code class="prism language-powershell"> 要给一个bash 方便查看
<span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker run -it --name vm2 -v /etc/yum.repos.d/westos.repo:/etc/yum.repos.d/westos.repo rhel7 bash</span>
加上ro表示只读不能对yum源做更改
<span class="token namespace">[root@server1 ~]</span><span class="token comment">#  docker run -it --name vm2 -v /etc/yum.repos.d/westos.repo:/etc/yum.repos.d/westos.repo:ro rhel7 bash</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/a8a22347356e45ad991160365618cebb.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/a8a22347356e45ad991160365618cebb.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第5张图片" width="650" height="129" style="border:1px solid black;"></a><br> <strong>五、docker managed volume数据卷的演示</strong></p> 
  <p>5.1bind mount必须指定host文件系统路径,移植性差。(若容器在A主机上crash掉,B上面也没有对应的路径那么将无法移植)<br> 5.1docker managed volume 不需要指定mount源。docker自动容器创建,默认数据卷都存放在/var/lib/docke/volumes下<br> 若挂载指向的容器当中存有数据,则元数据会被移植到volumes中</p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker run -d --name web1 -p 80:80 -v /usr/share/nginx/html nginx</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/6369950c813f4ee4bfe48ea62fd534a3.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/6369950c813f4ee4bfe48ea62fd534a3.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第6张图片" width="650" height="244" style="border:1px solid black;"></a></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker inspect web1  查看详细信息</span>
source就是volume在host中的目录<span class="token punctuation">,</span>是docker自动为容器生成的目录<span class="token punctuation">,</span>如果挂载时指向的已有目录<span class="token punctuation">,</span>原有数据会被复制到volume中。
注意,即使删除容器,管理卷也不会删除。
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/ebb71ab2fbe247e7bf63c8b4b1f8c47b.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/ebb71ab2fbe247e7bf63c8b4b1f8c47b.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第7张图片" width="650" height="294" style="border:1px solid black;"></a><br> <a href="http://img.e-com-net.com/image/info8/3d12beb7b99040dca8837187c0179b7b.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/3d12beb7b99040dca8837187c0179b7b.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第8张图片" width="650" height="228" style="border:1px solid black;"></a></p> 
  <pre><code class="prism language-powershell">cker自动生成的目录名称会很长,不方便书写使用。我们可以在创建容器时自己定义目录名称
<span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker run -d --name web2 -p 80:80 -v website2:/usr/share/nginx/html nginx  手动指定默认发布页面</span>
<span class="token namespace">[root@server1 ~]</span><span class="token comment"># curl localhost 访问</span>
<span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker inspect web2  查看详细信息</span>

</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/37856f50153b48959f6188577089c8b6.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/37856f50153b48959f6188577089c8b6.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第9张图片" width="650" height="198" style="border:1px solid black;"></a></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker rm -f web2</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/2e286d343f08484c95f08b709521c6d2.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/2e286d343f08484c95f08b709521c6d2.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第10张图片" width="650" height="391" style="border:1px solid black;"></a></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker volume ls  再次查看 全部被清空不然会占用我们的资源</span>
DRIVER              VOLUME NAME
</code></pre> 
  <p><strong>另一种使用方法多个容器使用挂载到同一个目录</strong></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker run -d --name web2 -p 80:80 -v website2:/usr/share/nginx/html nginx   运行容器并指定默认发布页面</span>
96e8801facbbb38aa60da71e5a064a0ceec2f6a4fc515601dd347f8d96487a7c
<span class="token namespace">[root@server1 ~]</span><span class="token comment"># docker inspect web2  查看详细信息</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/df836e72767245d8b947e3ff3adb569f.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/df836e72767245d8b947e3ff3adb569f.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第11张图片" width="650" height="371" style="border:1px solid black;"></a><br> <a href="http://img.e-com-net.com/image/info8/ba344cc3c464456fbce774a216257ac1.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/ba344cc3c464456fbce774a216257ac1.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第12张图片" width="650" height="126" style="border:1px solid black;"></a><br> <strong>接下来我们运行一个容器并指定此容器的挂载目录为上面删除容器的默认发布目录</strong></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 _data]</span><span class="token comment"># docker run -d --name web3 -p 80:80 -v website2:/usr/share/nginx/html nginx</span>
ab3e7d6578c7e47575a58995f5044fdb4bb3d0e0fd94ee5f65d4ab91992892ed
<span class="token namespace">[root@server1 _data]</span><span class="token comment"># curl localhost</span>
www<span class="token punctuation">.</span>westos<span class="token punctuation">.</span>org
<span class="token namespace">[root@server1 _data]</span><span class="token comment"># docker inspect web3</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/d8ff5c3a7277442e9e65ff1bd2b93310.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/d8ff5c3a7277442e9e65ff1bd2b93310.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第13张图片" width="650" height="241" style="border:1px solid black;"></a><br> 创建web3依然可以使用web2的数据<br> 再次创建一个容器去掉端口映射测试</p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 _data]</span><span class="token comment"># docker run -d --name web4 -v website2:/usr/share/nginx/html nginx</span>
79086bf91d4fedbdfd4398e0b18184d45e7da726745e1ccf57fa8304929f4784
<span class="token namespace">[root@server1 _data]</span><span class="token comment"># docker inspect web4</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/115d0916c175464f8b18b71b0c8f0a7c.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/115d0916c175464f8b18b71b0c8f0a7c.jpg" alt="docker(容器)——容器数据卷管理的详解(共享数据)+docker managed volume数据卷_第14张图片" width="650" height="242" style="border:1px solid black;"></a></p> 
  <pre><code class="prism language-powershell"><span class="token namespace">[root@server1 _data]</span><span class="token comment"># curl 172.17.0.3  访问ip创建web4依然可以使用web2的数据 </span>
www<span class="token punctuation">.</span>westos<span class="token punctuation">.</span>org
</code></pre> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1737821380772159488"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(docker,数据卷)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1903846389566205952.htm"
                           title="Docker 容器基础技术:namespace" target="_blank">Docker 容器基础技术:namespace</a>
                        <span class="text-muted">寻雾&启示</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>在容器内进程是隔离的,比如容器有自己的网络和文件系统,容器内进程的PID为1,这些都是依赖于Linuxnamespace所提供的隔离机制。本篇我们来了解下Linux有哪些namespace,以及它们是如何实现隔离的。文中案例代码均由ChatGPT生成,在Linux内核5.15.0-124-generic,ubuntu22.04LTS系统上测试通过。namespace类型每个进程都有自己所属的nam</div>
                    </li>
                    <li><a href="/article/1903822055128756224.htm"
                           title="Windows10本地部署Dify+Xinference" target="_blank">Windows10本地部署Dify+Xinference</a>
                        <span class="text-muted">橘长长长</span>
<a class="tag" taget="_blank" href="/search/AI%E7%9B%B8%E5%85%B3/1.htm">AI相关</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a><a class="tag" taget="_blank" href="/search/dify/1.htm">dify</a><a class="tag" taget="_blank" href="/search/xinference/1.htm">xinference</a><a class="tag" taget="_blank" href="/search/glm4/1.htm">glm4</a>
                        <div>目录前言一、安装必要项1.安装Docker和AnaConda2.安装Xinference3.通过Xinference部署本地glm4-chat-1m4.验证glm4-chat-1m是否部署完成5.安装Dify三、Dify中配置大模型1.浏览器输入http://localhost:80启动Dify页面2.随便注册账户登录3.配置Xinference四、运行Dify1.设置系统推理模型2.对话窗口验证</div>
                    </li>
                    <li><a href="/article/1903821676244692992.htm"
                           title="Docker之安装与配置" target="_blank">Docker之安装与配置</a>
                        <span class="text-muted">雨五夜</span>
<a class="tag" taget="_blank" href="/search/Docker/1.htm">Docker</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>Docker之安装与配置一、Docker环境配置1.基本配置2.镜像加速3.网络配置4.数据持久化5.优化建议6.常见问题与解决方案7.补充工具二、Docker配置本地仓库指南1.拉取Registry镜像2.启动本地仓库3.配置Docker客户端Linux/macOSWindows4.推送镜像到本地仓库标记镜像推送镜像5.推送镜像到本地仓库6.管理本地仓库7.优化与安全性8.常见问题一、Docke</div>
                    </li>
                    <li><a href="/article/1903774251270336512.htm"
                           title="docker gitlab 无法访问及502错误" target="_blank">docker gitlab 无法访问及502错误</a>
                        <span class="text-muted">破解中小学~软硬件Ai(植入数学与物理)</span>
<a class="tag" taget="_blank" href="/search/java%E6%8A%80%E6%9C%AF/1.htm">java技术</a>
                        <div>1、dockergitlab创建dockerrun-d--namegitlab\--restartalways\-p8443:443\-p83:80\-p8822:22\-v/gitlab/config:/etc/gitlab\-v/gitlab/logs:/var/log/gitlab\-vgitlab/data:/var/opt/gitlab\gitlab/gitlab-ce:13.3.7-c</div>
                    </li>
                    <li><a href="/article/1903769584306024448.htm"
                           title="SSLTLS加密传输与数字证书的前世今生" target="_blank">SSLTLS加密传输与数字证书的前世今生</a>
                        <span class="text-muted">云来雁去</span>
<a class="tag" taget="_blank" href="/search/.NET/1.htm">.NET</a><a class="tag" taget="_blank" href="/search/%E6%BA%90%E4%BB%A3%E7%A0%81%E6%8E%A2%E6%A1%88%E7%B3%BB%E5%88%97/1.htm">源代码探案系列</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%97%E8%AF%81%E4%B9%A6/1.htm">数字证书</a><a class="tag" taget="_blank" href="/search/HTTPS/1.htm">HTTPS</a><a class="tag" taget="_blank" href="/search/%E5%8A%A0%E5%AF%86/1.htm">加密</a><a class="tag" taget="_blank" href="/search/SSL/1.htm">SSL</a>
                        <div>Hi,大家好,我是飞鸿踏雪,欢迎大家关注我的博客。近来,博主经历了一次服务器迁移,本以为有Docker-Compose加持,一切应该会非常顺利,没想到最终还是在证书上栽了跟头,因为它的证书是和IP地址绑定的。对,你没听错,这个世界上还真就有这么别扭的设定,尤其是你折腾了一整天,发现你需要到一个CA服务器上去申请证书的时候,那种绝望你晓得吧?数字证书、HTTPS、SSL/TLS、加密……无数的词汇在</div>
                    </li>
                    <li><a href="/article/1903734266844475392.htm"
                           title="利用docker部署单节点milvus并实现图像化管理" target="_blank">利用docker部署单节点milvus并实现图像化管理</a>
                        <span class="text-muted">听说唐僧不吃肉</span>
<a class="tag" taget="_blank" href="/search/Linux/1.htm">Linux</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/milvus/1.htm">milvus</a>
                        <div>Docker部署单机版milvus使用DockerCompose安装Milvusstandalone(即单机版),进行一个快速milvus的体验。1.前提条件系统可以使用centos或者ubuntu系统已经安装docker和docker-composemilvus版本这里选择2.3.12.启动etcd、minio、milvus由于milvus依赖etcd和minio,因此需要先启动这2个组件。同样</div>
                    </li>
                    <li><a href="/article/1903731494430502912.htm"
                           title="【Docker系列四】Docker 网络" target="_blank">【Docker系列四】Docker 网络</a>
                        <span class="text-muted">Kwan的解忧杂货铺@新空间代码工作室</span>
<a class="tag" taget="_blank" href="/search/s4/1.htm">s4</a><a class="tag" taget="_blank" href="/search/Docker%E7%B3%BB%E5%88%97/1.htm">Docker系列</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术,jvm,并发编程redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,</div>
                    </li>
                    <li><a href="/article/1903731493532921856.htm"
                           title="新手如何使用 Milvus" target="_blank">新手如何使用 Milvus</a>
                        <span class="text-muted">巴依老爷coder</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/milvus/1.htm">milvus</a><a class="tag" taget="_blank" href="/search/%E5%90%91%E9%87%8F%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">向量数据库</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>一文带你入门Milvus:详细指南新手如何使用Milvus:详细指南一、Milvus简介主要特点应用领域二、安装Milvus安装DockerCompose基于DockerCompose安装Milvus服务端安装attu-可视化界面工具三、快速入门安装PythonSDK连接数据库方式1方式2(方式1的封装)数据库操作核心概念集合操作数据操作插入数据精准查询数据-get条件查询数据-query查询数据</div>
                    </li>
                    <li><a href="/article/1903731237260947456.htm"
                           title="使用Docker部署Nacosv2.1.1" target="_blank">使用Docker部署Nacosv2.1.1</a>
                        <span class="text-muted">九思x</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>第一步:拉取镜像dockerpullnacos/nacos-server:v2.1.1作用:从DockerHub拉取Nacos2.1.1官方镜像。第二步:启动容器dockerrun-d\-eMODE=standalone\#单机模式运行-p8848:8848\#HTTPAPI/UI端口-p9848:9848\#gRPC通信端口(客户端-服务端)-p9849:9849\#gRPC通信端口(集群间通信</div>
                    </li>
                    <li><a href="/article/1903718371627692032.htm"
                           title="Docker build 报错 “ Cannot find a valid baseurl for repo: base/7/x86_64 ” 解决" target="_blank">Docker build 报错 “ Cannot find a valid baseurl for repo: base/7/x86_64 ” 解决</a>
                        <span class="text-muted">EricLi404</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/Docker/1.htm">Docker</a><a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/yum/1.htm">yum</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/centos7/1.htm">centos7</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                        <div>错误内容dockerbuild阶段报错如下:SendingbuildcontexttoDockerdaemon2.048kBStep1/3:FROMcentos:7--->8652b9f0cb4cStep2/3:RUNyum-yupdate--->Runningin4e4e11d880f3Loadedplugins:fastestmirror,ovlDeterminingfastestmirror</div>
                    </li>
                    <li><a href="/article/1903712179987738624.htm"
                           title="【如何打包docker大镜像】" target="_blank">【如何打包docker大镜像】</a>
                        <span class="text-muted">青柚~</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>项目场景:需要将容器服务部署到离线服务器上;方案:本机的镜像进行打包,然后拷贝到服务器上部署问题描述提示:这里描述项目中遇到的问题:docker中镜像太大,以至于打包时电脑卡死解决方案:压缩打包dockersavemmyolo:v8|gzip>mmyolo.tar.gz拷贝到服务器上后先解压再加载#解压缩gunzipmmyolo.tar.gz#加载dockerload-immyolo.tar</div>
                    </li>
                    <li><a href="/article/1903712178582646784.htm"
                           title="Docker-部署ES和Kibana" target="_blank">Docker-部署ES和Kibana</a>
                        <span class="text-muted">相逢太短,莫等茶凉</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/mac/1.htm">mac</a>
                        <div>资料kibana和elasticserch兼容性表https://www.elastic.co/cn/support/matrix#matrix_compatibilityMac系统安装需要版本支持linux/arm64,需要两个都要支持有arm64,有些es支持,kibana不支持。ps:dockerpullelasticsearch出现elasticsearch:latestnotfound,</div>
                    </li>
                    <li><a href="/article/1903710792381952000.htm"
                           title="NVIDIA Dynamo源码编译" target="_blank">NVIDIA Dynamo源码编译</a>
                        <span class="text-muted">Luchang-Li</span>
<a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大模型</a><a class="tag" taget="_blank" href="/search/%E6%8E%A8%E7%90%86%E5%BC%95%E6%93%8E/1.htm">推理引擎</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大模型</a><a class="tag" taget="_blank" href="/search/%E6%8E%A8%E7%90%86%E5%BC%95%E6%93%8E/1.htm">推理引擎</a><a class="tag" taget="_blank" href="/search/dynamo/1.htm">dynamo</a>
                        <div>Refhttps://github.com/PyO3/maturinRust程序设计语言代码库:https://github.com/ai-dynamo/dynamohttps://github.com/ai-dynamo/nixldynamo/container/Dockerfile.vllm相关whl包官方提供了4个whl包ai_dynamo#这个包ubuntu22.04也可以用,ubuntu</div>
                    </li>
                    <li><a href="/article/1903709024528953344.htm"
                           title="第8章:Docker数据持久化与卷管理" target="_blank">第8章:Docker数据持久化与卷管理</a>
                        <span class="text-muted">DogDog_Shuai</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/eureka/1.htm">eureka</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>第8章:Docker数据持久化与卷管理作者:DogDog_Shuai阅读时间:约25分钟难度:中级目录1.引言2.Docker数据持久化概述3.Docker卷管理4.数据卷容器5.绑定挂载6.临时文件系统</div>
                    </li>
                    <li><a href="/article/1903702937843068928.htm"
                           title="docker 将本地镜像打tag并推送到dockerhub" target="_blank">docker 将本地镜像打tag并推送到dockerhub</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/dockerdockerhub/1.htm">dockerdockerhub</a>
                        <div>给本地打镜像打tagdockertag:/::是你的本地镜像名称和标签,是你的DockerHub用户名,:是你要推送的镜像在DockerHub上的仓库名称和标签。dockerpush/:示例如下:dockertaglanxing/php74-swoole:4.8.11893687090/php74-swoole:4.8.11dockertaglanxing/php82-swoole:5.1.189</div>
                    </li>
                    <li><a href="/article/1903702683613720576.htm"
                           title="docker 内容器访问另一个容器中的服务" target="_blank">docker 内容器访问另一个容器中的服务</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/docker%E5%AE%B9%E5%99%A8%E7%BD%91%E7%BB%9C/1.htm">docker容器网络</a>
                        <div>docker中有两个容器,分别名为mq和hyperf,想在hyperf中访问mq可以使用下面的方法1.创建网络dockernetworkcreatemynetwork2.将使用到的容器(如业务容器,mysql,redis,mq等容器)都加入到网络中dockernetworkconnectmynetworkhyperfdockernetworkconnectmynetworkmqdockernetw</div>
                    </li>
                    <li><a href="/article/1903702684943314944.htm"
                           title="centos 7 安装docker-compose" target="_blank">centos 7 安装docker-compose</a>
                        <span class="text-muted"></span>

                        <div>1.下载docker-compose#官方推荐(太慢)curl-L"https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-compose#国内(更快)curl-Lhttps://get.daocloud.io/do</div>
                    </li>
                    <li><a href="/article/1903699569670156288.htm"
                           title="Docker 数据持久化核心:挂载(Mounts)与卷(Volumes)的区别与选择指南" target="_blank">Docker 数据持久化核心:挂载(Mounts)与卷(Volumes)的区别与选择指南</a>
                        <span class="text-muted">z2637305611</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>Docker容器默认是无状态的——这意味着容器停止后,其内部生成的数据也会随之消失。为了持久化保存数据或在容器间共享数据,Docker提供了两种主要机制:挂载(Mounts)和卷(Volumes)。理解它们的区别并正确使用,是优化Docker应用架构的重要一步。一、挂载(Mounts)1.什么是挂载?挂载(通常指BindMounts)允许将宿主机上的目录或文件直接映射到容器内部,提供了一种直接访问</div>
                    </li>
                    <li><a href="/article/1903697894897152000.htm"
                           title="docker避免容器中的内容被挂载的空目录覆盖(比如nginx的html目录)" target="_blank">docker避免容器中的内容被挂载的空目录覆盖(比如nginx的html目录)</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/dockervolume/1.htm">dockervolume</a>
                        <div>我有一个镜像jb:1.0,镜像中/jb下有一些内容需要挂载到宿主机来dockervolumecreatejb_volumedockerrun--namejb-v/home/dcw/data:/data--mountsource=jb,target=/jb-itdjb:1.0如果想修改宿主机中的内容可以通过下面命令找到挂载的内容在宿主机的位置dockerinspectjbimage.png</div>
                    </li>
                    <li><a href="/article/1903696294287831040.htm"
                           title="使用Docker部署MySQL8.0.29" target="_blank">使用Docker部署MySQL8.0.29</a>
                        <span class="text-muted">九思x</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a>
                        <div>第一步:拉取镜像dockerpullmysql:8.0.29作用:从DockerHub拉取MySQL8.0.29官方镜像。第二步:启动容器dockerrun--nameshare_mysql\--restart=always\-vmysql-data:/var/lib/mysql\-p3306:3306\-eMYSQL_ROOT_PASSWORD=root\-dmysql:8.0.29参数说明:-</div>
                    </li>
                    <li><a href="/article/1903683059358691328.htm"
                           title="Docker 数据卷与文件挂载" target="_blank">Docker 数据卷与文件挂载</a>
                        <span class="text-muted">huingymm</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>Docker数据卷与文件挂载的区别与管理指南在Docker中,数据卷(Volume)和文件挂载(BindMount)是两种常用的数据持久化方式。它们的主要目的是将容器内的数据保存到主机上,以便在容器重启或删除后数据不会丢失。本文将详细介绍数据卷和文件挂载的区别、使用方法以及管理技巧。目录数据卷与文件挂载的区别数据卷的使用创建数据卷挂载数据卷查看数据卷删除数据卷文件挂载的使用挂载主机目录挂载单个文件</div>
                    </li>
                    <li><a href="/article/1903678771907588096.htm"
                           title="linux+docker安装常见中间件+shell学习笔记" target="_blank">linux+docker安装常见中间件+shell学习笔记</a>
                        <span class="text-muted">芦屋花绘</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E4%B8%AD%E9%97%B4%E4%BB%B6/1.htm">中间件</a>
                        <div>初始设置下载虚拟机软件:选择适合的虚拟机软件(如VirtualBox或VMware)。下载操作系统ISO映像文件:选择并下载你想安装的Linux发行版(例如Ubuntu、CentOS等)的ISO文件。ISO映像文件:是包含了完整光盘内容的文件,包含引导记录、文件系统、数据文件和目录结构。导入ISO文件到虚拟机,并进行相关配置,如分配内存、硬盘空间等。了解基本linuxLinux常见目录及其用途Li</div>
                    </li>
                    <li><a href="/article/1903645114165686272.htm"
                           title="XPipe:一款新型开源终端管理神器" target="_blank">XPipe:一款新型开源终端管理神器</a>
                        <span class="text-muted">修己xj</span>
<a class="tag" taget="_blank" href="/search/%E5%B7%A5%E5%85%B7/1.htm">工具</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a>
                        <div>最近,一位朋友在使用Docker时遇到了一个问题:他对宿主机与容器之间的文件复制以及在容器内执行命令等操作感到困惑。这让我开始思考,如果有一款远程管理工具能够直接连接到容器内部,操作是否会变得更加便捷?恰巧,今天在浏览GitHub时,我发现了这样一款名为XPipe的工具。工具介绍XPipe是一款创新的Shell连接中心和远程文件管理器,它能够让你从本地机器轻松访问整个服务器基础设施。这款工具运行在</div>
                    </li>
                    <li><a href="/article/1903613970070171648.htm"
                           title="使用nginx实现ssh跳板机" target="_blank">使用nginx实现ssh跳板机</a>
                        <span class="text-muted">Eddy5x</span>
<a class="tag" taget="_blank" href="/search/Shell/1.htm">Shell</a><a class="tag" taget="_blank" href="/search/Docker/1.htm">Docker</a><a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/ssh/1.htm">ssh</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>使用nginx实现ssh跳板机基础环境nginx安装检查NGINX支持STREAM模块配置NGINX转发TCP流量基础环境跳板机,IP:192.168.3.174控制机01,IP:192.168.2.78控制机02,IP:192.168.2.79控制机01、控制机02只允许跳板机访问。nginx安装这里使用docker-compose安装#docker-compose.ymlversion:'3.</div>
                    </li>
                    <li><a href="/article/1903599083893878784.htm"
                           title="Windows Docker Desktop 无法启动报错 Docker Desktop is shutting down 的可能解决办法" target="_blank">Windows Docker Desktop 无法启动报错 Docker Desktop is shutting down 的可能解决办法</a>
                        <span class="text-muted">Bruce-li__</span>
<a class="tag" taget="_blank" href="/search/Docker/1.htm">Docker</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>直接把整个AppData\Roaming\Docker目录删了,然后立刻就好了……这里还有一些其他的解决方案,Docker社区论坛也供参考:检查一下daemon.json配置文件是否有问题https://forums.docker.com/t/solved-docker-failed-to-start-docker-desktop-for-windows/106976</div>
                    </li>
                    <li><a href="/article/1903584322447798272.htm"
                           title="Ubuntu arm64 安装docker" target="_blank">Ubuntu arm64 安装docker</a>
                        <span class="text-muted">sglin123</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>通过docker官方链接安装,如果无法链接,需要通过或者链接外网,国内如果屏蔽1.卸载旧版本Ubuntu自带的Docker版本太低,需要先卸载旧的再安装新的。sudoapt-getremovedockerdocker-enginedocker.iocontainerdrunc2.更新软件包列表和已安装软件的版本sudoaptupdatesudoaptupgrade3.安装必要的证书并允许apt包管</div>
                    </li>
                    <li><a href="/article/1903583435612549120.htm"
                           title="在华为鲲鹏服务器银河麒麟V10操作系统中安装docker及docker-pose" target="_blank">在华为鲲鹏服务器银河麒麟V10操作系统中安装docker及docker-pose</a>
                        <span class="text-muted">qinfeng1991</span>
<a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/eureka/1.htm">eureka</a>
                        <div>背景最近客户寄来几台为鲲鹏服务器,需要在上面安装docker及docker-compose以便运行我们的程序,跟常规的X86架构下安装docker和docker-compose稍微有些区别,特此记录。操作步骤0.系统版本查看[root@localhostcrcs-compile]#cat/etc/kylin-releaseKylinLinuxAdvancedServerreleaseV10(Lan</div>
                    </li>
                    <li><a href="/article/1903581033916329984.htm"
                           title="pigz is needed by docker-ce-18.03.1.ce-1.el7.centos.x86_64 问题" target="_blank">pigz is needed by docker-ce-18.03.1.ce-1.el7.centos.x86_64 问题</a>
                        <span class="text-muted">清风的BLOG</span>
<a class="tag" taget="_blank" href="/search/%E9%97%AE%E9%A2%98%E9%94%A6%E9%9B%86/1.htm">问题锦集</a><a class="tag" taget="_blank" href="/search/pigz/1.htm">pigz</a><a class="tag" taget="_blank" href="/search/is/1.htm">is</a><a class="tag" taget="_blank" href="/search/needed/1.htm">needed</a><a class="tag" taget="_blank" href="/search/by/1.htm">by</a><a class="tag" taget="_blank" href="/search/docker-ce-18/1.htm">docker-ce-18</a>
                        <div>出现问题[root@centos74~]#rpm-ivhdocker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm error:Faileddependencies:   pigzisneededbydocker-ce-18.03.1.ce-1.el7.centos.x86_64解决问题由上可以看出安装docker需要pigz这个包所以安装这个依赖pigz下载网址:可</div>
                    </li>
                    <li><a href="/article/1903580401801162752.htm"
                           title="nebula graph传统使用Docker进行项目发版" target="_blank">nebula graph传统使用Docker进行项目发版</a>
                        <span class="text-muted">boy快快长大</span>
<a class="tag" taget="_blank" href="/search/%E8%A7%A3%E5%86%B3%E9%97%AE%E9%A2%98%E5%90%88%E9%9B%86/1.htm">解决问题合集</a><a class="tag" taget="_blank" href="/search/Nebula/1.htm">Nebula</a><a class="tag" taget="_blank" href="/search/Graph%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">Graph数据库</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>nebulagraph传统使用Docker进行项目发版1.nebulagraph服务2.搭建ES集群3.注意事项3.1图数据库的启动顺序3.2模糊查询失效1.nebulagraph服务1.在测试服务器中执行如下命令dockercommit85b6e2b8xxxxxx_nebula_es:1.0.0.2执行dockerimages之后能看到新的镜像xxx_nebula_es:1.0.0.2这里将测试</div>
                    </li>
                    <li><a href="/article/1903577064997449728.htm"
                           title="Docker配置代理" target="_blank">Docker配置代理</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a>
                        <div>使用背景最近在国内网络下,pullultralytics镜像一直失败:dockerpullultralytics/ultralytics:latest-conda,尝试使用代理下载镜像配置步骤1.创建或编辑Docker配置文件1.1创建配置文件mkdir-p/etc/systemd/system/docker.service.dvim/etc/systemd/system/docker.servi</div>
                    </li>
                                <li><a href="/article/94.htm"
                                       title="PHP,安卓,UI,java,linux视频教程合集" target="_blank">PHP,安卓,UI,java,linux视频教程合集</a>
                                    <span class="text-muted">cocos2d-x小菜</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/UI/1.htm">UI</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                                    <div>╔-----------------------------------╗┆                           </div>
                                </li>
                                <li><a href="/article/221.htm"
                                       title="各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。" target="_blank">各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。</a>
                                    <span class="text-muted">bozch</span>
<a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/.net+mvc/1.htm">.net mvc</a>
                                    <div>在.net mvc5中,在执行某一操作的时候,出现了如下错误: 
      各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。 
经查询当前的操作与错误内容无关,经过对错误信息的排查发现,事故出现在数据库迁移上。 
回想过去: 在迁移之前已经对数据库进行了添加字段操作,再次进行迁移插入XXX字段的时候,就会提示如上错误。  
&</div>
                                </li>
                                <li><a href="/article/348.htm"
                                       title="Java 对象大小的计算" target="_blank">Java 对象大小的计算</a>
                                    <span class="text-muted">e200702084</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>                          Java对象的大小 
 
如何计算一个对象的大小呢? 
 
 
   </div>
                                </li>
                                <li><a href="/article/475.htm"
                                       title="Mybatis Spring" target="_blank">Mybatis Spring</a>
                                    <span class="text-muted">171815164</span>
<a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a>
                                    <div>ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
CustomerService userService = (CustomerService) ac.getBean("customerService");
Customer cust</div>
                                </li>
                                <li><a href="/article/602.htm"
                                       title="JVM 不稳定参数" target="_blank">JVM 不稳定参数</a>
                                    <span class="text-muted">g21121</span>
<a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a>
                                    <div>        -XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。        可以说“不稳定参数”</div>
                                </li>
                                <li><a href="/article/729.htm"
                                       title="用户自动登录网站" target="_blank">用户自动登录网站</a>
                                    <span class="text-muted">永夜-极光</span>
<a class="tag" taget="_blank" href="/search/%E7%94%A8%E6%88%B7/1.htm">用户</a>
                                    <div>1.目标:实现用户登录后,再次登录就自动登录,无需用户名和密码 
2.思路:将用户的信息保存为cookie 
           每次用户访问网站,通过filter拦截所有请求,在filter中读取所有的cookie,如果找到了保存登录信息的cookie,那么在cookie中读取登录信息,然后直接</div>
                                </li>
                                <li><a href="/article/856.htm"
                                       title="centos7 安装后失去win7的引导记录" target="_blank">centos7 安装后失去win7的引导记录</a>
                                    <span class="text-muted">程序员是怎么炼成的</span>
<a class="tag" taget="_blank" href="/search/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/1.htm">操作系统</a>
                                    <div>1.使用root身份(必须)打开 /boot/grub2/grub.cfg 2.找到 ### BEGIN /etc/grub.d/30_os-prober ###   在后面添加    menuentry "Windows 7 (loader) (on /dev/sda1)" { </div>
                                </li>
                                <li><a href="/article/983.htm"
                                       title="Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载" target="_blank">Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a>
                                    <div>Oracle 10g 官方中文安装帮助文档下载:http://download.csdn.net/tag/Oracle%E4%B8%AD%E6%96%87API%EF%BC%8COracle%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3%EF%BC%8Coracle%E5%AD%A6%E4%B9%A0%E6%96%87%E6%A1%A3 Oracle 10g 官方中文教程</div>
                                </li>
                                <li><a href="/article/1110.htm"
                                       title="JavaEE开源快速开发平台G4Studio_V3.2发布了" target="_blank">JavaEE开源快速开发平台G4Studio_V3.2发布了</a>
                                    <span class="text-muted">無為子</span>
<a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/javaee/1.htm">javaee</a><a class="tag" taget="_blank" href="/search/G4Studio/1.htm">G4Studio</a>
                                    <div>  
我非常高兴地宣布,今天我们最新的JavaEE开源快速开发平台G4Studio_V3.2版本已经正式发布。大家可以通过如下地址下载。 
  
访问G4Studio网站  
http://www.g4it.org      
G4Studio_V3.2版本变更日志 
功能新增 
(1).新增了系统右下角滑出提示窗口功能。 
(2).新增了文件资源的Zip压缩和解压缩</div>
                                </li>
                                <li><a href="/article/1237.htm"
                                       title="Oracle常用的单行函数应用技巧总结" target="_blank">Oracle常用的单行函数应用技巧总结</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E5%87%BD%E6%95%B0/1.htm">日期函数</a><a class="tag" taget="_blank" href="/search/%E8%BD%AC%E6%8D%A2%E5%87%BD%E6%95%B0%28%E6%A0%B8%E5%BF%83%29/1.htm">转换函数(核心)</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%97%E5%87%BD%E6%95%B0/1.htm">数字函数</a><a class="tag" taget="_blank" href="/search/%E9%80%9A%E7%94%A8%E5%87%BD%E6%95%B0%28%E6%A0%B8%E5%BF%83%29/1.htm">通用函数(核心)</a><a class="tag" taget="_blank" href="/search/%E5%AD%97%E7%AC%A6%E5%87%BD%E6%95%B0/1.htm">字符函数</a>
                                    <div>单行函数;   字符函数,数字函数,日期函数,转换函数(核心),通用函数(核心) 
一:字符函数: 
   .UPPER(字符串) 将字符串转为大写
   .LOWER (字符串) 将字符串转为小写 
   .INITCAP(字符串) 将首字母大写
   .LENGTH (字符串) 字符串的长度
   .REPLACE(字符串,'A','_') 将字符串字符A转换成_
</div>
                                </li>
                                <li><a href="/article/1364.htm"
                                       title="Mockito异常测试实例" target="_blank">Mockito异常测试实例</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/mockito/1.htm">mockito</a>
                                    <div>Mockito异常测试实例: 
package com.bijian.study;

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

import org.junit.Assert;
import org.junit.Test;

import org.mockito.</div>
                                </li>
                                <li><a href="/article/1491.htm"
                                       title="GA与量子恒道统计" target="_blank">GA与量子恒道统计</a>
                                    <span class="text-muted">Bill_chen</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a><a class="tag" taget="_blank" href="/search/%E7%99%BE%E5%BA%A6/1.htm">百度</a><a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/%E9%98%B2%E7%81%AB%E5%A2%99/1.htm">防火墙</a>
                                    <div>前一阵子,统计**网址时,Google Analytics(GA) 和量子恒道统计(也称量子统计),数据有较大的偏差,仔细找相关资料研究了下,总结如下: 
  
为何GA和量子网站统计(量子统计前身为雅虎统计)结果不同? 
首先:没有一种网站统计工具能保证百分之百的准确出现该问题可能有以下几个原因:(1)不同的统计分析系统的算法机制不同;(2)统计代码放置的位置和前后</div>
                                </li>
                                <li><a href="/article/1618.htm"
                                       title="【Linux命令三】Top命令" target="_blank">【Linux命令三】Top命令</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/linux%E5%91%BD%E4%BB%A4/1.htm">linux命令</a>
                                    <div>Linux的Top命令类似于Windows的任务管理器,可以查看当前系统的运行情况,包括CPU、内存的使用情况等。如下是一个Top命令的执行结果: 
  
  
top - 21:22:04 up 1 day, 23:49, 1 user, load average: 1.10, 1.66, 1.99
Tasks: 202 total,   4 running, 198 sl</div>
                                </li>
                                <li><a href="/article/1745.htm"
                                       title="spring四种依赖注入方式" target="_blank">spring四种依赖注入方式</a>
                                    <span class="text-muted">白糖_</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a>
                                    <div>   平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我</div>
                                </li>
                                <li><a href="/article/1872.htm"
                                       title="angular.injector" target="_blank">angular.injector</a>
                                    <span class="text-muted">boyitech</span>
<a class="tag" taget="_blank" href="/search/AngularJS/1.htm">AngularJS</a><a class="tag" taget="_blank" href="/search/AngularJS+API/1.htm">AngularJS API</a>
                                    <div>angular.injector 
   描述:   创建一个injector对象, 调用injector对象的方法可以获得angular的service, 或者用来做依赖注入.        使用方法:   angular.injector(modules, [strictDi])        参数详解:      Param Type Details   mod</div>
                                </li>
                                <li><a href="/article/1999.htm"
                                       title="java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待" target="_blank">java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/Integer/1.htm">Integer</a>
                                    <div>

public class PC {

	/**
	 * 题目:生产者-消费者。
	 * 同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待。
	 */
	
	private static final Integer[] val=new Integer[10];
	private static</div>
                                </li>
                                <li><a href="/article/2126.htm"
                                       title="使用Struts2.2.1配置" target="_blank">使用Struts2.2.1配置</a>
                                    <span class="text-muted">Chen.H</span>
<a class="tag" taget="_blank" href="/search/apache/1.htm">apache</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/struts/1.htm">struts</a>
                                    <div>Struts2.2.1 需要如下 jar包: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar spring.jar 
struts2-core-2.2.1.jar struts2-sp</div>
                                </li>
                                <li><a href="/article/2253.htm"
                                       title="[职业与教育]青春之歌" target="_blank">[职业与教育]青春之歌</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/%E6%95%99%E8%82%B2/1.htm">教育</a>
                                    <div> 
 
       每个人都有自己的青春之歌............但是我要说的却不是青春... 
 
       大家如果在自己的职业生涯没有给自己以后创业留一点点机会,仅仅凭学历和人脉关系,是难以在竞争激烈的市场中生存下去的.... 
 
  &nbs</div>
                                </li>
                                <li><a href="/article/2380.htm"
                                       title="oracle连接(join)中使用using关键字" target="_blank">oracle连接(join)中使用using关键字</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/JOIN/1.htm">JOIN</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/using/1.htm">using</a>
                                    <div>在oracle连接(join)中使用using关键字 
34. View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables. 
Evaluate the following SQL statement: 
SELECT oi.order_id, product_id, order_date 
FRO</div>
                                </li>
                                <li><a href="/article/2507.htm"
                                       title="NIO示例" target="_blank">NIO示例</a>
                                    <span class="text-muted">daysinsun</span>
<a class="tag" taget="_blank" href="/search/nio/1.htm">nio</a>
                                    <div>NIO服务端代码: 
 

public class NIOServer {
	
	private Selector selector;

	
	public void startServer(int port) throws IOException {

		ServerSocketChannel serverChannel = ServerSocketChannel.open(</div>
                                </li>
                                <li><a href="/article/2634.htm"
                                       title="C语言学习homework1" target="_blank">C语言学习homework1</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/homework/1.htm">homework</a>
                                    <div>0、 课堂练习做完 
1、使用sizeof计算出你所知道的所有的类型占用的空间。 
int x; 
sizeof(x); 
  
sizeof(int); 
  
# include <stdio.h>

int main(void)
{
	int x1;
	char x2;
	double x3;
	float x4;

	printf(&quo</div>
                                </li>
                                <li><a href="/article/2761.htm"
                                       title="select in order by , mysql排序" target="_blank">select in order by , mysql排序</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>If i select like this: 
SELECT id FROM users WHERE id IN(3,4,8,1); 
This by default will select users in this order 
1,3,4,8, 
I would like to select them in the same order that i put IN() values so: </div>
                                </li>
                                <li><a href="/article/2888.htm"
                                       title="页面校验-新建项目" target="_blank">页面校验-新建项目</a>
                                    <span class="text-muted">fanxiaolong</span>
<a class="tag" taget="_blank" href="/search/%E9%A1%B5%E9%9D%A2%E6%A0%A1%E9%AA%8C/1.htm">页面校验</a>
                                    <div>$(document).ready(
	function() {
			var flag = true;
		$('#changeform').submit(function() {
			var projectScValNull = true;
			var s ="";
			var parent_id = $("#parent_id").v</div>
                                </li>
                                <li><a href="/article/3015.htm"
                                       title="Ehcache(02)——ehcache.xml简介" target="_blank">Ehcache(02)——ehcache.xml简介</a>
                                    <span class="text-muted">234390216</span>
<a class="tag" taget="_blank" href="/search/ehcache/1.htm">ehcache</a><a class="tag" taget="_blank" href="/search/ehcache.xml/1.htm">ehcache.xml</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E4%BB%8B/1.htm">简介</a>
                                    <div>ehcache.xml简介 
  
       ehcache.xml文件是用来定义Ehcache的配置信息的,更准确的来说它是定义CacheManager的配置信息的。根据之前我们在《Ehcache简介》一文中对CacheManager的介绍我们知道一切Ehcache的应用都是从CacheManager开始的。在不指定配置信</div>
                                </li>
                                <li><a href="/article/3142.htm"
                                       title="junit 4.11中三个新功能" target="_blank">junit 4.11中三个新功能</a>
                                    <span class="text-muted">jackyrong</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>junit 4.11中两个新增的功能,首先是注解中可以参数化,比如 
 
 


import static org.junit.Assert.assertEquals;
 
import java.util.Arrays;
 
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runn</div>
                                </li>
                                <li><a href="/article/3269.htm"
                                       title="国外程序员爱用苹果Mac电脑的10大理由" target="_blank">国外程序员爱用苹果Mac电脑的10大理由</a>
                                    <span class="text-muted">php教程分享</span>
<a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a><a class="tag" taget="_blank" href="/search/Microsoft/1.htm">Microsoft</a><a class="tag" taget="_blank" href="/search/perl/1.htm">perl</a>
                                    <div>Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?从个人使用经验来看我想有下面几个原因: 
1、Mac OS X 是基于 Unix 的 
这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 wi</div>
                                </li>
                                <li><a href="/article/3396.htm"
                                       title="位运算、异或的实际应用" target="_blank">位运算、异或的实际应用</a>
                                    <span class="text-muted">wenjinglian</span>
<a class="tag" taget="_blank" href="/search/%E4%BD%8D%E8%BF%90%E7%AE%97/1.htm">位运算</a>
                                    <div>一. 位操作基础,用一张表描述位操作符的应用规则并详细解释。 
      二. 常用位操作小技巧,有判断奇偶、交换两数、变换符号、求绝对值。 
      三. 位操作与空间压缩,针对筛素数进行空间压缩。 
   &n</div>
                                </li>
                                <li><a href="/article/3523.htm"
                                       title="weblogic部署项目出现的一些问题(持续补充中……)" target="_blank">weblogic部署项目出现的一些问题(持续补充中……)</a>
                                    <span class="text-muted">Everyday都不同</span>
<a class="tag" taget="_blank" href="/search/weblogic%E9%83%A8%E7%BD%B2%E5%A4%B1%E8%B4%A5/1.htm">weblogic部署失败</a>
                                    <div>好吧,weblogic的问题确实…… 
  
问题一: 
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL [zip:E:/weblogic/user_projects/domains/base_domain/serve</div>
                                </li>
                                <li><a href="/article/3650.htm"
                                       title="tomcat7性能调优(01)" target="_blank">tomcat7性能调优(01)</a>
                                    <span class="text-muted">toknowme</span>
<a class="tag" taget="_blank" href="/search/tomcat7/1.htm">tomcat7</a>
                                    <div>  
    
Tomcat优化:   1、最大连接数最大线程等设置    
<Connector port="8082" protocol="HTTP/1.1" 
               useBodyEncodingForURI="t</div>
                                </li>
                                <li><a href="/article/3777.htm"
                                       title="PO VO DAO DTO BO TO概念与区别" target="_blank">PO VO DAO DTO BO TO概念与区别</a>
                                    <span class="text-muted">xp9802</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8B/1.htm">领域模型</a>
                                    <div>O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。 
它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(指的是他们的属性)。这样,PO独立出来,数据持</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>