Sign inSign up

fonoster/routr

By fonoster

•Updated about 3 years ago

🚀 Next-generation Sip Server - https://routr.io

Image
12

500K+

fonoster/routr repository overview

⁠Routr Server

The Next-generation SIP Server.

publish to docker

Routr is a lightweight sip proxy, location server, and registrar that provides a reliable and scalable SIP infrastructure for telephony carriers, communication service providers, and integrators.

For more documentation on how Routr images are constructed and how to work with them, please see the documentation⁠.

⁠Available Versions

You can see all images available to pull from Docker Hub via the Tags⁠ page. Docker tag names that begin with a "change type" word such as task, bug, or feature are available for testing and may be removed at any time. Some highlighted tags include:

⁠Installation

You can clone this repository and manually build it.

git clone https://github.com/fonoster/routr
cd fonoster/routr:%%VERSION%%
docker build -t fonoster/routr:%%VERSION%% .

Otherwise, you can pull this image from the docker index.

docker pull fonoster/routr:%%VERSION%%

⁠Usage Example

The following is a basic example of using this image.

docker run -it \
    -p 4567:4567 \
    -p 5060:5060 \
    -p 5060:5060/udp \
    -e EXTERN_ADDR=192.168.1.149 \
    -e DATA_SOURCE_PROVIDER=files_data_provider \
    -v $(pwd)/config:/opt/routr/config \
    fonoster/routr

⁠Environment Variables

Environment variables are used in the entry point script to render configuration templates. You can specify the values of these variables during docker run, docker-compose up, or in Kubernetes manifests in the env array.

  • USER_AGENT - Sets SIP header User-Agent to the desired value
  • DATA_SOURCE_PROVIDER - Defines data provider. The built-in providers are files_data_provider and redis_data_provider. Required
  • DATA_SOURCE_PARAMETERS - Data Source Parameters. Ex.: 'host=redis,port=6379'
  • BIND_ADDR - Binds the server to the specified socket address
  • EXTERN_ADDR - IP address to advertise
  • LOCALNETS - Local networks. Use in combination with EXTERN_ADDR
  • RECORD_ROUTE - Stay within the signaling path
  • REGISTRAR_INTF - Internal causes the server to use the IP and port it sees(received & rport) from a device attempting to register. Defaults to External
  • ACCESS_CONTROL_LIST_DENY - Deny incoming traffic from network list.
  • ACCESS_CONTROL_LIST_ALLOW - Allow incoming traffic from network list
  • REST_SERVICE_BIND_ADDR - Restful service listening address
  • REST_SERVICE_PORT - Restful service port. Defaults to 4567
  • REST_SERVICE_MIN_THREADS - Minimum thread allocation. Defaults to 8
  • REST_SERVICE_MAX_THREADS - Maximum thread allocation. Defaults to 200
  • REST_SERVICE_TIMEOUT_MILLIS - Will reject requests that last more than this value. Defaults to 5000(5 seconds)
  • REST_SERVICE_UNSECURED - Disabled https for restful calls. Defaults to false
  • REST_SERVICE_KEY_STORE - Path to key store
  • REST_SERVICE_KEY_STORE_PASSWORD - Password for key store
  • REST_SERVICE_TRUST_STORE - Path to trust store
  • REST_SERVICE_TRUST_STORE_PASSWORD - Password for trust store
  • SECURITY_CONTEXT_KEY_STORE - Path to key store
  • SECURITY_CONTEXT_KEY_STORE_PASSWORD - Password for key store
  • SECURITY_CONTEXT_TRUST_STORE - Path to trust store
  • SECURITY_CONTEXT_KEY_STORE_TYPE - Key store type
  • SECURITY_CONTEXT_CLIENT_AUTH_TYPE - Type of client authentication. Defaults to Disabled. See https://goo.gl/1vKbXW⁠ for more options
  • SECURITY_CONTEXT_CLIENT_PROTOCOLS - Accepted TLS protocols. Defaults to [TLSv1.2, TLSv1.1, TLSv1]
  • SECURITY_CONTEXT_DEBUGGING - Turns ON or OFF ssl debugging. Defaults to false
  • CONFIG_FILE - Path to the configuration file. Defaults to config/config.yml
  • SALT - Use to define JWT salt. By default Routr will generated its own
  • SALT_FILE - Use to define JWT using and external file
  • EX_RTP_ENGINE_ENABLED - If enabled, it will send all media thru the RTPEngine. Defaults to false
  • EX_RTP_ENGINE_PROTO - Reserved to allow for NG commands via http, https, and udp. Currently only http is supported
  • EX_RTP_ENGINE_HOST - Address for RTPEngine
  • EX_RTP_ENGINE_PORT - Port for RTPEngine
  • EX_UNIQUE_GATEWAY_PER_HOST_PORT - If enabled, it will yield an error if a Gateway with the same host and port combination already exists. Defaults to false
  • EX_CONVERT_TEL_TO_E164 - If enabled, it will convert the number on ingress calls to E164 format before routing the call. Defaults to false

Variables prefixed with EX_ are experimental features and may be removed or renamed in the future.

⁠Exposed ports

  • 5060 - Default SIP port for UDP and TCP signaling
  • 5061 - Default SIP port for TLS signaling
  • 4567 - Default port for admin API

⁠Volumes

  • /opt/routr/config - Mount here your configuration files if using redis_data_provider

⁠Contributing

Please read CONTRIBUTING.md⁠ for details on our code of conduct, and the process for submitting pull requests to us.

⁠Authors

See also the list of contributors who participated⁠ in this project.

⁠License

Copyright (C) 2020 by Fonoster Inc. MIT License (see LICENSE⁠ for details).

Tag summary

Content type

Image

Digest

sha256:46ed23bd9…

Size

384.9 MB

Last updated

over 3 years ago

docker pull fonoster/routr