Sign inSign up

sennierer/apis

By sennierer

•Updated about 4 years ago

A(ustrian) Prosopographical Information System

Image
0

463

sennierer/apis repository overview

⁠A(ustrian) Prosopographical Information System (APIS)

APIS allows to manage entities, relate them to each other and export the data in various formats.

The highlights are:

  • Forms for editing entities and relate them to others
  • reuse of structured data from reference resources such as Geonames and GND, including configurable import of metadata
  • (basic) export of data in Json, TEI, RDF (CIDOC CRM) and IPIF
  • included network visualization. Allows to iteratively build a network and export it later on to Graphml for further analysis
  • a highlighter module that allows to annotate full texts

⁠Usage

Using docker-compose.yml something along the lines of should work:

version: '2'


services:
        web:
            image: sennierer/apis:latest
            environment:
                - APIS_PROJECT=apis_test #as used in the apis-settings repo
                - APIS_DB_NAME=testdb 
                - APIS_DB_USER=testuser
                - APIS_DB_PASSWORD=testpwd
                - APIS_DB_HOST=database
                - APIS_DB_PORT=3306
                - APIS_AUTO_CREATE_DB=1 
                # and more e.g. APIS_DB_PORT >> apis-webpage-base/apis/settings/base.py
            container_name: apis_core_apis_test #use apis_core_$APIS_PROJECT, e.g. apis_core_mpr
            command: sh /start-apis/start-apis/start.sh 
            volumes:           
                    - config-volume:/config-apis    
                    - staticfiles-volume:/apis/apis-webpage-base/staticfiles
              - backend
            depends_on:
              - database
        
        database:
            image: mysql:5.7
            command: --default-authentication-plugin=mysql_native_password
            restart: always
            environment:
                    - MYSQL_ROOT_PASSWORD=rootpwd
                    - MYSQL_DATABASE=testdb
                    - MYSQL_USER=testuser
                    - MYSQL_PASSWORD=testpwd
            networks:
                    - backend
        nginx:
            image: nginx:latest
            container_name: ngx_apis_apis_test #use ngx_apis_$PROJECT_NAME, e.g, ngx_apis_mpr
            environment:
                - APIS_PROJECT=apis_test
                - APIS_SERVER_NAME=localhost #as used in the apis-settings repo >> needs to be present in both images
            volumes:
                - config-volume:/config-apis    
                - staticfiles-volume:/staticfiles  
            ports:
                    - "8080:81"
            depends_on:
                    - web
            networks:
                - backend
            command: /bin/bash -c "envsubst '$${APIS_PROJECT},$${APIS_SERVER_NAME}' < /config-apis/start-apis/nginx/nginx.template > /etc/nginx/conf.d/default.conf && exec nginx -g 'daemon off;'"
networks:
  backend:
    driver: bridge

volumes:
  config-volume:
          driver: local
  staticfiles-volume:
          driver: local

Start the containers with:

docker-compose up

To get access to the application you need to create an admin user:

docker exec -it apis_core_apis_test python /apis/apis-webpage-base/manage.py createsuperuser --settings=apis.settings.server

Then point your brobser to http://localhost:8080⁠ and you should have access to the app

Tag summary

Content type

Image

Digest

Size

579.3 MB

Last updated

about 4 years ago

docker pull sennierer/apis