🐳 Minimal Docker Image for Flexisip SIP server
10K+
A lightweight, production-ready Docker image for Flexisip, the open-source SIP proxy server by Belledonne Communications. This image is optimized for minimal size and maximum efficiency through multi-stage builds and careful dependency management.
debian:trixie-slim for minimal footprintamd64 and arm64 platformsstable, alpha, beta, and edge versions| Tag | Description | Update Frequency |
|---|---|---|
latest | Latest stable release | On stable release |
2.3.2 | Specific version | One-time build |
stable | Latest stable release | On stable release |
alpha | Latest alpha release | On alpha release |
beta | Latest beta release | On beta release |
edge | Latest master commit | Daily (if changes) |
edge-{hash} | Specific commit build | On commit |
# Pull the latest stable version
docker pull etnperlong/flexisip:latest
# Run Flexisip proxy with default configuration
docker run -d \
--name flexisip \
-p 5060:5060/udp \
-p 5060:5060/tcp \
-v /path/to/config:/usr/local/etc/flexisip \
-v /path/to/logs:/usr/local/var/log/flexisip \
etnperlong/flexisip:latest
# Create configuration directory
mkdir -p flexisip-config flexisip-logs
# Run with custom configuration
docker run -d \
--name flexisip-proxy \
--restart unless-stopped \
-p 5060:5060/udp \
-p 5060:5060/tcp \
-v $(pwd)/flexisip-config:/usr/local/etc/flexisip \
-v $(pwd)/flexisip-logs:/usr/local/var/log/flexisip \
etnperlong/flexisip:latest \
--server
version: '3.8'
services:
flexisip:
image: etnperlong/flexisip:latest
container_name: flexisip-proxy
restart: unless-stopped
ports:
- "5060:5060/udp"
- "5060:5060/tcp"
volumes:
- ./config:/usr/local/etc/flexisip
- ./logs:/usr/local/var/log/flexisip
command: ["--server"]
Flexisip configuration files should be placed in /usr/local/etc/flexisip/. The default configuration will be generated on first run if not provided.
/usr/local/etc/flexisip - Configuration directory/usr/local/var/log/flexisip - Log directory5060/udp - SIP signaling (UDP)5060/tcp - SIP signaling (TCP)For additional ports and configuration options, refer to the official Flexisip documentation.
# Clone the repository
git clone https://github.com/etnperlong/docker-flexisip.git
cd docker-flexisip
# Build for current architecture
docker build \
--build-arg FLEXISIP_VERSION=2.3.2 \
--build-arg DEBIAN_VERSION=trixie \
-t flexisip:local .
# Build for specific architecture
docker buildx build \
--platform linux/amd64,linux/arm64 \
--build-arg FLEXISIP_VERSION=2.3.2 \
-t flexisip:local .
| Argument | Default | Description |
|---|---|---|
DEBIAN_VERSION | trixie | Debian base image version |
FLEXISIP_VERSION | Required | Flexisip version tag or commit hash |
BUILD_TYPE | Release | CMake build type (Release/Debug) |
This project includes comprehensive GitHub Actions workflows for automated building and publishing.
graph LR
A[Daily Cron] --> B[Check Upstream]
C[Manual Trigger] --> B
B --> D{New Version?}
D -->|Yes| E[Build Matrix]
D -->|No| F[Skip]
E --> G[Build amd64]
E --> H[Build arm64]
G --> I[Merge & Push]
H --> I
I --> J[Update State]
auto-check.yml)manual-build.yml)build-docker.yml)To set up automated builds in your own fork:
# Fork on GitHub, then clone
git clone https://github.com/YOUR_USERNAME/docker-flexisip.git
cd docker-flexisip
Navigate to Settings → Secrets and variables → Actions
Required Secrets:
DOCKERHUB_TOKEN: Your Docker Hub access tokenRequired Variables:
DOCKERHUB_USERNAME: Your Docker Hub usernameFLEXISIP_STABLE_VERSION: Current stable version (leave empty initially)FLEXISIP_ALPHA_VERSION: Current alpha version (leave empty initially)FLEXISIP_BETA_VERSION: Current beta version (leave empty initially)FLEXISIP_EDGE_COMMIT: Current edge commit hash (leave empty initially)For ARM builds, you need an arm64 runner:
ubuntu-24.04-armEdit .github/workflows/build-docker.yml:
env:
DOCKERHUB_REPO: YOUR_USERNAME/flexisip # Change this
Go to Actions tab and enable workflows for your fork.
# Manually trigger a build
Actions → Manual Build → Run workflow
Input version: 2.3.2
Detailed workflow documentation is available in .github/workflows/README.md, including:
| Feature | This Project | Official Flexisip |
|---|---|---|
| Base Image | Debian Slim | Debian Standard |
| Image Size | ~200-300MB | ~500-800MB |
| Build Stages | Multi-stage (2) | Single stage |
| Architectures | amd64, arm64 | amd64 only |
| Build Tools | Excluded from runtime | Included |
| Automation | Full CI/CD pipeline | Manual |
| Release Channels | stable/alpha/beta/edge | N/A |
| Update Frequency | Daily checks | Manual |
Contributions are welcome! Please feel free to submit issues or pull requests.
git checkout -b feature/amazing-feature)git commit -m 'feat: add amazing feature')git push origin feature/amazing-feature)This project is licensed under the GNU Affero General Public License v3.0 - see the LICENSE file for details.
Note: Flexisip itself is licensed under GNU AGPLv3. This Docker packaging maintains the same license.
Made with ❤️ for the open-source community
Content type
Image
Digest
sha256:bbe4163a3…
Size
115.4 MB
Last updated
3 months ago
docker pull etnperlong/flexisip