Deploying the application

    {info} Read this before deploying the application.

    Before deploying the application make sure your system fulfils the installation requirements and your database is properly configured.

    Deploying to Tomcat

    Follow these steps to deploy Compound Registration to Tomcat:

    1. Configure Tomcat connector as needed in the server.xml within the Tomcat conf folder.

      • When Tomcat 8.5 and Internet Explorer 11 or Edge web browsers are used, the following line should be added to the context.xml:

        <CookieProcessor className="org.apache.tomcat.util.http.LegacyCookieProcessor" alwaysAddExpires="true" />
    2. Make sure you copied the proper JDBC driver as described on this page.

    3. When deploying Compound Registration before version 23.14.0 you will also need to include the following libraries to be able to use the email notification:

      Copy the downloaded jar files to your $TOMCAT_HOME/lib folder.

    4. Delete the build number from the downloaded .war file name, rename as RegistryCxn.war and then copy it into the Tomcat webapps folder. Restart Tomcat. It will detect the newly added war file and extract it automatically.

    5. After a successful deployment, the application can be started. By default, you can access the application at the following URL: http://yourhost:8080/RegistryCxn/client/. If everything went well you'll see the Compound Registration Wizard, that helps you to upload your the license file, set up your database connection and create the first user of Compound Registration.

    Notes :

    • Update user defined checker configuration files in the $HOME/.chemaxon folder with the provided ones, if needed.
    • Integration with other services, such as LDAP, Active Directory, SAML SSO, downstream databases, can be configured by changing the content of the registry.properties file. Visit the Configuration Guide for more information. You can also find an example property file at $TOMCAT_HOME/webapps/RegistryCxn/WEB-INF/classes/registry.example.properties.

    Deploy and Install with Docker

    {info} Download docker image.

    You can get our docker image from our products download page: https://chemaxon.com/products/compound-registration/download

    {warning} If you are using Oracle as database, you need to download an Oracle JDBC driver and include it into the docker image

    Follow these steps to include Oracle JDBC driver into the docker image :

    1. Download the recommended JDBC driver from here: https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html (e.g.ojdbc11.jar)

    2. Pull the Compound Registration image you would like to use from here: https://download.chemaxon.com/compound-registration

    3. Create a file with name Dockerfile (without extension) with the following content:

      FROM registration:{REPLACE_WITH_VERSION}
      COPY ojdbc11.jar /home/cxnapp/install/RegistryCxn/lib
      COPY ojdbc11.jar /home/cxnapp/install/RegistryCxn-standalone/lib

      Save this file next to the downloaded driver (e.g.ojdbc11.jar) in an empty folder.

    4. Run the following command, which will build the docker image:

      docker build -t {DOCKER_IMAGE_WITH_ORACLE}:{REPLACE_WITH_VERSION} .

    Our image contains Compound Registration and its command line tool. During docker run , if you provide an argument, the command line tool will run it as a command, otherwise Compound Registration application will start.

    Follow these steps to install and run Compound Registration in docker container:

    1. Create an env.list file that contains database connection parameters:

      mysql_example_env.list

      
      RegDBType=MySql
      RegDBDriver=org.mariadb.jdbc.Driver
      RegDBUrl=jdbc:mysql://{REPLACE_WITH_DATABASE_URL}/{REPLACE_WITH_DATABASE_NAME}
      RegDBUser={REPLACE_WITH_USERNAME}
      RegDBPass={REPLACE_WITH_PASSWORD}
      RegDBValidationQuery=SELECT 1
      ApplicationStatus=installed

      postgresql_example_env.list

      
      RegDBType=PostgreSQL
      RegDBDriver=org.postgresql.Driver
      RegDBUrl=jdbc:postgresql://{REPLACE_WITH_DATABASE_URL}/{REPLACE_WITH_DATABASE_NAME}
      RegDBUser={REPLACE_WITH_USERNAME}
      RegDBPass={REPLACE_WITH_PASSWORD}
      RegDBValidationQuery=SELECT 1
      ApplicationStatus=installed

      oracle_example_env.list

      
      RegDBType=Oracle
      RegDBDriver=oracle.jdbc.driver.OracleDriver
      RegDBUrl=jdbc:oracle:thin:@{REPLACE_WITH_DATABASE_URL}/{REPLACE_WITH_DATABASE_SID_OR_SERVICE}
      RegDBUser={REPLACE_WITH_USERNAME}
      RegDBPass={REPLACE_WITH_PASSWORD}
      RegDBValidationQuery=SELECT 1 FROM DUAL
      ApplicationStatus=installed
    2. Create the database schema for Compound Registration using the created env.list:

      
      docker run --rm --env-file {REPLACE_WITH_PATH_TO_ENV_LIST} hub.chemaxon.com/cxn-docker-release/registration:{REPLACE_WITH_VERSION}/{DOCKER_IMAGE_WITH_ORACLE}:{REPLACE_WITH_VERSION} install -migrateSchema
    3. Create an admin user:

      
      docker run --rm --env-file {REPLACE_WITH_PATH_TO_ENV_LIST} hub.chemaxon.com/cxn-docker-release/registration:{REPLACE_WITH_VERSION}/{DOCKER_IMAGE_WITH_ORACLE}:{REPLACE_WITH_VERSION}  create-user -name {REPLACE_WITH_USERNAME} -password {REPLACE_WITH_PASSWORD} -group SUPER
    4. Add the license URL to the env.list file. Please make sure that the given Chemaxon license is available via file server over HTTP/HTTPS. You can skip this and upload the license later from the Application UI on the Administration Page, but it is not recommended as it will be saved inside the container, and you would have to re-upload it if the container is re-created. add to env.list

      
      CHEMAXON_LICENSE_URL={REPLACE_WITH_URL: eg. http://myserver.local/chemaxon/license.cxl}
    5. Run Compound Registration

      
      docker run -p {REPLACE_WITH_DESIRED_PORT}:8080 -d --restart=unless-stopped --env-file {REPLACE_WITH_PATH_TO_ENV_LIST} hub.chemaxon.com/cxn-docker-release/registration:{REPLACE_WITH_VERSION}/{DOCKER_IMAGE_WITH_ORACLE}:{REPLACE_WITH_VERSION}

    With these steps you have Compound Registration running, you can skip the "Install through the Wizard" step from the deployment guide.