Skip to main content

Building AMS from Source Code

Linux (Ubuntu)

A couple of common repos should be cloned and built with Maven.

  • Go to a directory where you will clone repos

  • Clone and build ant-media-server-parent

    $ git clone https://github.com/ant-media/ant-media-server-parent.git
    $ cd ant-media-server-parent/
    $ mvn clean install -Dgpg.skip=true
    $ cd ..

Building Community Edition

  • Build the Web Panel

    • Install Node

      $ wget https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.xz
      $ tar -xJf node-v20.11.1-linux-x64.tar.xz
      $ echo 'export PATH=$PATH:'`pwd`'/node-v20.11.1-linux-x64/bin' >> ~/.bashrc
      $ npm install -g @angular/cli
    • Build

      $ git clone https://github.com/ant-media/Ant-Media-Management-Console.git
      $ cd Ant-Media-Management-Console
      $ npm install
      $ ng build --prod
      $ cp -a ./dist/. ../Ant-Media-Server/src/main/server/webapps/root/
  • Clone, build and package Ant-Media-Server

    $ git clone https://github.com/ant-media/Ant-Media-Server.git
    $ cd Ant-Media-Server
    $ mvn clean install -Dmaven.javadoc.skip=true -Dmaven.test.skip=true -Dgpg.skip=true
    $ ./repackage_community.sh

Building Enterprise Edition

  • Clone, build Ant-Media-Server

    $ git clone https://github.com/ant-media/Ant-Media-Server.git
    $ cd Ant-Media-Server
    $ mvn clean install -Dmaven.javadoc.skip=true -Dmaven.test.skip=true -Dgpg.skip=true
  • Build Ant-Media-Enterprise Source code of Ant-Media-Enterprise is provided to the Enterprise users

    $ cd /where/you/download/enterprise/repo
    $ ./redeploy.sh
  • Build the Filter Plugin

    $ git clone https://github.com/ant-media/Plugins.git
    $ cd Plugins/FilterPlugin
    $ mvn install -Dmaven.test.skip=true -Dgpg.skip=true
  • Build the Web Panel

    • Install Node

      $ wget https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.xz
      $ tar -xJf node-v20.11.1-linux-x64.tar.xz
      $ echo 'export PATH=$PATH:'`pwd`'/node-v20.11.1-linux-x64/bin' >> ~/.bashrc
      $ npm install -g @angular/cli
    • Build

      $ git clone https://github.com/ant-media/Ant-Media-Management-Console.git
      $ cd Ant-Media-Management-Console
      $ npm install
      $ ng build --prod
      $ cp -a ./dist/. ../Ant-Media-Server/src/main/server/webapps/root/
    • Package Enterprise Edition

      $ cd Ant-Media-Server
      $ ./repackage_enterprise.sh

If everything goes well, a new packaged Ant Media Server (ant-media-server-x.x.x.zip) file will be created in the Ant-Media-Server/target directory.