
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
,
or edit them in a separate file(e.g. values.yaml, values-my-es.yaml)
and use -f <filename> or --values=<filename> to set them.
Let's set some variables for convenient use later.
shellexport SKYWALKING_RELEASE_VERSION=4.3.0 # change the release version according to your need export SKYWALKING_RELEASE_NAME=skywalking # change the release name according to your scenario export SKYWALKING_RELEASE_NAMESPACE=default # change the namespace to where you want to install SkyWalking
shellhelm install "${SKYWALKING_RELEASE_NAME}" \ oci://registry-1.docker.io/apache/skywalking-helm \ --version "${SKYWALKING_RELEASE_VERSION}" \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
shellexport REPO=skywalking helm repo add ${REPO} https://apache.jfrog.io/artifactory/skywalking-helm
This is needed only when you want to install SkyWalking from master branch.
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm repo add elastic https://helm.elastic.co helm dep up ${REPO}/skywalking
To use banyandb as storage solution, you can try
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm install "${SKYWALKING_RELEASE_NAME}" \ ${REPO}/skywalking \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=banyandb \ --set ui.image.tag=10.0.0 \ --set elasticsearch.enabled=false \ --set banyandb.enabled=true
This is needed only when you want to install https://github.com/apache/skywalking-swck/tree/master/adapter from master branch.
SWCK Adapter chart detailed configuration can be found at Adapter Chart Readme.
You can install the Adapter with the default configuration as follows.
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm -n skywalking-custom-metrics-system install adapter ${REPO}/adapter --create-namespace
This is needed only when you want to install https://github.com/apache/skywalking-swck/tree/master/operator from master branch.
Before installing Operator, you have to install cert-manager at first.
shellkubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.9.1/cert-manager.yaml
SWCK Operator chart detailed configuration can be found at Operator Chart Readme.
You can install the Operator with the default configuration as follows.
shellexport REPO=chart git clone https://github.com/apache/skywalking-helm cd skywalking-helm helm -n skywalking-swck-system install operator ${REPO}/operator
In theory, you can deploy all versions of SkyWalking that are >= 6.0.0-GA, by specifying the desired oap.image.tag/ui.image.tag.
Please note that some configurations that are added in the later versions of SkyWalking may not work in earlier versions, and thus if you specify those configurations, they may take no effect.
here are some examples.
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
Because ElasticSearch recommends to use the corresponding Helm Chart version of the ElasticSearch version,
if you want to use a specific version of ElasticSearch, you have to change the ElasticSearch Helm Chart version in
dependencies section in Chart.yaml file, which requires you to install from the source codes.
Or you should deploy the desired ElasticSearch version first by yourself, and then deploy SkyWalking to use the
existing ElasticSearch by setting the following section:
yamlelasticsearch: enabled: true config: # For users of an existing elasticsearch cluster,takes effect when `elasticsearch.enabled` is false port: http: 9200 host: elasticsearch # es service on kubernetes or host user: "xxx" # [optional] password: "xxx" # [optional]
The same goes for PostgreSQL and BanyanDB.
If you are willing to help testing the latest codes that are not released yet, we provided a snapshot Helm repository on ghcr.io for convenient use, replace the full commit hash in the version option to deploy the revision that you want to test.
shellhelm -n istio-system install skywalking \ oci://ghcr.io/apache/skywalking-helm/skywalking-helm \ --version "0.0.0-b670c41d94a82ddefcf466d54bab5c492d88d772" \ -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set oap.image.tag=10.0.0 \ --set oap.storageType=elasticsearch \ --set ui.image.tag=10.0.0
This is needed only when you want to install source codes.
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}"
If you want to use a specific version of elasticsearch as storage solution, for instance, modify the connection information to the existing elasticsearch cluster in file values-my-es.yaml.
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \ -f ./skywalking/values-my-es.yaml
Enable the satellite as gateway, and set the satellite image tag.
shellhelm install "${SKYWALKING_RELEASE_NAME}" ${REPO}/skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \ --set satellite.enabled=true \ --set satellite.image.tag=v0.4.0
After satellite have been installed, you should replace the oap address to the satellite address, the address from agent or istio, such as skywalking-satellite.istio-system:11800.
You can override the configuration files for OAP or Satellite by adding configuration section oap.config and satellite.config,
check the examples, search keyword config: {}.
The SkyWalking OAP exposes many configurations that can be specified by environment variables, as listed in https://github.com/apache/skywalking/blob/master/docs/en/setup/backend/configuration-vocabulary.md.
You can set those environment variables by --set oap.env.<ENV_NAME>=<ENV_VALUE>, such as --set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh.
The environment variables take priority over the overrode configuration files.
Kubernetes Job cannot be rerun by default, if you want to rerun the OAP init job, you need to delete the Job and recreate it.
shell# Make sure to export the Job manifest to a file before deleting it. kubectl get job -n "${SKYWALKING_RELEASE_NAMESPACE}" -l release=$SKYWALKING_RELEASE_NAME -o yaml > oap-init.job.yaml # Trim the Job manifest to keep only the Job part, you can either download yq from https://github.com/mikefarah/yq or # manually remove the fields that are not needed. yq 'del(.items[0].metadata.creationTimestamp,.items[0].metadata.resourceVersion,.items[0].metadata.uid,.items[0].status,.items[0].spec.template.metadata.labels."batch.kubernetes.io/controller-uid",.items[0].spec.template.metadata.labels."controller-uid",.items[0].spec.selector.matchLabels."batch.kubernetes.io/controller-uid")' oap-init.job.yaml > oap-init.job.trimmed.yaml # Check the file oap-init.job.trimmed.yaml to make sure it has correct content # Delete the Job kubectl delete job -n "${SKYWALKING_RELEASE_NAMESPACE}" -l release=$SKYWALKING_RELEASE_NAME # Create the Job kubectl -n "${SKYWALKING_RELEASE_NAMESPACE}" apply -f oap-init.job.trimmed.yaml
dev-subscribe@skywalking.apache.org, follow the reply to subscribe the mail list.Request to join SkyWalking slack mail to the mail list(dev@skywalking.apache.org), we will invite you in.[CN] Request to join SkyWalking slack mail to the mail list(dev@skywalking.apache.org), we will invite you in.Apache 2.0
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 apache/skywalking-helm 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: