http://www.uuread.cc/cfaqxcQc.html
Kubernetes具備超強的故障恢復機制,Kubernetes會重啟意外停止的pod。我們曾遇到過因記憶體洩露,導致容器在一天內宕機多次的情況,然而令人驚訝的是,甚至我們自己都沒有察覺到。
資料儲存
以我們的情況,在Kubernetes內執行資料儲存沒有想象中那麼完美,設定起來也比其他Kubernetes部署複雜得多。
於是我們決定不在生產環境資料儲存上使用Kubernetes,而是選擇在不同的機器上手動啟動這些叢集,我們在Kubernetes內部執行的應用正常連線到資料儲存叢集
http://www.freebuf.com/sectool/123907.html
http://www.freebuf.com/sectool/104524.html
在这个例子中,我直接在一个临时的容器上运行“remnux/metasploit”,退出的时候会消失(“rm”功能类似)。“-it”让你能够通过shell与容器进行交互。
为了保存容器的相关数据,我使用“-v”参数来将容器目录映射到我主机的目录上。我将使用”~/.msf4”目录来存放Metasploit Framework的配置文件。主机上的“/tmp/msf”目录将会存储其他数据,比如你可能从目标系统获取的数据。
参数“-p”对容器内部的端口进行映射。上面的例子用443端口来接收反弹shell的https连接。
http://www.ywnds.com/?p=7411
Docker Hub是一个很好的用于管理公共镜像的地方,我们可以在上面找到想要的镜像(Docker Hub的下载量已经达到数亿次)
Registry作为Docker的核心组件之一负责镜像内容的存储与分发,客户端的docker pull以及push命令都将直接与registry进行交互
http://www.ywnds.com/?p=7015
多人都对Volume有一个误解,他们认为Volume是为了持久化。如此想法是因为他们觉得容器不能持久化,所以Volume应该是为了满足这个需求而设计的。其实容器会一直存在,除非你删除它们。这可能来自于容器不是持久的想法,这样确实是不对的。容器是持久的,直到你删除他们
Volume并不是为了持久化。而Volume可以使用以下两种方式创建:
1)在Dockerfile中指定VOLUME /data。
2)执行docker run -v /data命令来指定。
无论哪种方式都是做了同样的事情。它们告诉Docker在主机上创建一个目录(默认情况下是在/var/lib/docker下),然后将其挂载到指定的路径(例子中是:/data)
// 從外面送一個 my_sound.mp3 檔案進去 docker 環境裡面的 /my_sound.mp3
// 使用 ebuildy/echoprint 這個 docker image 裡面的 echoprint-codegen 程式去跑它
docker run -v my_sound.mp3:/my_sound.mp3 ebuildy/echoprint echoprint-codegen /my_sound.mp3
// 把資料從 container 當中拿出來 ebca1bdd8bfc -> container id
docker cp ebca1bdd8bfc:/opt/echoprint.tar .
// 把資料test.c從本機端丟進 docker container 中
docker cp test.c ebca1bdd8bfc:/
// 列出正在run的 docker image 環境
docker ps
// 列出我有電腦上載下來的 docker images
docker images