Installation¶
Pre-requisites¶
OS Ubuntu Hirsute 21.04, Ubuntu Groovy 20.10, Ubuntu Focal 20.04 (LTS), Ubuntu Bionic 18.04 (LTS), Ubuntu Xenial 16.04 (LTS)
Docker (latest), Docker Swarm (latest).
Hardware x86_64 architecture.
How to Install¶
Follow these steps to install ARC Metadata Registry application on a single server or a cloud VM. The components of the application runs within individual Docker containers that are managed by Docker Swarm. Also, the application uses Docker Volumes for persistant storage.
Download / Clone the source code from the DataPLANT repository. Here is the link to the source code.
Goto the install directory. Execute install.sh script with one of the following options:
install: Use this option to install the latest version of Docker and Docker Swarm before creating the Docker Volumes and installting the application. Only for fresh installation of the registry application.
start: Use this option only to start the docker containers.
shutdown: Use this option to shutdown the running docker containers.
uninstall: Use this option only to uninstall the application, and delete the Docker Volumes. Note that this option would delete both the application and the data.
Before proceeding with the next steps, make sure the individual containers are up and running. Use the following command to check the status of the containers.
sudo docker ps (or) sudo docker service lsList of containers:
arc_intg_gitlab: Gitlab integration module.
arc_ui: UI component.
arc_es: Backend database engine.
arc_users: Redis container to maintain user information.
arc_db_es: API layer to query data from the database.
arc_gateway: Gateway server.
arc_logger: Logging service.
Warning
The installation script downloads the default docker images from dockerhub/arcregistry. However, in case any individual componets of ARC Metadata Registry are customized for on-premise solution, edit the “buildimage.sh” script for each component, generate the images before installing.
Web Interface¶
The ARC Metadata Registry application contains a web-module that interacts with the backend application through the APIs. The following environmental variables need to be updated before using the web-module.
ui/.env ui/public/js/env.js