Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Используем за основу контейнера debian
- FROM debian:stretch
- #FROM debootstrap/stretch
- MAINTAINER Zamyatin Mikhail
- # update
- RUN apt-get update
- RUN apt-get upgrade -y
- #utils
- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential openssl libxml2-dev libncurses5-dev uuid-dev sqlite3 libsqlite3-dev pkg-config libjansson-dev git linux-headers-`uname -r` dh-autoreconf subversion bison flex sox libncurses5-dev bison flex sox libncurses5-dev libssl-dev default-libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev libopus-dev opus-tools libiksemel-dev libiksemel-utils bash bison vim mc make git
- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y apt-utils
- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y wget php-pear libtool libtool-bin
- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python-pyrex wget curl mc apt-utils build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server mysql-client bison flex php php-curl php-cli php-mysql php-pear php-gd curl sox libncurses5-dev libssl-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev sudo subversion vim mc autotools-dev libtool-bin python-pyrex make texi2html texinfo uuid-dev build-essential libxml2-dev libncurses5-dev libsqlite3-dev libssl-dev libxslt-dev libjansson-dev bash
- #lame
- WORKDIR /tmp
- RUN mkdir src && cd src \
- && wget http://sourceforge.net/projects/lame/files/lame/3.98.4/lame-3.98.4.tar.gz \
- && tar zxvf lame-3.98.4.tar.gz \
- && cd lame* && ./configure \
- && make && make install
- #get
- WORKDIR /tmp
- RUN cd /tmp/src\
- && wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz \
- && wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz \
- && wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz \
- && git clone https://github.com/akheron/jansson.git \
- && wget http://www.pjsip.org/release/2.5.5/pjproject-2.5.5.tar.bz2 && echo " ¯\_(ツ)_/¯"
- #dahdi
- WORKDIR /tmp
- RUN cd /tmp/src/ \
- && tar xvfz dahdi-linux-complete-current.tar.gz \
- && tar xvfz libpri-current.tar.gz \
- && rm -f dahdi-linux-complete-current.tar.gz libpri-current.tar.gz \
- && cd dahdi-linux-complete-* \
- && make all \
- && make install \
- && make config \
- && cd /tmp/src/libpri-* \
- && make \
- && make install \
- && echo " ¯\_(ツ)_/¯ "
- #pjproject
- WORKDIR /tmp
- RUN cd /tmp/src \
- && tar -xjvf pjproject-2.*.*.tar.bz2 \
- && cd pjproject-* \
- && CFLAGS='-DPJ_HAS_IPV6=1' ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr \
- && make dep \
- && make \
- && make install \
- && echo " ¯\_(ツ)_/¯ "
- #janson
- WORKDIR /tmp
- RUN cd /tmp/src \
- && cd /tmp/src/jansson \
- && autoreconf -i \
- && ./configure \
- && make \
- && make install \
- && echo " ¯\_(ツ)_/¯ "
- #aster
- WORKDIR /tmp/src/asterisk-14.6.0
- RUN cd /tmp/src \
- && tar xvfz asterisk-14-current.tar.gz \
- && rm -f asterisk-14-current.tar.gz
- RUN cd /tmp/src/asterisk-* \
- && ./configure \
- && contrib/scripts/get_mp3_source.sh
- RUN cd /tmp/src/asterisk-* \
- && make menuselect.makeopts
- RUN cd /tmp/src/asterisk-* && menuselect/menuselect \
- --disable BUILD_NATIVE \
- --enable cdr_csv \
- # --enable chan_sip \
- --enable res_snmp \
- --enable res_http_websocket \
- --enable res_hep_pjsip \
- --enable res_hep_rtcp \
- --enable res_sorcery_astdb \
- --enable res_sorcery_config \
- --enable res_sorcery_memory \
- --enable res_sorcery_memory_cache \
- --enable res_pjproject \
- --enable res_rtp_asterisk \
- --enable res_ari \
- --enable res_ari_applications \
- --enable res_ari_asterisk \
- --enable res_ari_bridges \
- --enable res_ari_channels \
- --enable res_ari_device_states \
- --enable res_ari_endpoints \
- --enable res_ari_events \
- --enable res_ari_mailboxes \
- --enable res_ari_model \
- --enable res_ari_playbacks \
- --enable res_ari_recordings \
- --enable res_ari_sounds \
- --enable res_pjsip \
- --enable res_pjsip_acl \
- --enable res_pjsip_authenticator_digest \
- --enable res_pjsip_caller_id \
- --enable res_pjsip_config_wizard \
- --enable res_pjsip_dialog_info_body_generator \
- --enable res_pjsip_diversion \
- --enable res_pjsip_dlg_options \
- --enable res_pjsip_dtmf_info \
- --enable res_pjsip_empty_info \
- --enable res_pjsip_endpoint_identifier_anonymous \
- --enable res_pjsip_endpoint_identifier_ip \
- --enable res_pjsip_endpoint_identifier_user \
- --enable res_pjsip_exten_state \
- --enable res_pjsip_header_funcs \
- --enable res_pjsip_logger \
- --enable res_pjsip_messaging \
- --enable res_pjsip_mwi \
- --enable res_pjsip_mwi_body_generator \
- --enable res_pjsip_nat \
- --enable res_pjsip_notify \
- --enable res_pjsip_one_touch_record_info \
- --enable res_pjsip_outbound_authenticator_digest \
- --enable res_pjsip_outbound_publish \
- --enable res_pjsip_outbound_registration \
- --enable res_pjsip_path \
- --enable res_pjsip_pidf_body_generator \
- --enable res_pjsip_publish_asterisk \
- --enable res_pjsip_pubsub \
- --enable res_pjsip_refer \
- --enable res_pjsip_registrar \
- --enable res_pjsip_registrar_expire \
- --enable res_pjsip_rfc3326 \
- --enable res_pjsip_sdp_rtp \
- --enable res_pjsip_send_to_voicemail \
- --enable res_pjsip_session \
- --enable res_pjsip_sips_contact \
- --enable res_pjsip_t38 \
- --enable res_pjsip_transport_management \
- --enable res_pjsip_transport_websocket \
- --enable res_pjsip_xpidf_body_generator \
- --enable res_stasis \
- --enable res_stasis_answer \
- --enable res_stasis_device_state \
- --enable res_stasis_mailbox \
- --enable res_stasis_playback \
- --enable res_stasis_recording \
- --enable res_stasis_snoop \
- --enable res_stasis_test \
- --enable res_statsd \
- --enable res_timing_timerfd \
- menuselect.makeopts
- RUN cd /tmp/src/asterisk-* && make
- RUN cd /tmp/src/asterisk-* && make install
- RUN cd /tmp/src/asterisk-* && make samples && make config
- #User add
- RUN useradd -m asterisk -s /sbin/nologin
- RUN chown asterisk:asterisk /var/run/asterisk
- RUN chown -R asterisk:asterisk /etc/asterisk/
- #RUN chown -R asterisk:asterisk /var/{lib,log,spool}/asterisk
- RUN chown -R asterisk:asterisk /var/lib/asterisk/
- RUN chown -R asterisk:asterisk /var/log/asterisk/
- RUN chown -R asterisk:asterisk /var/spool/asterisk/
- # start
- CMD /usr/sbin/asterisk -f -U asterisk -G asterisk -vvvg -c
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement