Newton Collaborative Editing Server Setup Instructions


This page enlists the steps to set up the Newton Collaborative Editing Server behind the firewall and the instructions to connect it with the Confluence Data center. 

Using Newton Docker Image


Pre-requisite

  1. Install Docker 18.09+
  2. Install docker-compose
  3. Install and configure Nginx and apply SSL certificates (the default port for redirection is 8080)

Install and run the Newton CES

  1. Pull Docker image from Docker hub

    docker pull addteq/newton:latest
  2. Create an environment file "excellentable.env" and add values for the below variables. All fields are required
DatabaseType={type of external database (postgres/mysql/mssql/oracle)} 
DatabaseHostname={database hostname or ip}
DatabasePort={database port}
DatabaseName={database name}
DatabaseUser={database user that will be used to access database}
DatabasePassword={password for database user}
AdminUser={admin username}
AdminPassword={password for admin user}
ConfluenceUrl={confluence base url}

Set the confluence base url precisely the same as shown in confluence-admin → General config

   

   1. Create docker-compose.yml and excellentable.env file.

    1. With external DB

      ---
      version: "2"
      services:
        app:
          image: addteq/newton:latest
          restart: always
          ports:
            - '8080:8080'
          env_file: excellentable.env
    2. With dockerized DB (Sample docker-compose.yml , excellentable.env and db.env files for Postgres DB)

      ---
      version: "2"
      services:
        db:
          image: 'postgres:9.4'
          restart: always
          ports:
            - '24638:5432'
          volumes:
            - ./Volumes/newton/postgres:/var/lib/postgresql/data
          env_file: db.env
       
        app:
          image: addteq/newton:latest
          restart: always
          depends_on:
            - "db"
          ports:
            - '8080:8080'
          env_file: excellentable.env
      DatabaseType=postgres
      DatabaseHostname=db
      DatabasePort=5432
      DatabaseName=confluence
      DatabaseUser=confluence
      DatabasePassword=thae0Aer
      AdminUser={admin username (reqired)}
      AdminPassword={password for admin user (required)}
      ConfluenceUrl={confluence base url (required)}


      If you are using option "b" from above, then create a "db.env" file as well with the below variables and corresponding values.

      POSTGRES_USER=confluence
      # also the database name
       
      POSTGRES_PASSWORD=thae0Aer
      PGPASSWORD=thae0Aer

    2. Start the newton server

docker-compose up -d


    3. Tail logs using docker

docker-compose logs -f

Using Debian and RPM Package


Using Newton Debian Package


Pre-requisite

  1. Ubuntu 18.04 server
  2. Sudo permission to install the package
  3. Install and configure Nginx and apply SSL certificates (the default port for redirection is 8080)

Install and run the Newton CES

  1. Download and Extract the Newton Debian package 

    wget https://cdn.addteq.com/addteq/excellentable/newton/deb/1.0.0/addteq-newton-1.0.0.deb
  2. Install the Newton Debian package

    sudo apt-get update
    sudo apt-get install ./addteq-newton-1.0.0.deb

    You may see a similar error as below:

    Screen Shot 2021-02-05 at 2.10.40 PM.png


    If you get the above error, run the following command:

    sudo chown _apt /var/lib/update-notifier/package-data-downloads/partial/
  3. Set the environment variables by running the script newton-setup-env.sh

    cd /opt/addteq-newton
    ./newton-setup-env.sh

    Usage: The script newton-setup-env.sh is used to create the environment file required for Newton CES

    There are 2 ways to run newton-setup-env.sh:

    1. Interactive Mode to set variables in one go:

    ./newton-setup-env.sh #no argument required

    2. Options Mode to set variables one by one:

    ./newton-setup-env.sh [options as listed below]
    
    Options:
               -h or --help ... help message
               -a or --admin-user ... admin username (required)
               -p or --admin-password ... password for admin user (required)
               -c or --confluence-url ... confluence base url (required)
               -d or --database-type ... type of external database (postgres/mysql/mssql/oracle)
               -l or --database-hostname ... database hostname or ip
               -P or --database-port ... database port
               -n or --database-name ... database name
               -u or --database-user ... database user that will be used to access database
               -w or --database-password ... password for database user
    
    

    Make the confluence-url precisely the same as shown in confluence-admin → General config

    Screen Shot 2021-02-02 at 11.58.55 AM.png

  4. Restart the service for newton

    sudo systemctl restart addteq-newton

Using Newton RPM Package


Pre-requisite

  1. Centos/RedHat server
  2. Sudo permission to install the package
  3. Install and configure Nginx and apply SSL certificates (the default port for redirection is 8080)
  4. Database parameters are optional if the user plans to use embedded H2 databases (not recommended for production) 

Install and run the Newton CES

  1. Download and extract the Newton RPM package

    wget https://cdn.addteq.com/addteq/excellentable/newton/rpm/1.0.0/addteq-newton-1.0.0.rpm
  2. Install the Newton RPM package

    sudo yum install addteq-newton-1.0.0.rpm
  3. Setup the environment by running the script newton-setup-env.sh

    cd /opt/addteq-newton
    ./newton-setup-env.sh

    Usage: The script newton-setup-env.sh is used to create the environment file required for the Newton CES

    There are 2 ways to run newton-setup-env.sh:

    1. Interactive Mode to set variables in one go:

    ./newton-setup-env.sh    #no argument required


    2. Options Mode to set variables one by one:

    ./newton-setup-env.sh [options as listed below]
    
    Options:
               -h or --help ... help message
               -a or --admin-user ... admin username (required)
               -p or --admin-password ... password for admin user (required)
               -c or --confluence-url ... confluence base url (required)
               -d or --database-type ... type of external database (postgres/mysql/mssql/oracle)
               -l or --database-hostname ... database hostname or ip
               -P or --database-port ... database port
               -n or --database-name ... database name
               -u or --database-user ... database user that will be used to access database
               -w or --database-password ... password for database user
    
    

    Make the confluence-url precisely the same as shown in confluence-admin → General config

    Screen Shot 2021-02-02 at 11.58.55 AM.png

  4. Restart the service for newton

    sudo systemctl restart addteq-newton