Since the Goobi viewer is a web application, it can be operated either within the company’s own infrastructure or on a hosted system. Operation within cloud solutions such as Amazon Web Services is also possible.
The Goobi viewer is usually installed and operated on a dedicated Linux server. As a rule, Ubuntu Linux Server LTS is used as the distribution.
At least 4 vCPUs and 8GB RAM as well as 20GB HDD for the operating system are recommended as system resources. Depending on the application scenario, there is also additional storage for storing the digital copies.
In the firewall, ports 80 and 443 should be enabled for worldwide access and port 22 restricted for system maintenance.
The Goobi viewer consists of the following five components:
|Goobi viewer Core||The application itself|
|Goobi viewer Indexer||A background service for preparing the data|
|Goobi viewer Connector||The OAI and SRU interfaces|
|Goobi viewer Theme||The theme of the respective instance|
|Apache Solr||The search index for the metadata and full texts|
The Goobi viewer components Core, Indexer and Connector are written in the Java programming language. The themes are based on the JavaServer Faces (JSF) framework. The popular Apache Solr search engine is used for the search index. As a web application, the Goobi viewer is usually executed within an Apache Tomcat server and requires an installed MySQL/MariaDB database to run.
The Goobi viewer Indexer monitors a folder in the file system and automatically processes incoming data. Metadata and optionally available full texts are stored within the Apache Solr search index. Images and other associated assets are moved to a folder structure expected by the Goobi viewer Core.
The Goobi viewer core almost exclusively accesses the information on the Apache Solr search index for the presentation of the digitized files. Only the images are read from the file system. The Goobi viewer Connector, on the other hand, uses only the Apache Solr search index.
The installation of the Goobi viewer usually takes place on a Linux server and is complex due to the configuration options to be integrated. Three different ways are therefore available to simplify the commissioning of the Goobi viewer:
The commissioning of the Goobi viewer within Goobi-to-go is usually primarily for test purposes and for getting to know each other. The demo data supplied with the system ensures simple commissioning and quickly leads to demonstrable results.
Detailed installation instructions are available for installing the Goobi viewer on an existing Linux server. Using Ubuntu Linux as an example, these explain how the individual steps of the installation are to be carried out and which configurations must be carried out to what extent.