rancher @ centos 7 @ hyperv
在 win10 hyperv 上 安装 centos7
启动centos7
github ip地址
不做这一步, k3s安装命令 “curl -sfL https://get.k3s.io | sh -” 中访问github 将无法访问
echo "
#去https://github.com/521xueweihan/GitHub520 找
######github hosts end
">/etc/hosts
docker国内镜像
touch /etc/docker/daemon.json
echo '{
"registry-mirrors": ["https://registry.docker-cn.com"]
}' > /etc/docker/daemon.json
#或者: 登陆自己的阿里云 得到docker镜像加速地址
echo '{
"registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
}' > /etc/docker/daemon.json
systemctrl restart docker
#aliyun docker需要登陆
docker login registry.cn-hangzhou.aliyuncs.com
docker info
#可以看到镜像地址变了
“centos7@hyperv” 和 win10宿主机 网络互通 方案1 (貌似有时不行)
“centos7@hyperv” 和 win10宿主机 网络互通 方案2: 让hyperv霸占一个网卡作为虚拟交换机
rancher 安装
命令
yum install docker
docker run --privileged -d --restart=unless-stopped -p 192.168.0.90:80:80 -p 192.168.0.90:443:443 rancher/rancher
禁用防火墙
systemctl disable firewalld
systemctl stop firewalld
从宿主机win10访问rancher
如果rancher docker已经正确起来了 且 netstat -lntp 看是监听的非127.0.0.1,但是访问不了 ,有可能是:
- centos7 没有启用端口转发, 解决办法: echo 1 > /proc/sys/net/ipv4/ip_forward
- 如果启用了端口抓发 还不行,可能是ip地址段有冲突,设置docker的ip地址段: 在 /etc/docker/daemon.json 中加一行 “bip”: “192.168.7.5/24”
rancher2.4.2 默认用户admin 默认密码admin
解决 rancher docker运行控制台报错: unable to access ‘https://git.rancher.io’ (用 docker镜像 阿里云)
#手工获取以下3个host的ip,然后写到 /etc/hosts中
echo "47.97.242.21 dockerauth.cn-hangzhou.aliyuncs.com
120.55.105.209 registry.cn-hangzhou.aliyuncs.com
183.131.227.249 aliregistry.oss-cn-hangzhou.aliyuncs.com"
>/etc/hosts
#登陆 aliyun的docker
docker login registry.cn-hangzhou.aliyuncs.com
#这条可能不行
docker run --privileged -p 192.168.0.90:80:80 -p 192.168.0.90:443:443 -e CATTLE_AGENT_IMAGE="registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.4.2" registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.2
#试着用这条
docker run --privileged -p 192.168.0.90:80:80 -p 192.168.0.90:443:443 -e CATTLE_SYSTEM_DEFAULT_REGISTRY=registry.cn-hangzhou.aliyuncs.com rancher/rancher:v2.4.2
rancher新建并启动一个集群
等一会儿发现大量已经退出的pause容器,不确定是否是正常现象
#关闭已经退出的docker进程
docker stop $(docker ps -a -q)
#删除已经退出的docker进程
docker rm $(docker ps -a -q)
#删除已经退出的docker镜像(这句估计用不到)
docker rmi $(docker images -a -q)