Requirements

How to run SimDB:

  1. Clone imas-installer  repository: https://gitlab.eufus.psnc.pl/containerization/imas/imas-installer

  2. Change directory to imas-installer  and switch branch to test-simdb  (in the future this branch will be merged into main ). 

  3. Pull git submodules required during building Docker image
    git submodule update --init --recursive


  4. Build Docker image  with following command:
    CI_COMMIT_BRANCH=test-simdb ./build.sh -t al-simdb


  5. After successful build of al-simdb  image change directory to imas-installer/simDB . This is directory which containing docker-compose.yml  which describes our configuration

  6. Before running our configuration you have to modify docker-compose.yml . Default docker-compose.yml  for simdb and simdb-cli services has no image assigned to it. If you try to run it, you should see following error:
    validating <path to compose>/docker-compose.yml: services.simdb.image must be a string
    To run the configuration correctly, you must select one of the images available on your machine (you can use image built in previous steps or pull them from container registry  https://gitlab.eufus.psnc.pl/containerization/imas/imas-installer/container_registry/74). To check the available al-simdb  images execute following command:
    docker image ls --format "{{.Repository}}:{{.Tag}}" | grep "al-simdb"### Output
    gitlab.eufus.psnc.pl:5050/containerization/imas/imas-installer/al-simdb:hotfix_DD-3.42.0_AL-5.3.2_SIMDB-0.11.2-UDA-2.7.5-UDA-PLUGIN-1.4.0
    gitlab.eufus.psnc.pl:5050/containerization/imas/imas-installer/al-simdb:hotfix_DD-3.42.0_AL-5.3.2_SIMDB-0.10.1-UDA-2.7.5-UDA-PLUGIN-1.4.0
    gitlab.eufus.psnc.pl:5050/containerization/imas/imas-installer/al-simdb:DD-3.39.0_AL-5.3.0_SIMDB-0.10.1-UDA-2.7.5-UDA-PLUGIN-1.4.0

    Select Docker image which suits your need and past it into docker-compose.yml  in place of `image: ` for simdb  and simdb-cli  service. It should look like this:

    image: gitlab.eufus.psnc.pl:5050/containerization/imas/imas-installer/al-simdb:test-simdb_DD-3.42.0_AL-5.3.2_SIMDB-0.11.2-UDA-2.7.5-UDA-PLUGIN-1.4.0
    additionally if you want to mount your custom files into SimDB Server or SimDB CLI, you can change and uncomment "volumes" fields in simdb and simdb-cli services
  7.  After selecting al-simdb  image you can start up configuration. In order to do that execute following command:
    docker compose up [--remove-orphans] [--detach]
    # --remove-orphans option will remove containers for services not defined in the Compose file
    # --detach option will run configuration in the background

    Sometimes configuration fails, due to time required to create Postgres DB . If it happens to you, then run command again.

  8. In terminal execute following command:
    docker compose exec -it simdb-cli /bin/bash
    After execution of this command, you should be inside simdb-cli  container

  9. In order to add simulation to SimDB Server  you can execute prepared bash script:
    add_simulation.sh <alias>
    # <alias> is name of a simulation under which it will be available on SimDB Server
  10. To check if simulation was pushed sucessfuly to SimDB Server  you can run following commands:
    simdb remote list
    # command will list simulations available on the SimDB Server
    
    simdb remote info <UUID>/<alias>
    # command will return detailed information about simulation