Coder Social home page Coder Social logo

balazsbago / docker.icat Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rkrahl/docker.icat

0.0 0.0 0.0 1.29 MB

A docker image for the ICAT metadata catalogue and related components

Shell 1.37% Dockerfile 2.52% HTML 18.85% CSS 0.18% Python 77.09%

docker.icat's Introduction

A docker-compose setup to start a demo iCat system

The compose file describes three services:

  • database_icat: This is a MySQL database for the icat server based on mysql:5.7 image on docker hub.
  • database_topcat: This is a MySQL database for the topcat based on mysql:5.7 image on docker hub.
  • webserver: This is a Payara application server based on a local build of the provided Dockerfile.

Services

Start services

Use the following script in the directory of the project.

docker-compose -f docker-compose.yaml up -d

Access logs

Use the following script in the directory of the project.

docker-compose -f docker-compose.yaml logs -f

However, this is not so useful, because application logs are not visible via docker logs.

Build the webserver

Use the following script in the directory of the project.

docker-compose -f docker-compose.yaml build webserver

Restart after only configuration change

Use the following script in the directory of the project.

docker-compose -f docker-compose.yaml restart webserver

Stop services

Use the following script in the directory of the project.

docker-compose -f docker-compose.yaml down

Access

Web admin

Payara admin access is available on: https://localhost:4848
The user is admin.
Script to obtain the password:

echo $(docker-compose -f docker-compose.yaml exec webserver cat .gfclient/pass | grep asadmin | awk '{print $2}' | base64 -d -i)

Topcat

Topcat server is available on: http://localhost:8080
Anonymous and simple authentication methods are enabled with the provided configurations. Simple user is 'usera' and the password is 'passworda'.

Ingestion

Fill up with dummy data

Run the following script in the directory of the script with using pipenv. The Pipfile and the lock files are provided as well.

pipenv sync
pipenv shell
python ingest_dummy_data.py

This script will fill up your database with some dummy data.
(1 facility, 3 investigations and 1 dataset per investigation)

TODO:

  • add more dummy data
  • use large data files (> 10GB)
  • add parameters
  • add users and permissions
  • persistent volume option for the compose file

docker.icat's People

Contributors

rkrahl avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.