Janus Gateway Docker image for ByteDesk, based on Ubuntu 22.04 LTS.
- Features
- Quick Start
- Configuration
- Image Build and Release
- Environment Variables
- Ports
- Troubleshooting
- Contributing
- License
- ✅ Janus Gateway
v1.4.0(built from source) - ✅ Ubuntu
22.04base image - ✅ Built-in dependencies for WebRTC stack
(
libwebsockets,libsrtp,libnice,usrsctp) - ✅ Janus built with
--enable-post-processing - ✅
FFmpegincluded for post-processing workflows - ✅ Multi-architecture image publishing via GitHub Actions
- ✅ Docker Hub and Aliyun registry publishing
- ✅ Single-process runtime (Nginx removed, Janus only)
- ❌ RabbitMQ/MQTT/Unix sockets are disabled in current build flags
# Docker Hub
docker pull bytedesk/janus:latest
# Aliyun registry (recommended in mainland China)
docker pull registry.cn-hangzhou.aliyuncs.com/bytedesk/janus:latestThe image starts Janus directly (CMD ["janus"]).
docker run -d \
--name janus \
-p 8088:8088 \
-p 8188:8188 \
-p 10000-10200:10000-10200/udp \
-e TZ=Asia/Shanghai \
--restart=unless-stopped \
bytedesk/janus:latestJanus config files are generated during build by make configs
and installed under /usr/local/etc/janus.
To customize configuration, mount your config directory:
docker run -d \
--name janus \
-v $(pwd)/janus-conf:/usr/local/etc/janus \
-p 8088:8088 \
-p 8188:8188 \
-p 10000-10200:10000-10200/udp \
bytedesk/janus:latestCheck logs:
docker logs -f janusThis repository uses GitHub Actions workflow at .github/workflows/janus-docker.yml.
- Tag trigger:
janus-v*(example:janus-v1.4.0) - Manual trigger:
workflow_dispatchwithversionandpush_to_registry - Registries:
bytedesk/janusregistry.cn-hangzhou.aliyuncs.com/bytedesk/janus
Example release tag:
git tag janus-v1.4.0
git push origin janus-v1.4.0TZ: Container timezone (default:Asia/Shanghai)
Most Janus runtime behavior is controlled by files in /usr/local/etc/janus.
Janus ports depend on your janus.jcfg and plugin configs. Common mappings:
8088/TCP: Janus HTTP API8188/TCP: Janus WebSocket API10000-10200/UDP: RTP media ports (example range)
Adjust these to match your deployed Janus configuration.
| Project | Description | Forks | Stars |
|---|---|---|---|
| iOS | iOS | ||
| Android | Android | ||
| Flutter | Flutter | ||
| UniApp | Uniapp | ||
| Web | Vue/React/Angular/Next.js/JQuery/... | ||
| Wordpress | Wordpress | ||
| Woocommerce | woocommerce |
- Container exits immediately: inspect
docker logs janusfor config errors. - API not reachable: verify mapped ports and firewall/security group rules.
- Media issues: ensure UDP media port range is open and consistent with Janus config.
- Custom config not applied: confirm mount target is
/usr/local/etc/janus.
Issues and pull requests are welcome.
- Repository: Bytedesk/bytedesk-janus
- Docker Hub: bytedesk/janus
This project is licensed under the terms in LICENSE.