欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 焦点 > 在ubuntu22.04上先部署docker,再编译安装kamailio,附详细操作流程及docker和makailio的版本号

在ubuntu22.04上先部署docker,再编译安装kamailio,附详细操作流程及docker和makailio的版本号

2025/2/8 2:24:49 来源:https://blog.csdn.net/weixin_44213550/article/details/145464032  浏览:    关键词:在ubuntu22.04上先部署docker,再编译安装kamailio,附详细操作流程及docker和makailio的版本号

以下是在Ubuntu 22.04上部署Docker并编译安装Kamailio的详细操作流程,包含版本号信息:


一、部署Docker(版本:24.0.7)

  1. 更新系统包

    sudo apt update && sudo apt upgrade -y
    
  2. 安装依赖工具

    sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
    
  3. 添加Docker官方GPG密钥

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    
  4. 添加Docker仓库

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu jammy stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    
  5. 安装Docker Engine

    sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io
    
  6. 启动Docker并设置开机自启

    sudo systemctl enable --now docker
    
  7. 验证Docker安装

    sudo docker run hello-world
    

    出现 Hello from Docker! 表示成功。

  8. 将当前用户加入docker组(可选)

    sudo usermod -aG docker $USER
    newgrp docker  # 重新加载组权限(需重新登录生效)
    

二、编译安装Kamailio(版本:5.8.3)

  1. 安装编译依赖

    sudo apt install -y gcc make flex bison libssl-dev libpcre3-dev libmysqlclient-dev libxml2-dev libcurl4-openssl-dev libsnmp-dev libncurses5-dev libreadline-dev libjson-c-dev git
    
  2. 下载Kamailio源码

    wget https://www.kamailio.org/pub/kamailio/5.8.3/src/kamailio-5.8.3_src.tar.gz
    tar -xzf kamailio-5.8.3_src.tar.gz
    cd kamailio-5.8.3
    
  3. 配置编译选项

    make cfg  # 生成默认配置
    # 编辑modules.lst选择模块(例如启用db_mysql、tls等)
    # 或直接通过参数指定模块
    sed -i 's/include_modules= /include_modules= db_mysql tls /' src/modules.lst
    
  4. 编译并安装

    make all
    sudo make install
    
  5. 创建Kamailio用户和组

    sudo groupadd kamailio
    sudo useradd -g kamailio -d /var/run/kamailio -s /sbin/nologin kamailio
    
  6. 配置Kamailio

    • 复制默认配置文件:
      sudo mkdir -p /usr/local/etc/kamailio
      sudo cp etc/kamailio.cfg /usr/local/etc/kamailio/
      sudo cp etc/dbinit.mysql /usr/local/etc/kamailio/
      
    • 按需编辑配置文件:
      sudo nano /usr/local/etc/kamailio/kamailio.cfg
      
  7. 创建Systemd服务

    sudo nano /etc/systemd/system/kamailio.service
    

    添加以下内容:

    [Unit]
    Description=Kamailio SIP Server
    After=network.target[Service]
    Type=simple
    User=kamailio
    Group=kamailio
    ExecStart=/usr/local/sbin/kamailio -f /usr/local/etc/kamailio/kamailio.cfg -P /var/run/kamailio/kamailio.pid -m 64 -M 16
    Restart=on-failure[Install]
    WantedBy=multi-user.target
    
  8. 启动Kamailio并验证

    sudo systemctl daemon-reload
    sudo systemctl enable --now kamailio
    sudo systemctl status kamailio
    
  9. 验证版本

    /usr/local/sbin/kamailio -V
    

    输出应包含 version: 5.8.3


关键版本信息

  • Docker: 24.0.7(截至2023年10月最新稳定版)
  • Kamailio: 5.8.3(截至2023年10月最新稳定版)

注意事项

  1. 若需启用特定模块(如WebSocket、Redis等),需安装对应依赖并修改 include_modules
  2. 生产环境建议配置数据库(如MySQL)并初始化表结构:
    sudo mysql -u root -p < /usr/local/etc/kamailio/dbinit.mysql
    
  3. 防火墙需开放SIP协议端口(默认UDP 5060)。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com