Skip to content

A repository for composing and hosting the NOMAD oasis image for Åutomate Solar.

License

Notifications You must be signed in to change notification settings

Automate-Solar/nomad-distribution

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

docker image

Automate-Solar's NOMAD Oasis Distribution

This is the NOMAD Oasis distribution of Automate-Solar. Below are instructions for how to deploy this image and how to customize it through adding plugins.

Important

Depending on the settings of the owner of this repository, the distributed image might be private and require authentication to pull. If you are the owner you should make sure that your organization settings allow public packages and after that set this package public. You can read more about this in the GitHub docs here.

Tip

In order for you others to find and learn from your distribution we in FAIRmat would greatly appreciate it if you would add the topic nomad-distribution by clicking the ⚙️ next to "About" on the main GitHub page for this repository.

Deploying the image

To deploy this NOMAD Oasis image you should follow the instructions on nomad-lab.eu/prod/v1/docs/oasis/install.html but replace the Docker image in docker-compose.yaml with ghcr.io/Automate-Solar/nomad-distribution:main for the services worker, app, north, and logtransfer.

Remember to also update the nomad.yaml config file to include the new plugins.

Quick-start

  • Find a linux computer.
  • Make sure you have docker installed. Docker nowadays comes with docker compose build in. Prior, you needed to install the stand alone docker-compose.
  • Download the modified configuration files nomad-oasis.zip from this repository.
  • Run the following commands (skip chown on MacOS and Windows computers)
unzip nomad-oasis.zip
cd nomad-oasis
sudo chown -R 1000 .volumes
docker compose pull
docker compose up -d
curl localhost/nomad-oasis/alive

To run NORTH (the NOMAD Remote Tools Hub), the hub container needs to run docker and the container has to be run under the docker group. You need to replace the default group id 991 in the docker-compose.yaml's hub section with your systems docker group id. Run id if you are a docker user, or getent group | grep docker to find our your systems docker gid. The user id 1000 is used as the nomad user inside all containers.

Adding a plugin

To add a new plugin to the docker image you should add it to the plugins.txt file.

Here you can put either plugins distributed to PyPI, e.g.

nomad-material-processing

or plugins in a git repository with either the commit hash

git+https://github.com/FAIRmat-NFDI/nomad-measurements.git@71b7e8c9bb376ce9e8610aba9a20be0b5bce6775

or with a tag

git+https://github.com/FAIRmat-NFDI/[email protected]

To add a plugin in a subdirectory of a git repository you can use the subdirectory option, e.g.

git+https://github.com/FAIRmat-NFDI/AreaA-data_modeling_and_schemas.git@30fc90843428d1b36a1d222874803abae8b1cb42#subdirectory=PVD/PLD/jeremy_ikz/ikz_pld_plugin

If the plugin is new, you also need to add it under plugins in the nomad.yaml config file that will be included in the image. For example, if you have added a schema plugin nomad_material_processing you should add the following:

plugins:
  options:
    schemas/nomad_material_processing:
      python_package: nomad_material_processing

Once the changes have been committed to the main branch, the new image will automatically be generated.

About

A repository for composing and hosting the NOMAD oasis image for Åutomate Solar.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 3

  •  
  •  
  •