{"id":36533332,"url":"https://github.com/wjiec/alidns-webhook","last_synced_at":"2026-01-12T03:03:58.009Z","repository":{"id":185807011,"uuid":"674116216","full_name":"wjiec/alidns-webhook","owner":"wjiec","description":"alidns-webhook is a generic ACME solver for cert-manager.","archived":false,"fork":false,"pushed_at":"2025-11-20T02:22:55.000Z","size":122,"stargazers_count":59,"open_issues_count":0,"forks_count":15,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-20T04:07:47.906Z","etag":null,"topics":["acme","acme-dns","alidns","cert-manager","cert-manager-webhook"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wjiec.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-08-03T07:16:03.000Z","updated_at":"2025-11-20T02:22:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"13fcc00f-f920-43f5-86b4-11f57f82aa74","html_url":"https://github.com/wjiec/alidns-webhook","commit_stats":null,"previous_names":["wjiec/alidns-webhook"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/wjiec/alidns-webhook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wjiec%2Falidns-webhook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wjiec%2Falidns-webhook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wjiec%2Falidns-webhook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wjiec%2Falidns-webhook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wjiec","download_url":"https://codeload.github.com/wjiec/alidns-webhook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wjiec%2Falidns-webhook/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28332861,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T00:36:25.062Z","status":"online","status_checked_at":"2026-01-12T02:00:08.677Z","response_time":98,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["acme","acme-dns","alidns","cert-manager","cert-manager-webhook"],"created_at":"2026-01-12T03:03:57.946Z","updated_at":"2026-01-12T03:03:58.002Z","avatar_url":"https://github.com/wjiec.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"Alidns-Webhook\n---\n\n[![Go Report Card](https://goreportcard.com/badge/github.com/wjiec/alidns-webhook)](https://goreportcard.com/report/github.com/wjiec/alidns-webhook)\n[![GitHub license](https://img.shields.io/github/license/wjiec/alidns-webhook.svg)](https://github.com/wjiec/alidns-webhook/blob/main/LICENSE)\n[![Kubernetes Compatible](https://github.com/wjiec/alidns-webhook/actions/workflows/k8s-compatible.yml/badge.svg)](https://github.com/wjiec/alidns-webhook/actions/workflows/k8s-compatible.yml)\n\n## Overview\n\nalidns-webhook is a generic ACME solver for [cert-manager](https://github.com/cert-manager/cert-manager).\n\n### Quick start\n\nThis tutorial will detail how to configure and install the webhook to your cluster with alidns.\n\n\n#### Install webhook\n\nBefore installing this webhook, make sure you have `cert-manager` installed correctly.\nIf you haven't installed it yet, you can get the installation instructions from the [cert-manager documentation][1].\n\nIf you have Helm, you can deploy the alidns-webhook with the following command:\n```bash\nhelm upgrade --install alidns-webhook alidns-webhook \\\n    --repo https://wjiec.github.io/alidns-webhook \\\n    --namespace cert-manager --create-namespace \\\n    --set groupName=acme.yourcompany.com\n\n# Note: If you installed cert-manager via bitnami charts, you need to add the additional\n#   `--set certManager.serviceAccountName=cert-manager-controller`\n# parameter to specify the ServiceAccount to use.\n```\n\nIt will install the alidns-webhook in the cert-manager namespace, creating that namespace if it doesn't already exist.\n\n##### Aliyun registry\n\nIf you can't get the image directly through DockerHub, you can use Aliyun's image repository\nby adding the following parameter to the installation command:\n```plain\n--set image.repository=registry.cn-hangzhou.aliyuncs.com/wjiec/alidns-webhook\n```\n\n\n#### Configure a issuer\n\nCreate this definition locally and update the email address and groupName to your own. Please see more details in [cert-manager configuration][2].\n\n__Ensure the `groupName` matches the config in the webhook.__\n\n```yaml\n#\n# example-acme-issuer.yaml\n#\n\napiVersion: v1\nkind: Secret\nmetadata:\n  name: alidns-secret\n  namespace: cert-manager\nstringData:\n  access-key-id: \"Your Access Key Id\"\n  access-key-secret: \"Your Access Key Secret\"\n---\napiVersion: cert-manager.io/v1\nkind: ClusterIssuer\nmetadata:\n  name: example-acme\nspec:\n  acme:\n    # The ACME server URL\n    server: https://acme-v02.api.letsencrypt.org/directory\n    # Email address used for ACME registration\n    email: your@example.com # Change ME\n    # Name of a secret used to store the ACME account private key\n    privateKeySecretRef:\n      name: example-acme\n    solvers:\n      - dns01:\n          webhook:\n            groupName: acme.yourcompany.com # Change ME\n            solverName: alidns\n            config:\n              region: \"cn-hangzhou\" # Optional\n              accessKeyIdRef:\n                name: alidns-secret\n                key: access-key-id\n              accessKeySecretRef:\n                name: alidns-secret\n                key: access-key-secret\n```\n\nOnce edited, apply the custom resource:\n```bash\nkubectl create --edit -f example-acme-issuer.yaml\n```\n\n\n#### Creating Certificate or deploy a TLS Ingress\n\nWe can deploy a certificate directly on Ingress, edit the ingress add the annotations:\n```yaml\nkind: Ingress\napiVersion: networking.k8s.io/v1\nmetadata:\n  name: foo-example-com\n  annotations:\n    cert-manager.io/cluster-issuer: \"example-acme\"\n    # cert-manager.io/issuer: \"example-acme\"\nspec:\n  tls:\n  - hosts:\n    - foo.example.com\n    secretName: foo-example-com-tls\n  rules:\n  - host: foo.example.com\n    http:\n      paths:\n      - path: /\n        pathType: Prefix\n        backend:\n          service:\n            name: backend-service\n            port:\n              name: http\n```\n\nOr we can create a Certificate resource that is to be honored by an issuer which is to be kept up-to-date.\n```yaml\napiVersion: cert-manager.io/v1\nkind: Certificate\nmetadata:\n  name: star-example-com\nspec:\n  secretName: star-example-com-tls\n  commonName: \"example.com\"\n  dnsNames:\n  - \"example.com\"\n  - \"*.example.com\"\n  issuerRef:\n    name: example-acme\n    kind: ClusterIssuer\n    # kind: Issuer\n```\nThen we can refer to that secrets(`secretName`) in Ingress.\n\n\n### Supported Versions table\n\nThe following table lists the correspondences between alidns-webhook and k8s versions.\n\n| Alidns-Webhook version | k8s supported version              | Helm Chart Version |\n|------------------------|------------------------------------|--------------------|\n| **v1.0.\u0026ast;**         | 1.31, 1.30, 1.29, 1.28, 1.27, 1.26 | 1.0.*              |\n| **v0.1.0**             | 1.31, 1.30, 1.29, 1.28, 1.27, 1.26 | 0.1.*              |\n\n\n## License\n\n[MIT License](https://github.com/wjiec/alidns-webhook/blob/main/LICENSE)\n\n\n[1]: https://cert-manager.io/docs/installation/\n[2]: https://cert-manager.io/docs/configuration/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwjiec%2Falidns-webhook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwjiec%2Falidns-webhook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwjiec%2Falidns-webhook/lists"}