Skip to content

DSW submission service for Nanopublication

License

Notifications You must be signed in to change notification settings

ds-wizard/nanopub-submission-service

Repository files navigation

DSW Nanopub Submission Service

GitHub release (latest SemVer) Docker Pulls GitHub

Submission service for publishing nanopublications from DSW

Usage

Docker

The best is to use this service as part of a docker-compose.yml as follows:

  submission-service:
    image: datastewardshipwizard/nanopub-submission-service:develop
    restart: always
    # If you need to expose a port:
    ports:
      - 8083:80
    volumes:
    # Mount configuration file:
      - ./submission-service/config.yml:/app/config.yml:ro
    # For signing purposes, mount RSA or DSA:
    #  - ./submission-service/id_dsa:/app/id_dsa:ro
    #  - ./submission-service/id_dsa.pub:/app/id_dsa.pub:ro
    #  - ./submission-service/id_rsa:/app/id_rsa:ro
    #  - ./submission-service/id_rsa.pub:/app/id_rsa.pub:ro

Configuration

You can check the example config.yml to see all the options. The minimal example for with the Docker image is here:

nanopub:
  servers:
    - http://nanopub:8080
  sign_nanopub: false
  # Or for signing (optional):
  #sign_nanopub: true
  #sign_key_type: RSA
  #sign_private_key: /app/id_rsa

# Security (optional):
security:
  enabled: true
  tokens:
    - mySecretToken1
    - mySecretToken2

Signing keys

To generate the signing keys (RSA or DSA), please use the np tool directly:

$ ./bin/np mkkeys -a DSA -f ./id_dsa
# OR
$ ./bin/np mkkeys -a DSA -f ./id_rsa

Then mount the keys (private and public) and edit the configuration appropriately.

License

This project is licensed under the Apache License v2.0 - see the LICENSE file for more details.