https://github.com/connectome-neuprint/neuprint-cm

https://github.com/connectome-neuprint/neuprint-cm

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.1%) to scientific vocabulary
Last synced: 7 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: connectome-neuprint
  • Language: Dockerfile
  • Default Branch: master
  • Size: 16.6 MB
Statistics
  • Stars: 1
  • Watchers: 4
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created about 7 years ago · Last pushed 11 months ago
Metadata Files
Readme

README.md

neuPrint Container Management

Docker containers and configuration files for deploying neuPrint web application with the DevOps concept of Infrastructure as Code (IaC).

Setup environment

Place .env file with environment variables in directory of launching docker-compose.

vim .env Add database password to initialize neo4j with, NEO4J_PASSWD=<password>.

Place configuration files in the expected locations so the container can mount them.

  • create directory to store neo4j files mkdir -p /data/db/neo4j/neuprint
    • neuprinthttp config.json
    • example found in neuprinthttp/config/config.json /opt/app/neuprinthttp/conf/config.json
    • neuprinthttp authorized.json
    • example found in neuprinthttp/auth/authorized.json
    • this is not used unless the "auth-file" key is present in config.json /opt/app/neuprinthttp/auth/authorized.json
    • nginx cert files /etc/nginx/ssl/cert.pem /etc/nginx/ssl/key.pem

Build the Images

bash docker build --build-arg EXPLORER_TAG=<neuprintexplorer_repo_tag> --build-arg NEUPRINT_TAG=<neuprint_repo_tag> . -t <registry>/neuprinthttp:<version> - if the repo_tags are not specified the master branch will be used. - if the registry and version numbers do not match the ones specified in the docker-compose.yml, change them there as well.

Push the Images to the Registry

docker push <registry>/neuprinthttp:<version>

For multiplatform images

  • combine the build and the push into one step

docker buildx build --platform linux/amd64,linux/arm64 --build-arg EXPLORER_TAG=<neuprintexplorer_repo_tag> --build-arg NEUPRINT_TAG=<neuprint_repo_tag> -t <registry>/neuprinthttp:<version> --push . - the --platform argument specifies which platforms to build for - the --push makes sure that the images are pushed to the registry with the correct manifest list.

Deploy Container Stack

sudo docker-compose -f docker-compose.yml -f docker-compose-prod.yml up -d

Testing the Stack in dev Environment

sudo docker-compose -f docker-compose.yml -f docker-compose.override.yml up -d - an example of the override yaml can be found in the template directory. Check the mount locations to identify where to place your local configuration files.

Owner

  • Name: NeuPrint
  • Login: connectome-neuprint
  • Kind: organization
  • Email: neuprint@janelia.hhmi.org

GitHub Events

Total
  • Watch event: 1
  • Push event: 4
Last Year
  • Watch event: 1
  • Push event: 4

Dependencies

docker-compose.yml docker
  • gcr.io/flyem-public/connectome-neuprint/neo4j 3.5
  • gcr.io/flyem-public/connectome-neuprint/neuprinthttp 1.2.2
  • nginx 1.19-alpine
neo4j/Dockerfile docker
  • neo4j 3.5.20 build
neuprinthttp/Dockerfile docker
  • golang 1.18 build
  • node 14 build
  • python 3.9-slim build
template/docker-compose.override.template.yml docker
  • neuprinthttp test
docker-compose-prod.yml docker