{"id":13650423,"url":"https://github.com/rtckit/slimswitch","last_synced_at":"2026-01-11T23:50:30.405Z","repository":{"id":45631419,"uuid":"434748975","full_name":"rtckit/slimswitch","owner":"rtckit","description":":whale2: Minimal FreeSWITCH Docker images","archived":false,"fork":false,"pushed_at":"2023-11-28T22:29:11.000Z","size":12,"stargazers_count":14,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-03T02:04:10.033Z","etag":null,"topics":["docker","docker-image","freeswitch","freeswitch-docker","sip","telephony","webrtc"],"latest_commit_sha":null,"homepage":"","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/rtckit.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}},"created_at":"2021-12-03T22:22:19.000Z","updated_at":"2024-01-19T01:09:31.000Z","dependencies_parsed_at":"2024-01-03T04:59:50.256Z","dependency_job_id":"efe2727a-e48d-453b-9d3e-3a113626f71c","html_url":"https://github.com/rtckit/slimswitch","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rtckit%2Fslimswitch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rtckit%2Fslimswitch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rtckit%2Fslimswitch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rtckit%2Fslimswitch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rtckit","download_url":"https://codeload.github.com/rtckit/slimswitch/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223903097,"owners_count":17222489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","freeswitch","freeswitch-docker","sip","telephony","webrtc"],"created_at":"2024-08-02T02:00:36.672Z","updated_at":"2026-01-11T23:50:30.346Z","avatar_url":"https://github.com/rtckit.png","language":"Shell","readme":"\u003ca href=\"#build-minimal-freeswitch-docker-images\"\u003e\n    \u003cimg loading=\"lazy\" src=\"https://raw.github.com/rtckit/media/master/slimswitch/readme-splash.png\" alt=\"slimswitch\" class=\"width-full\"\u003e\n\u003c/a\u003e\n\n# Build minimal FreeSWITCH Docker images\n\n[![Docker Pulls](https://img.shields.io/docker/pulls/rtckit/slimswitch-builder.svg)](https://hub.docker.com/r/rtckit/slimswitch-builder)\n[![License](https://img.shields.io/badge/license-MIT-blue)](LICENSE)\n\nTooling for creating lean FreeSWITCH Docker images; resulting containers are efficient and expose a reduced attack surface. This is achieved by layering only the FreeSWITCH core, select modules and their runtime dependencies.\n\n## Quickstart\n\nDecide which FreeSWITCH modules should be included and provide a basic XML core/modules configuration file!\n\n```sh\ngit clone https://github.com/rtckit/slimswitch.git\ncd slimswitch\n\n./bin/mkslim.sh \\\n    -m mod_commands -m mod_dptools -m mod_sofia \\\n    -s local/awesome-switch\ndocker run --rm -it \\\n    -v \"$(pwd)/freeswitch.xml\":/etc/freeswitch/freeswitch.xml \\\n    local/awesome-switch:v1.10.10\n```\n\n![Quickstart](https://raw.github.com/rtckit/media/master/slimswitch/demo.gif)\n\n## Requirements\n\n[Docker](https://docs.docker.com/get-docker/) and [slimtoolkit](https://slimtoolkit.org/) must be installed in the building environment.\n\n## How it works\n\nA generic reusable [builder image](etc/Dockerfile) is created first; the goal is to build the FreeSWITCH core and most of its modules, so then they can be mixed-and-matched as needed. The resulting image can also serve as a base for compiling third party modules. This phase is handled by the [./bin/mkbuilder.sh](./bin/mkbuilder.sh) script. Images corresponding to official FreeSWITCH releases are also [publicly available](https://hub.docker.com/r/rtckit/slimswitch-builder).\n\nThe trimming is achieved via the [./bin/mkslim.sh](./bin/mkslim.sh) script, which is essentially a wrapper for slimtoolkit; specifically, it leverages its static analysis features so dynamic dependencies are accounted for when the final image is created.\n\n## License\n\nMIT, see [LICENSE file](LICENSE).\n\n### Acknowledgments\n\n* [FreeSWITCH](https://github.com/signalwire/freeswitch), FreeSWITCH is a registered trademark of Anthony Minessale II\n* [Docker](https://docker.com), Docker is a registered trademark of Docker, Inc\n* [slimtoolkit](https://github.com/slimtoolkit/slim)\n\n### Contributing\n\nBug reports (and small patches) can be submitted via the [issue tracker](https://github.com/rtckit/slimswitch/issues). Forking the repository and submitting a Pull Request is preferred for substantial patches.\n","funding_links":[],"categories":["Operations"],"sub_categories":["Deployment"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frtckit%2Fslimswitch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frtckit%2Fslimswitch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frtckit%2Fslimswitch/lists"}