migueldnt / dataverse-docker

Experiments in running Dataverse in Docker

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

instalacion propia

Este fork contiene un par de modificaciones respecto al docker-compose-log.yml del repositorio original. Con dichas modificaciones es posible levantar los servicios con las siguientes lineas (teniendo ya instalado docker y docker-compose)

export traefikhost=localhost
export $(cat .env | xargs )
docker-compose -f docker-compose-local.yml up -d --build
#revisar http://dataverse-dev.localhost/
  • opcionalmente, para desactivar el DOI
# revisar si el contenedor se identifica como dataverse
docker exec -it dataverse bash
# ya dentro del contenedor
curl -X PUT -d FAKE http://localhost:8080/api/admin/settings/:DoiProvider
  • opcionalmente para asignar las cv-keywords que menciona la documentacion (aveces marca error, aun falta profundizar en el tema)
# una vez que http://dataverse-dev.localhost/ resuelva correctamente, mandar cv-keywords.json mediante curl:
curl -H "Content-Type: application/json" -X PUT --data-binary @cv-keywords.json http://dataverse-dev.localhost/api/admin/settings/:CVMConf

DataverseEU Docker module

Dataverse Docker module was developed by DANS (Data Archiving and Networked Services) to run Dataverse data repository on Kubernetes and other Cloud services supporting Docker. Current available version of Dataverse is 5.0. The development of Docker module funded by SSHOC project that will create the social sciences and humanities area of the European Open Science Cloud (EOSC).

Dataverse web interface localization

The localization of Dataverse was done in CESSDA DataverseEU and others projects. It's maintained by Global Dataverse Community Consortium and available for the following languages:

Installation

Dataverse Docker module v5.0 uses Træfik, a modern HTTP reverse proxy and load balancer that makes deploying microservices easy. Træfik integrates with your existing infrastructure components (Docker, Swarm mode, Kubernetes, Marathon, Consul, Etcd, Rancher, Amazon ECS, ...) and configures itself automatically and dynamically.

You need to specify the value of "traefikhost" and pub your domain name there (for example, sshopencloud.eu or just localhost) before you'll start to deploy Dataverse infrastructure:

export traefikhost=localhost OR export traefikhost=sshopencloud.eu

and create docker network for all the containers you would expose on the web

docker network create traefik

By default you'll get SSL certificate provided by letsencrypt, please specify your email address if you need https support, for example:

export useremail=team@mydataverse.org

  • Make sure you have docker and docker-compose installed
  • Run docker-compose up to start Dataverse on your domain name with SSL support or
  • run docker-compose up -f docker-compose-local.yml to try Dataverse on localhost

Standalone Dataverse should be running on dataverse-dev.localhost or dataverse-dev.sshopencloud.eu if you've selected the domain.

Default user/password: dataverseAdmin/admin and after you should change it.

If it's not coming up please check if all required containers are up: docker ps


CONTAINER ID        IMAGE                                 COMMAND                  CREATED              STATUS              PORTS                                          NAMES

3a30792b22fe        dockereu_dataverse                    "/opt/dv/entrypoint.b"   About a minute ago   Up About a minute   0.0.0.0:440->443/tcp, 0.0.0.0:8085->8080/tcp   dataverse

8903ffab7d79        dockereu_solr                         "/entrypoint.sh solr"    About a minute ago   Up About a minute   0.0.0.0:8985->8983/tcp                         solr

e652e204e6bb        dockereu_postgres                     "docker-entrypoint.sh"   14 minutes ago       Up About a minute   0.0.0.0:5435->5432/tcp                         db

Going from Docker Compose to Kubernetes

If you want to run Dataverse on Kubernetes please use this module

Warning

If not all languages are coming up in the same time please increase RAM for Docker (not less than 10Gb for 5 languages).

To Do

Health check support should be added to get Dataverse installation process from Docker more sustainable.

About

Experiments in running Dataverse in Docker


Languages

Language:HTML 78.5%Language:Shell 7.0%Language:Python 6.3%Language:Perl 4.2%Language:Dockerfile 4.0%