前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >harbor源码分析之容器编排脚本解析(四)

harbor源码分析之容器编排脚本解析(四)

原创
作者头像
暮雨
修改2018-10-23 11:13:16
7250
修改2018-10-23 11:13:16
举报
文章被收录于专栏:云端漫步云端漫步

前边三篇文章对harbor项目的安装脚本进行展开说明.整个harbor项目将各个组件容器化,通过docker-compose编排工具进行容器编排.在本篇中将对docker-compose.yaml文件进行展开.

docker compose

Compose 是 docker 提供的一个命令行工具,用来定义和运行由多个容器组成的应用。使用 compose,我们可以通过 YAML 文件声明式的定义应用程序的各个服务,并由单个命令完成应用的创建和启动。

Compose 的使用方式非常简单

  • 定义 Dockerfile
  • 定义 docker-compose.yml
  • 运行 docker-compose up

安装docker compose

代码语言:shell
复制
$ sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose

//自动补全
$ sudo curl -L https://raw.githubusercontent.com/docker/compose/1.22.0/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose

docker compose原理

docker compose的底层是通过使用python调用docker提供的API实现.详细内容参考docker compose的用法.

有兴趣可以阅读其源码 docker-compose

在此看一个docker API最简单的demo

代码语言:javascript
复制
import docker
// 初始化docker client
client=docker.DockerClient('unix:///var/run/docker.sock', version='auto', timeout=5)

client.version()

详细内容请查阅python docker sdk

docker compsoe 就是基于以上SDK实现的.

对docker compose的介绍就到此.

harbor 容器组件

harbor的组件被定义在docker-compose.yaml文件中.一共定义了七个service

log: 用于统一日志处理

registry: docker image镜像存储

mysql: 业务数据存储

adminserver: harbor系统的管理

ui: 页面系统

jobservice: service任务

proxy: nginx代码

log组件统一收集其它六个组件的日志,在编排中有

代码语言:javascript
复制
logging:
      driver: "syslog"
      options:  
        syslog-address: "tcp://127.0.0.1:1514"
        tag: "proxy"

它用于将自身组件产生的log发送到syslog服务端组件中,进行日志的统一管理.

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • docker compose
  • harbor 容器组件
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档