项目100%开源,可选的商业支持。
提供丰富的API,可供用户自行定制。
学习成本低,直接沿用了Docker生态,好上手。
内置的应用商店框架(Rancher Catalog)。
缺少对服务的replica(副本)定义。
缺少容器之间的隶属关系(模拟Kubernetes的Pod),通过deponds_on能控制service的先后启动,但是一个service中的多个容器之间的关系就没有了。
缺少对服务的编排控制,比如一个服务起来后调度到哪个主机上。
缺少对容器的生命周期控制,比如只在服务启动时某容器执行一次,重启服务也不再启动等。
启动时的主机上必须没有符合冒号后面表达式的容器,并且是一个软限制,去掉soft则是严格限制。
服务名字是这个服务的实例名和服务名。
io.rancher.sidekicks:容器名,容器名
# 设置从属容器,比如做个side car容器,你希望第一个容器启动提供存储volume,然后启动第二个容器跑服务,接着第三个容器做日志的接收转发等等。
io.rancher.container.pull_image:always
# 启动服务时总是拉取容器镜像
一套服务和容器的定义(docker-compose)
一套编排的设置(rancher-compose)
一套用户可以输入值的UI
用户在UI中填入值