Merge pull request #1631 from signalwire/dockerfile
[Docs] Add Debian 11 Dockerfile example showing how to build FreeSWITCH without repo.
This commit is contained in:
commit
f5a2a59758
17
README.md
17
README.md
|
@ -24,15 +24,26 @@ The main index for documentation is available at:
|
|||
|
||||
* https://freeswitch.org/confluence/
|
||||
|
||||
|
||||
### Release notes:
|
||||
|
||||
* https://freeswitch.org/confluence/display/FREESWITCH/Release+Notes
|
||||
|
||||
### Installation
|
||||
### Install from packages
|
||||
|
||||
Step by step tutorials to install FreeSWITCH from packages or source code are available at:
|
||||
Step by step tutorials to install FreeSWITCH from packages:
|
||||
|
||||
* [Debian 10 Buster](https://freeswitch.org/confluence/display/FREESWITCH/Debian+10+Buster) [<b>Recommended</b>]
|
||||
* [Debian](https://freeswitch.org/confluence/display/FREESWITCH/Debian) [<b>Recommended</b>]
|
||||
* [Raspberry Pi](https://freeswitch.org/confluence/display/FREESWITCH/Raspberry+Pi)
|
||||
* [CentOS 7](https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7+and+RHEL+7)
|
||||
|
||||
### Build from source
|
||||
|
||||
Example Dockerfiles to build FreeSWITCH and dependencies from source:
|
||||
* https://github.com/signalwire/freeswitch/tree/dockerfile/docker/examples
|
||||
|
||||
Step by step tutorials to build FreeSWITCH with provided dependency packages:
|
||||
* [Debian](https://freeswitch.org/confluence/display/FREESWITCH/Debian#Debian-buildfromsource) [<b>Recommended</b>]
|
||||
* [Raspberry Pi](https://freeswitch.org/confluence/display/FREESWITCH/Raspberry+Pi)
|
||||
* [CentOS 7](https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7+and+RHEL+7)
|
||||
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
FROM debian:bullseye
|
||||
MAINTAINER Andrey Volk <andrey@signalwire.com>
|
||||
|
||||
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -yq install git
|
||||
|
||||
RUN git clone https://github.com/signalwire/freeswitch /usr/src/freeswitch
|
||||
RUN git clone https://github.com/signalwire/libks /usr/src/libs/libks
|
||||
RUN git clone https://github.com/freeswitch/sofia-sip /usr/src/libs/sofia-sip
|
||||
RUN git clone https://github.com/freeswitch/spandsp /usr/src/libs/spandsp
|
||||
RUN git clone https://github.com/signalwire/signalwire-c /usr/src/libs/signalwire-c
|
||||
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get -yq install \
|
||||
# build
|
||||
build-essential cmake automake autoconf 'libtool-bin|libtool' pkg-config \
|
||||
# general
|
||||
libssl-dev zlib1g-dev libdb-dev unixodbc-dev libncurses5-dev libexpat1-dev libgdbm-dev bison erlang-dev libtpl-dev libtiff5-dev uuid-dev \
|
||||
# core
|
||||
libpcre3-dev libedit-dev libsqlite3-dev libcurl4-openssl-dev nasm \
|
||||
# core codecs
|
||||
libogg-dev libspeex-dev libspeexdsp-dev \
|
||||
# mod_enum
|
||||
libldns-dev \
|
||||
# mod_python3
|
||||
python3-dev \
|
||||
# mod_av
|
||||
libavformat-dev libswscale-dev libavresample-dev \
|
||||
# mod_lua
|
||||
liblua5.2-dev \
|
||||
# mod_opus
|
||||
libopus-dev \
|
||||
# mod_pgsql
|
||||
libpq-dev \
|
||||
# mod_sndfile
|
||||
libsndfile1-dev libflac-dev libogg-dev libvorbis-dev
|
||||
|
||||
RUN cd /usr/src/libs/libks && cmake . -DCMAKE_INSTALL_PREFIX=/usr -DWITH_LIBBACKTRACE=1 && make install
|
||||
RUN cd /usr/src/libs/sofia-sip && ./bootstrap.sh && ./configure CFLAGS="-g -ggdb" --with-pic --with-glib=no --without-doxygen --disable-stun --prefix=/usr && make -j`nproc --all` && make install
|
||||
RUN cd /usr/src/libs/spandsp && ./bootstrap.sh && ./configure CFLAGS="-g -ggdb" --with-pic --prefix=/usr && make -j`nproc --all` && make install
|
||||
RUN cd /usr/src/libs/signalwire-c && PKG_CONFIG_PATH=/usr/lib/pkgconfig cmake . -DCMAKE_INSTALL_PREFIX=/usr && make install
|
||||
|
||||
RUN cd /usr/src/freeswitch && ./bootstrap.sh -j
|
||||
RUN cd /usr/src/freeswitch && ./configure
|
||||
RUN cd /usr/src/freeswitch && make -j`nproc` && make install
|
||||
|
||||
# Cleanup the image
|
||||
RUN apt-get clean
|
||||
|
||||
# Uncomment to cleanup even more
|
||||
#RUN rm -rf /usr/src/*
|
|
@ -0,0 +1,4 @@
|
|||
##### Dockerfile examples showing how to build FreeSWITCH without installing FreeSWITCH repo.
|
||||
|
||||
[Debian 11](https://github.com/signalwire/freeswitch/blob/dockerfile/docker/examples/Debian11/Dockerfile "Debian 11")
|
||||
|
Loading…
Reference in New Issue