docker4
1、docker-registry私有仓库
docker是一个软件服务,而且有打包技术,所以我们开启一个容器,就可以作为一个仓库
准备两台虚拟机,11和12,11开启一个容器作为镜像的仓库


加上私有仓库的地址


vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries": ["10.0.0.11:5000"]
}

私有仓库的内容显示


systemctl restart docker
2、docker hub官方仓库 首先自己注册账号






3、harbor的安装






#下载安装器
github
#解压
[root@docker01 opt]# tar xf harbor-offline-installer-v1.8.0.tgz
#修改配置文件
cd harbor
vim harbor.yml
hostname: 10.0.0.12
harbor_admin_password: 123456
#执行安装脚本
./install.sh







4、为harbar配置https并上传镜像













5、将docker-registry镜像迁移到harbor
迁移到




6、容器的基础网络类型
四种基础网络类型
bridge 默认类型 NAT模式
host host类型,使用宿主机网络,网络性能最高
container 容器类型。使用其他容器共用网络,k8s中使用
none 没有网络,上不了外网
host类型展示




none类型展示

container类型 跟其他容器共用网络,容易端口冲突 好处节省ip地址









下面是自定义网络,我们唯一能自定义的网络类型就是bridge类型的网络
docker network create -d bridge --subnet 172.30.0.0/16 --gateway 172.30.0.1 oldqiang


7、跨宿主机容器之间的讯macvlan
macvlan类似与虚拟机的桥接网络,容器有宿主机的IP地址
#创建网络
docker network create -d macvlan --subnet 10.0.0.0/24 --gateway 10.0.0.254 -o parent=eth0 macvlan_1
使用macvlan,宿主机与宿主机之间没关联,所以需要手动去分配IP地址,这样才能然他们在同一网段,才能够互联
#启动容器
docker run -it --network macvlan_1 --ip 10.0.0.105 alpine:3.9
#测试互ping 通了就成功了
容器的ip其实都是内网地址,但是通过防火墙映射,才可以访问外网,但用macvlan就直接手动给了外网的ip,就可以直接访问外网
8、跨宿主机容器之间的通讯overlay
使用overlay就是让宿主机与宿主机之间产生联系




docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
启动后访问 10.0.0.13的主机ip还有8500端口




修改完配置文件 重启docker








9、overlay的通讯原理





10、docker容器的监控


配置
需要镜像
传给11 12
load -i 导入

第三台节点 使用tar包 绿包进行使用


vim prometheus.yml
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'cadvisor'
static_configs:
- targets: ['10.0.0.11:8080','10.0.0.12:8080']
- job_name: 'node_exporter'
static_configs:
- targets: ['10.0.0.11:9100','10.0.0.12:9100']
./prometheus --config.file="prometheus.yml"

grafane配置
#安装grafana
yum localinstall grafana-6.3.3-1.x86_64.rpm -y
systemctl start grafana-server.service
systemctl enable grafana-server.service
#访问grafana http://IP:3000,默认账号admin:admin
新建数据源--导入dashboard模板






导入dashboard模板


