docker私有仓库和监控及报警环境搭建

一、私有仓库搭建(registry) 以172.16.113.12仓库为例
1、下载registry镜像
docker pull registry
2、运行镜像
docker run -d -p 5000:5000 -v /home/registry/:/var/lib/registry/ --name registry registry
3、push镜像
镜像的标签改成仓库地址     docker tag image 172.16.113.12:5000/image
docker push  172.16.113.12:5000/image
4、pull镜像
docker pull  172.16.113.12:5000/image
5、查看仓库镜像
172.16.113.12:5000/v2/_catalog
6、注意事项
docker必须配置--insecure-registry 172.16.113.12:5000,否则会提示连接错误
配置文件目录:/etc/systemd/system/docker.service.d/docker.conf

二、docker监控搭建(prometheus+cadvisor) 以172.16.113.12为例
1、下载prometheus镜像
docker pull prom/prometheus
2、下载cadvisor镜像
docker pull google/cadvisor
3、在要监控的docker主机运行cadvisor镜像
docker run -d -v /:/rootfs:ro -v /var/run:/var/run:rw -v /sys:/sys:ro -v /home/lib/docker/:/var/lib/docker:ro -p 8080:8080 --name cadvisor  google/cadvisor
4、配置 prometheus.yml
global:
  scrape_interval: 15s
  external_labels:
    monitor: 'codelab-monitor'
scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 5s
    static_configs:
      - targets: ['172.16.106.6:8080','172.16.106.7:8080','172.16.106.8:8080']
主要是targets,配置的是目标docker的cadvisor地址
5、运行镜像
docker run -d -p 9090:9090 -v /home/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml --name prometheus prom/prometheus
6、查看监控
prometheus      172.16.113.12:9090
cadvisor     172.16.106.6:8080
7、查询语法支持正则过过滤

三、监控报警
1、下载alertmanager镜像
docker pull prom/alertmanager
2、prometheus.yml文件添加报警文件
rule_files:
   - "first.rules"
指定文件为first.rules
3、first.rules添加报警规则
ALERT InstanceStatus
  IF up{job="docker-solr"} == 0
  FOR 10s
  LABELS {
    instance = "",
  }
  ANNOTATIONS {
    summary = "服务器  运行状态",
    description = "服务器  已当机超过 10s"
  }
当job=docker-solr的up值为0,且连续10秒,则触发报警
4、编辑alertmanager的转发配置simple.yml
global:
  resolve_timeout: 1m
route:
  group_by: ['InstanceStatus']
  group_wait: 5s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'team-X-pager'
receivers:
- name: 'team-X-pager'
  webhook_configs:
  - url: 'http://api.110monitor.com/alert/api/event/prometheus/ 4702344f-5a25-82b4-5d91-7e3b2e654527'
    send_resolved: true
使用webhook模式,配置报警通过onealert进行转发
5、申请onealert账号,配置prometheus应用,并生成红色的应用ID
6、运行alertmanager镜像
docker run -d -p 9093:9093 -v /home/prometheus/simple.yml:/etc/alertmanager/config.yml --name alertmanager prom/alertmanager
7、重启prometheus镜像
docker restart prometheus
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker私有仓库是一种用于存储、管理和分发Docker镜像的服务器。搭建一个私有仓库可以帮助开发者更好地管理自己的Docker镜像,也可以提高镜像的安全性。 以下是搭建Docker私有仓库的步骤: 1. 安装Docker 首先需要在服务器上安装Docker,可以根据操作系统类型选择合适的安装方法。 2. 下载Docker Registry镜像 在Docker Hub上下载Docker Registry镜像,可以使用以下命令: ``` docker pull registry:2 ``` 3. 运行Docker Registry容器 使用以下命令运行Docker Registry容器: ``` docker run -d -p 5000:5000 --restart=always --name registry registry:2 ``` 这里使用了-p参数将容器的5000端口映射到主机的5000端口,使得外部可以通过主机的IP地址和端口号访问私有仓库。使用--restart参数可以设置容器在重启后自动启动。使用--name参数可以指定容器的名称。 4. 配置Docker客户端 为了能够访问私有仓库,需要在Docker客户端中配置私有仓库的地址。可以通过以下方式修改Docker客户端的配置文件: ``` vi /etc/docker/daemon.json ``` 在文件中添加以下内容: ``` { "insecure-registries" : ["your-registry:5000"] } ``` 这里的your-registry是私有仓库所在的主机IP地址或域名。 5. 推送和拉取镜像 现在可以使用Docker客户端推送和拉取镜像到私有仓库了。推送镜像使用以下命令: ``` docker tag your-image your-registry:5000/your-image docker push your-registry:5000/your-image ``` 这里的your-image是要推送的镜像名称。拉取镜像使用以下命令: ``` docker pull your-registry:5000/your-image ``` 这里的your-image是要拉取的镜像名称。 至此,Docker私有仓库搭建完成。需要注意的是,私有仓库的安全性需要开发者自行维护,例如限制访问权限、定期备份等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值