{"id":19206773,"url":"https://github.com/hausgold/docker-ejabberd","last_synced_at":"2026-04-11T08:03:12.368Z","repository":{"id":89453569,"uuid":"114626961","full_name":"hausgold/docker-ejabberd","owner":"hausgold","description":"mDNS enabled ejabberd image","archived":false,"fork":false,"pushed_at":"2026-01-02T11:32:00.000Z","size":229,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":11,"default_branch":"master","last_synced_at":"2026-01-08T13:21:32.873Z","etag":null,"topics":["docker","docker-image","ejabberd","mdns","oss","zeroconf"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/hausgold/ejabberd/","language":"Shell","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/hausgold.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":"2017-12-18T10:21:24.000Z","updated_at":"2026-01-02T11:32:03.000Z","dependencies_parsed_at":"2025-02-23T06:52:37.144Z","dependency_job_id":null,"html_url":"https://github.com/hausgold/docker-ejabberd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hausgold/docker-ejabberd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hausgold%2Fdocker-ejabberd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hausgold%2Fdocker-ejabberd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hausgold%2Fdocker-ejabberd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hausgold%2Fdocker-ejabberd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hausgold","download_url":"https://codeload.github.com/hausgold/docker-ejabberd/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hausgold%2Fdocker-ejabberd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31673068,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T17:19:37.612Z","status":"online","status_checked_at":"2026-04-11T02:00:05.776Z","response_time":54,"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":["docker","docker-image","ejabberd","mdns","oss","zeroconf"],"created_at":"2024-11-09T13:16:58.699Z","updated_at":"2026-04-11T08:03:12.347Z","avatar_url":"https://github.com/hausgold.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"![mDNS enabled ejabberd](https://raw.githubusercontent.com/hausgold/docker-ejabberd/master/docs/assets/project.svg)\n\n[![Continuous Integration](https://github.com/hausgold/docker-ejabberd/actions/workflows/package.yml/badge.svg?branch=master)](https://github.com/hausgold/docker-ejabberd/actions/workflows/package.yml)\n[![Source Code](https://img.shields.io/badge/source-on%20github-blue.svg)](https://github.com/hausgold/docker-ejabberd)\n[![Docker Image](https://img.shields.io/badge/image-on%20docker%20hub-blue.svg)](https://hub.docker.com/r/hausgold/ejabberd/)\n\nThis Docker images provides the [ejabberd](https://www.ejabberd.im/) as an development image\nwith the mDNS/ZeroConf stack on top. So you can enjoy the ejabberd service\nwhile it is accessible by default as *ejabberd.local*.\n\n**Heads up!** This image is dedicated to your development environment.\nDo not run it on production!\n\n- [Requirements](#requirements)\n- [Getting starting](#getting-starting)\n- [docker-compose usage example](#docker-compose-usage-example)\n- [Host configs](#host-configs)\n- [Configure a different mDNS hostname](#configure-a-different-mdns-hostname)\n- [Other top level domains](#other-top-level-domains)\n- [Further reading](#further-reading)\n\n## Requirements\n\n* Host enabled Avahi daemon\n* Host enabled mDNS NSS lookup\n\n## Getting starting\n\nYou just need to run it like that, to get a working ejabberd service:\n\n```bash\n$ docker run --rm hausgold/ejabberd\n```\n\nThe port 5280 is proxied by haproxy to port 80 to make *ejabberd.local*\ndirectly accessible. So you can use the HTTP WebSockets\n(*ejabberd.local/websocket*) and Admin panel (*ejabberd.local/admin*)\ndirectly.\n\nThe admin user is **admin@MDNS_HOSTNAME**, so by default it is\n`admin@ejabberd.local` with the password `defaultpw`.\n\n## docker-compose usage example\n\n```yaml\nservices:\n  ejabberd:\n    image: hausgold/ejabberd\n    environment:\n      # Mind the .local suffix\n      MDNS_HOSTNAME: ejabberd.test.local\n```\n\n## Host configs\n\nInstall the nss-mdns package, enable and start the avahi-daemon.service. Then,\nedit the file /etc/nsswitch.conf and change the hosts line like this:\n\n```bash\nhosts: ... mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns ...\n```\n\n## Configure a different mDNS hostname\n\nThe magic environment variable is *MDNS_HOSTNAME*. Just pass it like that to\nyour docker run command:\n\n```bash\n$ docker run --rm -e MDNS_HOSTNAME=something.else.local hausgold/ejabberd\n```\n\nThis will result in *something.else.local*.\n\nYou can also configure multiple aliases (CNAME's) for your container by\npassing the *MDNS_CNAMES* environment variable. It will register all the comma\nseparated domains as aliases for the container, next to the regular mDNS\nhostname.\n\n```bash\n$ docker run --rm \\\n  -e MDNS_HOSTNAME=something.else.local \\\n  -e MDNS_CNAMES=nothing.else.local,special.local \\\n  hausgold/ejabberd\n```\n\nThis will result in *something.else.local*, *nothing.else.local* and\n*special.local*.\n\n## Other top level domains\n\nBy default *.local* is the default mDNS top level domain. This images does not\nforce you to use it. But if you do not use the default *.local* top level\ndomain, you need to [configure your host avahi][custom_mdns] to accept it.\n\n## Further reading\n\n* Docker/mDNS demo: https://github.com/Jack12816/docker-mdns\n* Archlinux howto: https://wiki.archlinux.org/index.php/avahi\n* Ubuntu/Debian howto: https://wiki.ubuntuusers.de/Avahi/\n\n[custom_mdns]: https://wiki.archlinux.org/index.php/avahi#Configuring_mDNS_for_custom_TLD\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhausgold%2Fdocker-ejabberd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhausgold%2Fdocker-ejabberd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhausgold%2Fdocker-ejabberd/lists"}