Dataverse Docker v5.8
Будем делать продакшн установку взамен локальной тестовой версии.
Останавливаем и удаляем старую версию
docker stop $(docker ps -a -f status=exited -q) docker rm $(docker ps -a -f status=exited -q) docker network prune docker network rm traefik systemctl stop docker docker.socket systemctl start docker
Устанавливаем DOCKER-DATAVERSE v5.8:
cd /opt && git clone https://github.com/IQSS/dataverse-docker
Заполняем параметры в файле .env:
# DOI parameters # https://guides.dataverse.org/en/latest/installation/config.html#doi-baseurlstring doi_authority=doi_authority doi_provider=doi_provider doi_username=doi_username doi_password=doi_password
Также пароль от DataCite нужно добавить здесь:
dataverse-docker/secrets/doi/password
Поочередно вводим в консоли:
export traefikhost=www.mydataverse.org docker network create traefik export useremail=dataverse@mydataverse.org docker-compose -f docker-compose.yml up
Проверяем
docker ps
Скачиваем и копируем внутрь контейнера фалы с переводом и перезагружаем контейнер:
wget --content-disposition https://seafile.tst-amo.net.ua/f/fcd8a4e2655b4d53871e/?dl=1 docker cp Bundle_ua.properties 39fff6bf2ccf:/opt/payara/appserver/glassfish/domains/domain1/applications/dataverse/WEB-INF/classes/propertyFiles/ wget --content-disposition https://seafile.tst-amo.net.ua/f/0c6340ef0b934e7f9419/?dl=1 docker cp BuiltInRoles_ua.properties 39fff6bf2ccf:/opt/payara/appserver/glassfish/domains/domain1/applications/dataverse/WEB-INF/classes/propertyFiles/ wget --content-disposition https://seafile.tst-amo.net.ua/f/7c20a484f66c400da88a/?dl=1 docker cp citation_ua.properties 39fff6bf2ccf:/opt/payara/appserver/glassfish/domains/domain1/applications/dataverse/WEB-INF/classes/propertyFiles/ docker exec -it 39fff6bf2ccf bash curl http://localhost:8080/api/admin/settings/:Languages -X PUT -d '[{"locale":"en","title":"English"},{"locale":"ua","title":"Українська"}]' curl http://localhost:8080/api/admin/settings/:MetadataLanguages -X PUT -d '[{"locale":"en","title":"English"},{"locale":"ua","title":"Українська"}]'
Прописываем значения для Protocol и Shoulder:
curl -X PUT -d doi http://localhost:8080/api/admin/settings/:Protocol curl -X PUT -d "DVUA/" http://localhost:8080/api/admin/settings/:Shoulder
Генерировать DOI только для Dataset:
curl -X PUT -d 'false' http://localhost:8080/api/admin/settings/:FilePIDsEnabled
Почта:
curl -X PUT -d "dataverse@mydataverse.org" http://localhost:8080/api/admin/settings/:SystemEmail
Добавить под годом с авторским правом:
curl -X PUT -d "</p><p>Supported by the National Academy of Sciences of Ukraine</p>" http://localhost:8080/api/admin/settings/:FooterCopyright
Если нужно удалить:
curl -X DELETE http://localhost:8080/api/admin/settings/:FooterCopyright
Перегружаем
docker exec -it ID /opt/payara/appserver/bin/./asadmin restart-domain
Стартуем контейнер с docker dataverse:
docker ps
docker start ID
Проверяем прописанные опции:
curl http://localhost:8080/api/admin/settings/:Protocol curl http://localhost:8080/api/admin/settings/:DoiProvider curl http://localhost:8080/api/admin/settings/:Authority curl http://localhost:8080/api/admin/settings/:Shoulder curl http://localhost:8080/api/admin/settings/:SystemEmail
В Докере правим линк (Что бы можно было загружать логотипы dataverse):
/opt/payara/appserver/glassfish/domains/domain1/docroot на /opt/payara/docroot/logos
Configuring / Troubleshooting Mail Host
/opt/payara/appserver/bin/./asadmin delete-javamail-resource mail/notifyMailSession
/opt/payara/appserver/bin/./asadmin create-javamail-resource --mailhost [smtp.google.com] --mailuser [dataverse@kau.edu.ua] --fromaddress [dataverse@kau.edu.ua] --property mail.smtp.auth=[true]:mail.smtp.password=[*********]:mail.smtp.port=[587]:mail.smtp.socketFactory.port=[587]:mail.smtp.socketFactory.fallback=[false]:mail.smtp.socketFactory.class=[javax.net.ssl.SSLSocketFactory] mail/notifyMailSession
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fa727beadf8f coronawhy/dataverse:5.10 "/tini -- /bin/sh -c…" About an hour ago Up About an hour 0.0.0.0:4848->4848/tcp, :::4848->4848/tcp, 8181/tcp, 0.0.0.0:8009->8009/tcp, :::8009->8009/tcp, 9009/tcp, 0.0.0.0:8088->8080/tcp, :::8088->8080/tcp dataverse
d4b83af11948 coronawhy/solr:8.9.0 "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:8983->8983/tcp, :::8983->8983/tcp solr
bf0478c288cd containous/whoami "/whoami" About an hour ago Up About an hour 80/tcp whoami
38d7151cb7cb postgres:10.13 "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:5433->5432/tcp, :::5433->5432/tcp postgres
ce83792a3abd minio/minio:RELEASE.2021-12-10T23-03-39Z "/usr/bin/docker-ent…" About an hour ago Up About an hour 9000/tcp, 0.0.0.0:9016-9017->9016-9017/tcp, :::9016-9017->9016-9017/tcp minio
92c8fa3730a2 traefik:v2.2 "/entrypoint.sh --ap…" About an hour ago Up About an hour 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp traefik