Rancher Server单容器部署使用外部(宿主)数据库

服务器

浏览数:155

2019-7-4

AD:资源代下载服务

Rancher 除了使用内部的数据库,你可以启动一个Rancher Server并使用一个外部的数据库。启动命令与之前一样,但添加了一些额外的参数去说明如何连接你的外部数据库。

注意:在你的外部数据库中,只需要提前创建数据库名和数据库用户。Rancher会自动创建Rancher所需要的数据库表。

我们需要提前创建好数据名、为rancher专门创建一个登陆用户。

创建数据库

CREATE DATABASE IF NOT EXISTS rancher COLLATE = 'utf8_general_ci' CHARACTER SET = 'utf8';

通rancher数据库创建专用用户并赋予权限

GRANT ALL ON rancher.* TO 'rancher'@'%' IDENTIFIED BY 'rancher126.128'

GRANT ALL ON rancher.* TO 'rancher'@'localhost' IDENTIFIED BY 'rancher126.128';

启动一个Rancher连接一个外部数据库,你需要在启动容器的命令中添加额外参数。

docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:stable --db-host 172.17.0.1 --db-port 3306 --db-user rancher --db-pass rancher126.128 --db-name rancher

大部分的输入参数都有默认值并且是可选的,只有–db-host的地址是必须输入的。

--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)

宿主机在与容器同一局域网的IP地址一般是docker0对应的IP地址段的首个地址(如172.0.17.1),其实在微服务的架构下不是很建议这样使用。

关于Docker容器内连接宿主机的Mysql服务器

这里使用Docker的宿主机器的MySQL,当启动Docker的时候,使用ip addr查看宿主机的网络情况

 

作者:小致Daddy