or: how I learned to love running stateful docker containers and stop worrying where the data is
!flying books to illustrate portable volumes
(Portable "volumes", hee hee.)
When you want to run Docker in production, you want to run it across multiple machines and you probably want to use some orchestration tools. However, when you attach a volume to a Docker container, the machine it's running on becomes a pet when it should be cattle.
You should be able to run a stateful container with a given volume on any host in your cluster, and the platform should handle moving data around as necessary.
powerstrip-flocker?powerstrip-flocker allows you to use the regular docker CLI commands to create or move flocker volumes, automatically moving volumes around between hosts in the cluster as-needed.
powerstrip-flocker connects the Docker Remote API to the new Flocker Volumes API via https://github.com/clusterhq/powerstrip.
Write some data into a volume on one host, read it from another:
$ ssh node1 docker run -v /flocker/demo:/data busybox sh -c "echo fish > /data/file" $ ssh node2 docker run -v /flocker/demo:/data busybox sh -c "cat /data/file" fish
Note that the volume above has become "global" to both hosts.
Finally you can run stateful containers in docker and stop worrying about where the data is.
In other words, powerstrip-flocker exposes a global namespace (/flocker/*) of volumes which flocker will move into place just-in-time before letting docker start your containers.
Because https://github.com/ClusterHQ/powerstrip-flocker presents a standard docker api - it means that the full gamut of orchestration tools can work with it:
These tools don't have the concept of "portable volumes" - by leveraging the https://github.com/ClusterHQ/powerstrip API - https://github.com/ClusterHQ/powerstrip-flocker brings this concept to all of them for free.
Equally, https://github.com/ClusterHQ/powerstrip-flocker will work alongside other docker extension projects like networking tools:
The above tools "wrap" the docker cli and it was impossible to use them alongside other extensions like https://github.com/ClusterHQ/flocker. This is because both tools "wrap" the docker cli meaning only one can be used per container.
https://github.com/ClusterHQ/powerstrip allows the composition of multiple adapters. This means that a single docker host can now implement solutions for two of the critical issues which crop up when you run Docker on multiple hosts in production: storage and networking.
This is a very early technology preview and has some https://github.com/ClusterHQ/powerstrip-flocker/issues. What's more, powerstrip itself is a prototype for the new Docker remote API extensions mechanism, and is therefore by definition unstable.
But, you can kick the tyres and try it today!
Then https://github.com/ClusterHQ/powerstrip-flocker/issues/new, to encourage us or tell us we're stupid.
We've put together a special demo preview environment:
You can try out our demo environment either with vagrant on local files, or on AWS.
This uses vagrant to bring up the demo on your local machine.
https://github.com/ClusterHQ/powerstrip-flocker/tree/master/vagrant
This uses vagrant to bring up the demo on AWS EC2 instances.
https://github.com/ClusterHQ/powerstrip-flocker/tree/master/vagrant-aws
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务