gpt4 book ai didi

docker - 如何使用 Asterisk 16创建Docker容器

转载 作者:行者123 更新时间:2023-12-02 18:47:55 26 4
gpt4 key购买 nike

我想创建一个带星号16的Docker,我可以注册我的sip扩展名,但什么都不听。

我也可以去8088端口,修改http.conf
我也用

rtpstart=18000
rtpend=18000
[Jun 12 21:25:11] WARNING[60]: chan_sip.c:4119 retrans_pkt: Retransmission timeout reached on transmission OGY2NWY0ODZkZjhlZWRiNzMzOTkxYjhjYmNjMjA4ZTQ. for seqno 2 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 6399ms with no response
[Jun 12 21:25:11] WARNING[60]: chan_sip.c:4143 retrans_pkt: Hanging up call OGY2NWY0ODZkZjhlZWRiNzMzOTkxYjhjYmNjMjA4ZTQ. - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
-- Channel SIP/1500-00000005 left 'simple_bridge' basic-bridge <b6ecbabd-22f8-4eef-87fb-18069f13d309>
-- Channel SIP/1500-00000006 left 'simple_bridge' basic-bridge <b6ecbabd-22f8-4eef-87fb-18069f13d309>
== Spawn extension (ejemplo, 1500, 1) exited non-zero on 'SIP/1500-00000005'

Sip.conf
    [1500]
type=friend
secret=abc12345
qualify=yes
nat=force_rport
host=dynamic
canreinvite=no
context=ejemplo
disallow=all
allow=ulaw
allow=alaw
allow=gsm

我的Docker容器ip是: rtp.conf
我的Dockerfile:
FROM debian:latest
RUN apt -y update && apt -y upgrade && apt -y install git curl wget libnewt-dev libssl-dev libncurses5-dev subversion \
libsqlite3-dev build-essential libjansson-dev libxml2-dev uuid-dev && \
apt-get -y install odbc-postgresql && apt-get -y install libedit-dev &&
apt-get -y install libjansson-dev vim
RUN cd /usr/src && mkdir -p asterisk && curl -O http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16 current.tar.gz && tar xvfz asterisk-16-current.tar.gz && cd asterisk-16.*/ && ./configure --with-jansson-bundled --with-pjproject-bundled && make menuselect/menuselect menuselect-tree menuselect.makeopts && \
menuselect/menuselect --disable BUILD_NATIVE \
--enable app_confbridge \
--enable app_fax \
--enable app_macro \
--enable codec_opus \
--enable codec_silk \
--enable BETTER_BACKTRACES \
--disable MOH-OPSOUND-WAV \
--enable MOH-OPSOUND-GSM \
make && make install && make samples && make config && ldconfig
RUN groupadd asterisk && \
useradd -r -d /var/lib/asterisk -g asterisk asterisk && \
usermod -aG audio,dialout asterisk && \
chown -R asterisk.asterisk /etc/asterisk && \
chown -R asterisk.asterisk /usr/lib/asterisk
RUN touch /etc/asterisk/sip_custom.conf /etc/asterisk/extensions_custom.conf /etc/asterisk/queues_custom.conf && \
echo "#include "sip_custom.conf"" >> /etc/asterisk/sip.conf &&\
echo "#include "extensions_custom.conf"" >> /etc/asterisk/extensions.conf && \
echo "#include "queues_custom.conf"" >> /etc/asterisk/queues.conf && \
echo "pretty = yes" >> /etc/asterisk/ari.conf && \
echo "enabled = yes" >> /etc/asterisk/http.conf && \
echo "bindaddr = 0.0.0.0" >> /etc/asterisk/http.conf
EXPOSE 5060/udp 8088 18000/udp
ENTRYPOINT ["/bin/bash", "-c", "service asterisk start && tail -f /dev/null"]

我运行容器:

docker run -d --rm --name星号-p 5060:5060 / udp -p 8088:8088 -p 18000:18000 / udp ba03a0c54280

最佳答案

意外地,星号至少需要2个端 Eloquent 能进行一次 call 。

对于两次 call ( call 提供者并返回),它已经需要四个端口。

因此,您需要更改rtpsettings并相应地更改docker。

如果您对SIP的知识为零,那么在docker内部运行sip确实是个坏主意。使用有经验的人的一些手册。

关于docker - 如何使用 Asterisk 16创建Docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56570773/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com