monarch-initiative / monarch-ingest

Data ingest application for Monarch Initiative knowledge graph using Koza
https://monarchinitiative.org
15 stars 2 forks source link

Create docker compose configuration and scripts for neo4j #357

Closed kevinschaper closed 1 year ago

kevinschaper commented 2 years ago

We need to convert the un-dockerized neo4j 3.4 on scigraph.ncats.io to something that's easier to manage.

@falquaddoomi was super helpful in suggesting a docker compose config config & shell script as a starting place:

docker-compose.yml

version: '3.8'

volumes:
  neo4j-data:

services:
  nginx:
    image: nginx:latest
    ports:
      - 80:80
      - 443:443
    depends_on:
      - neo4j
  neo4j:
    image: neo4j:4.4
    environment:
      - DO_LOAD=1
    volumes:
      - neo4j-data:/data
      - ./dumps:/dumps
      - ./scripts:/scripts
    entrypoint: /scripts/load_and_boot.sh

load_and_boot.sh

#!/bin/bash

[ ${DO_LOAD} -eq 1 ] && neo4j-admin load /dumps/db.dump
tini -g -- /startup/docker-entrypoint.sh
RichardBruskiewich commented 1 year ago

@kevinschaper, I'm generally comfortable with the task itself in terms of my knowledge (AWS, docker, neo4j, kg's, Monarch, etc.).

I'll want to better understand where this particular artifact/resource sits within the wider Monarch QC / publication landscape. Perhaps we can briefly summarize the specific rationale and characteristics the resource has and/or needs to serve: target use cases, intended users, intended life cycle of maintenance: schedule of push/pull (with Monarch data); notifications to users, etc.

Maybe I'm overly complicating things... but just clarifying customer acceptance of the solution.

RichardBruskiewich commented 1 year ago

The code resolving this issue was moved out of Monarch Ingest and into a new (standalone) repository at https://github.com/monarch-initiative/monarch-neo4j