安装Docker
现在想要部署一个 Docker + Rancher,因为现在服务器是7.4的,docker也更新了几个版本,所以docker我在这里安装的是docker-ce版本。
1.卸载旧版本(确保没有旧版本的Docker残留文件)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
因为我是root登录所以直接可以这样,最好是 sudo 执行,yum报告没有安装以上软件即可。
2.安装Docker CE
- 首先安装存储驱动
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 下载官方yum源文件
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 安装
sudo yum install docker-ce
在生产环境Docker官方建议安装特定版本的Docker CE,而不是始终使用最新版本,使用以下命令查看可用的版本:
yum list docker-ce --showduplicates | sort -r
查看Docker版本
docker --version
Docker version 18.09.5, build e8ff056
下载Docker镜像
docker pull mysql:5.7
docker pull rancher/server:latest
结果下载第一个就报错了:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
是没有启动Docker,所以我们安装好Docker之后要启动起来,不然会报这个错误。
启动Dcoker:systemctl start docker
,重启:systemctl restart docker
,开机自启动:systemctl enable docker
运行MySQL容器
创建挂载目录:mkdir -p /data/mysql/{datadir,conf.d,logs}
创建mysql容器,设置密码123456:
docker run --name mysqldb -p 3306:3306 \
-v /data/mysql/datadir:/var/lib/mysql \
-v /data/mysql/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
查询测试:
docker exec -it mysqldb mysql -p123456 -e "show databases;"
mysql: [Warning] Using a password on the command line interface can be insecure.
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
创建库并授权(库,用户,密码都为cattle):
docker exec -it mysqldb mysql -p123456 -e "
create database if not exists cattle collate = 'utf8_general_ci' character set = 'utf8';
grant all on cattle.* to 'cattle'@'%' identified by 'cattle';
grant all on cattle.* to 'cattle'@'localhost' identified by 'cattle';
flush privileges;show databases;"
运行Rancher容器
docker run -d --name rancher --link=mysqldb:db \
--restart=unless-stopped -p 8090:8080 -p 9345:9345 rancher/server:latest \
--db-host db --db-port 3306 --db-user cattle --db-pass cattle --db-name cattle \
--advertise-address 本机Ip地址
等几分钟,当数据表显示为109时安装完成:
docker exec -it mysqldb mysql -u"cattle" -h localhost -p"cattle" -e "use cattle;show tables;" | wc -l
这个时候就可以通过浏览器访问了,访问地址: 本机Ip地址:8090,这个端口最好是默认的8080,因为我8080被其它程序占用了所以才在上面运行rancher容器时指向了8090
这个内存占用打的我有点伤啊!!!4G内存直接吃了2G去,每秒都在写磁盘,40G磁盘被写了20%去,这让我们这种平民玩家非公司服务器的怎么玩