使用Rancher管理Docker
使用命令:
sudo docker run -it -d --restart=always -p 8080:8080 --name docker-rancher rancher/server
为了更快速的下载应用,推荐使用优化的Rancher方式来运行命令,下载的速度会更快些,参考地址是:优化Rancher k8s中国区的使用体验
docker run -d --restart=unless-stopped \ -e DEFAULT_CATTLE_CATALOG_URL='{"catalogs":{"community":{"url":"https://github.com/rancher/community-catalog.git","branch":"master"},"library":{"url":"https://github.com/niusmallnan/rancher-catalog.git","branch":"k8s-cn"}}}' \ --name rancher-server \ -p 8082:8080 rancher/server:stable
Rancher的数据此时是保存在Docker容器中的,并不是持久化数据的方式,如需持久化数据,需要提供一个MySQL的服务器,并在启动Rancher容器时指定MySQL配置信息
docker run -d --restart=unless-stopped -p 8080:8080 rancher/server --db-host myhost.example.com --db-port 3306 --db-user username --db-pass password --db-name cattle
--db-host IP or hostname of MySQL server
--db-port port of MySQL server (default: 3306)
--db-user username for MySQL login (default: cattle)
--db-pass password for MySQL login (default: cattle)
--db-name MySQL database name to use (default: cattle)
通过命令查看容器是否起来了
Docker logs -f 容器id
创建容器后,需要一点点时间去运行命令,或是创建一些文件,如果马上使用浏览器打开,则会没有响应,一分钟后打开地址,可以访问了
第一步:添加主机
这里选择当前的主机名
将复制出来的命令提取至Docker主机运行
运行完成后,在Rancher中可以看到主要的情况了
另外,在运行完命令后,会默认创建很多的容器,这些容器是为Rancher提供服务的,请不要删除,删除后,Rancher服务可能会出现异常
第二步:容器的管理
所有的容器列表,也可以直接在UI中添加容器
添加容器时,需要填入镜像的名称等,也可以设置其他
在容器列表中,选择某个容器名称可以查看容器详细信息,包括CPU/内存/网络/磁盘的相关信息
容器详细信息的右侧菜单,可以执行命令行
第三步:使用Rancher开启多个容器并实现负载均衡
增加应用(Stack),点击“添加应用”
输入应用名称后,点击创建,添加应用时,是支持docker-compose.xml文件方式的
创建后,可以看到刚刚创建的新应用,并点击“添加服务”
输入应用名称,来源镜像(本地build的镜像),但不加入映射的端口(关于端口给到负载均衡处理)
服务连接则不需要,相当于会建立一个连接至其他的服务
设置工作目录和命令
创建服务后,服务是正常的启动状态,并且在上面添加一个负载均衡,
负载均衡设置3000端口,这个端口是镜像中设置的
容器与负载均衡都是启动的
链接图
目前只使用到Rancher的基础功能,没有使用到高级功能,对于使用基础功能的人来说,Portainer会更适合些,比Rancher更轻量化。
参考地址:http://blog.chinaunix.net/uid-29757900-id-5676591.html