Concourse Helm Chart 使用教程
Concourse Helm Chart 使用教程
1. 项目的目录结构及介绍
Concourse Helm Chart 项目的目录结构如下:
concourse-chart/
├── Chart.yaml
├── README.md
├── templates/
│ ├── _helpers.tpl
│ ├── deployment.yaml
│ ├── ingress.yaml
│ ├── NOTES.txt
│ ├── secrets.yaml
│ └── service.yaml
├── values.yaml
目录结构介绍
Chart.yaml: 包含 Helm Chart 的基本信息,如名称、版本等。README.md: 项目的说明文档。templates/: 包含 Kubernetes 资源文件的模板。_helpers.tpl: 模板助手文件,用于定义通用的模板函数。deployment.yaml: 定义 Concourse 的部署配置。ingress.yaml: 定义 Ingress 资源,用于外部访问。NOTES.txt: 安装后的提示信息。secrets.yaml: 定义敏感信息的配置。service.yaml: 定义服务资源,用于内部访问。
values.yaml: 包含默认的配置值,可以在安装时进行覆盖。
2. 项目的启动文件介绍
Concourse Helm Chart 的启动文件主要是 templates/deployment.yaml。这个文件定义了 Concourse 的部署配置,包括容器镜像、端口、环境变量等。
deployment.yaml 关键部分介绍
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ template "concourse.fullname" . }}
labels:
app: {{ template "concourse.name" . }}
chart: {{ template "concourse.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
app: {{ template "concourse.name" . }}
release: {{ .Release.Name }}
template:
metadata:
labels:
app: {{ template "concourse.name" . }}
release: {{ .Release.Name }}
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
ports:
- containerPort: 8080
env:
- name: CONCOURSE_EXTERNAL_URL
value: {{ .Values.externalURL | quote }}
livenessProbe:
httpGet:
path: /
port: 8080
readinessProbe:
httpGet:
path: /
port: 8080
3. 项目的配置文件介绍
Concourse Helm Chart 的配置文件是 values.yaml。这个文件包含了所有可以自定义的配置项,如镜像地址、副本数量、外部 URL 等。
values.yaml 关键部分介绍
replicaCount: 1
image:
repository: concourse/concourse
tag: "7.11.2"
pullPolicy: IfNotPresent
externalURL: "http://localhost:8080"
resources: {}
ingress:
enabled: false
annotations: {}
hosts:
- host: chart-example.local
paths: []
service:
type: ClusterIP
port: 8080
配置项说明
replicaCount: 定义部署的副本数量。image: 定义使用的镜像地址和标签。externalURL: 定义外部访问的 URL。resources: 定义容器的资源限制。ingress: 定义 Ingress 资源的相关配置。service: 定义服务资源的相关配置。
通过修改 values.yaml 文件,可以灵活地配置 Concourse 的部署参数。
登录后查看全文