Installing Timeline
Before you begin
- Obtain the Timeline installer for Linux, from either ABBYY representative, or Timeline support at support@abbyy.com .
- Verify all Linux system requirements and prerequisites before starting your Timeline installation.
- Ensure that any firewall installations are not blocking ports 80, 443 and 5432 or the ports you plan to setup for the Web Server and database. The installation will not work if firewall is blocking the ports that have been specified during the Timeline installation.
- If you intend to configure HTTPS, please visit the HTTPS Configuration section.
Procedure
- Copy the Timeline installer to the local disk, typically to /tmp.
- Open the shell.
Important. You need root access to install Timeline. Without root, you won’t have the necessary permissions to install it. Prefixing every command with sudo is cumbersome and it causes a problem with exported variables on the command line. If you are not using the host machine with the root user, start a new shell with root privileges using the command sudo bash. - Set the permissions of the timeline-install-5.3.*.sh file so that it is executable:
chmod +x /path/to/timeline-install-5.3.*.sh - Execute the Timeline install script:
path/to/timeline-install-5.3.*.sh
If the script is in the current directory, then you need to specify the dot (./) before the script file name:
./timeline-install-5.3.*.sh
Continue the installation when prompted. Installation workflow includes the following steps. - Read and accept the license agreement
Read the information in the End-User License Agreement. After reviewing the license agreement information, to indicate acceptance of the EULA, press the Y key. Any other input cancels the installation. After you accept the license agreement, installation proceeds. - Check and install prerequisites
- PostgreSQL instance and database
Timeline needs access to PostgreSQL 12. You can install PostgreSQL on a computer along with Timeline or a separate computer.
The program will ask you about using either local or remote database.
If you already installed PostgreSQL on another computer, select Remote. This option is useful if you install the program in a production environment where the host machine is accessible from outside the corporate network. If you prefer to keep Timeline and the database on the same machine, select Local. - Local
If you want to install PostgreSQL on the host machine or already installed it there, select Local. This option is useful if you install the program for testing purposes or environments where the host machine is not accessible from outside the corporate network, and only the HTTP/HTTPS ports open.
You can install PostgreSQL using the native package manager on your system or let the Timeline installer install it. During the installation process, the following PostgreSQL databases are created:
timeline
The database contains all information about users, their activity, and projects.
timeline-log
The database contains detailed records of Timeline events such as security, errors, and notifications.
timeline-000
The database contains information about user repositories. - Remote
When you select this option, the program will ask you about establishing a secure SSL connection to the remote PostgreSQL database. Press Y if you plan to use SSL, or N to reject.
Important. If your PostgreSQL is configured with SSL support and a root CA certificate file is used, you must provide the full path to the root CA certificate when configuring your connection settings. The certificate file will be copied to the $TIMELINE_INSTALLATION_DIR/db-ssl folder.
To use this option, you must prepare timeline, timeline-log, and timeline-000 databases in the remote PostgreSQL in advance: - Launch PostgreSQL
- Create a user that can own database objects.
For example, TimelineUser. - Create the following databases owned by the user you created in the previous step:
timeline
The database contains all information about users, their activity, and projects.
timeline-log
The database contains detailed records of Timeline events such as security, errors, and notifications.
timeline-000
The database contains information about user repositories.
For setting up access to Timeline databases, you will be asked for the connection settings in one of the further installation steps. - Docker and docker-compose
Timeline runs in Docker containers so Docker and Docker-compose should be installed on the host machine. Docker is a Linux-based virtualization tool that helps to make complex applications more portable. You can install it manually or let the Timeline installer download and install it.
Important. In Timeline 5.3, the installer automatically downloads Docker and its dependencies from the Internet. If your machine is not connected to the Internet, the program will ask you to download it manually and prompt sources. - Configure web server
- HTTP and HTTPS port
Specify the TCP/IP port for the Timeline website. Make sure that the specified port is not being used by any other application. By default, the application listens on port 80 for HTTP and port 443 for HTTPS. If both ports are defined, HTTP requests will be redirected to HTTPS. You can change ports configuration after installation. For more information, see Configuring ABBYY Timeline Using .env File section. - HTTP port (0 to disable) (80)
Press Enter to use the default 80 port or enter the port number. - HTTPS port (0 to disable) (443)
Press Enter to use the default 443 port or enter the port number. For setting up HTTPS, see the HTTPS Configuration with SSL section. - Base URL
Enter the base URL that hosts Timeline or press Enter to use the default https://127.0.0.1 one. It must be a public IP of the server or an external fully qualified URL. The lowercase pattern is recommended. Base URL also is used for links inside email messages sent by Timeline.
The Base URL must have the following syntax: http[s]://hostname:port
Important. Do not use extra spaces and forward slash '/' at the end of the base URL.
If you are using the default port (80 or 443), you do not need to add them to the base URL.
Examples:
The base URL of the HTTP endpoint, if a custom port is specified:
http://mytimeline.com:8080
The base URL of the HTTPS endpoint, if a custom port is specified:
https://mytimeline.com:30443 - Configure mail server
Configure the SMTP server access to allow Timeline sending out emails in several features such as Alerting, User invitation, etc. You should provide general information to configure SMTP mail server and specify its security options. To decide which options you have to select, please refer to the documentation of your mail server. The server basic settings are set during installation. You can change SMTP Mail Server configuration after installation. For more information, see Configuring ABBYY Timeline Using .env File section. - Host
Specify server name where SMTP mail server is installed. - Port
Enter SMTP mail server port number. - Username and Password
Enter SMTP mail server access credentials. - E-Mail sender
Enter the sender address that is used to fill the 'From' header field of e-mails. - Use TLS? (Y/N)
Enter N in case your SMTP server does not use TLS. It is a typical use case for mock, local mail services, for example, mailcatcher. - Require TLS (Y/N)
Enter Y if the initial connection should happen over an unencrypted connection and then the STARTTLS command should be used to upgrade to a secure connection. For example, Microsoft Exchange. - Reject unauthorized (Y/N)
Enter Y if your mail server uses SSL certificate issued by the Certification Authority (CA).
Enter N if your mail server uses an unauthorized, e.g., self-signed, SSL certificate. - Configure admin user account
Enter a valid e-mail address using an existing domain name that is configured to receive emails, for example, user@domain.com, and a password for it. This will be the first user of Timeline and the one that will have access to the ABBYY Timeline website, where other users can be administered.
The password you specified must contain only English letters and digits from 0 to 9.
Note. If you are upgrading Timeline, you are not prompted to enter admin user credentials because previous settings are maintained. - Database
This step appears if you choose Remote to connect to a remote PostgreSQL instance at the beginning of the installation process. The installer will ask for the settings for accessing the Admin DB, Log DB, User DB databases. For each of these databases, specify the connection parameters to timeline, timeline-log, and timeline-000 databases located on the remote PostgreSQL. - PostgreSQL host
If you select Connect to existing database on the previous step, specify server name where PostgreSQL is installed. By default, localhost is used. - PostgreSQL port
Specify the TCP/IP port for PostgreSQL. By default, TCP/IP port 5432 is used. Make sure that it is not being used by any other application. - Database username
Provide the credentials of the PostgreSQL user who owns the Timeline databases. For example, TimelineUser. - Database name
- Enter timeline as the database name for the Admin DB.
- Enter timeline-log as the database name for the Log DB.
- Enter timeline- as the database name for the User DB. It is the prefix of the timeline-000 database you created in the remote PostgreSQL. - Perform Timeline health check
During the installation process, Firewall exceptions are created, allowing interactions between components to take place inside a network. For default network connection settings see Network connection settings section.
Important. If you intend to configure HTTPS, you must set up SSL configuration after installation is complete. See HTTPS Configuration with SSL for details.
9/22/2023 8:59:47 AM