Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple build options #21

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,9 @@
*~
runtime-tdb/home/rdf
runtime-tdb/solr/vivocore
runtime-tdb/home/tdbContentModels
*/home
*/tdbContentModels
*.war



37 changes: 37 additions & 0 deletions build-sdb/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
version: '3'
services:
mariadb:
environment:
- MYSQL_USER=vitrodbUsername
- MYSQL_PASSWORD=vitrodbPassword
- MYSQL_ROOT_PASSWORD=rootPassword
- MYSQL_ROOT_HOST=%
- TZ=America/Chicago
build:
context: ./mariadb
volumes:
- maria-data:/var/lib/mysql
ports:
- 3306:3306

solr:
build:
context: ./solr
ports:
- 8983:8983
volumes:
- solr-data:/opt/solr/server/solr/ckan/data
command: solr-create -c vivocore -d /opt/vivocore

vivo:
build:
context: ./vivo
volumes:
- ./example-config:/usr/local/vivo/home/config
ports:
- 8080:8080


volumes:
solr-data:
maria-data:
140 changes: 140 additions & 0 deletions build-sdb/example-config/applicationSetup.n3
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
# ------------------------------------------------------------------------------
#
# This file specifies the structure of the Vitro application: which modules
# are used, and what parameters they require.
#
# Most Vitro installations will not need to modify this file.
#
# For most installations, only the settings in the runtime.properties file will
# be changed.
#
# ------------------------------------------------------------------------------

@prefix : <http://vitro.mannlib.cornell.edu/ns/vitro/ApplicationSetup#> .
@prefix vitroWebapp: <java:edu.cornell.mannlib.vitro.webapp#> .

# ----------------------------
#
# Describe the application by its implementing class and by references to the
# modules it uses.
#

:application
a vitroWebapp:application.ApplicationImpl ,
vitroWebapp:modules.Application ;
:hasSearchEngine :instrumentedSearchEngineWrapper ;
:hasSearchIndexer :basicSearchIndexer ;
:hasImageProcessor :iioImageProcessor ;
:hasFileStorage :ptiFileStorage ;
:hasContentTripleSource :sdbContentTripleSource ;
:hasConfigurationTripleSource :tdbConfigurationTripleSource ;
:hasTBoxReasonerModule :jfactTBoxReasonerModule .

# ----------------------------
#
# Image processor module:
#

:iioImageProcessor
a vitroWebapp:imageprocessor.imageio.IIOImageProcessor ,
vitroWebapp:modules.imageProcessor.ImageProcessor .

# ----------------------------
#
# File storage module:
# The PairTree-inspired implementation is the only standard option.
# It requires no parameters.
#

:ptiFileStorage
a vitroWebapp:filestorage.impl.FileStorageImplWrapper ,
vitroWebapp:modules.fileStorage.FileStorage .

# ----------------------------
#
# Search engine module:
# The Solr-based implementation is the only standard option, but it can be
# wrapped in an "instrumented" wrapper, which provides additional logging
# and more rigorous life-cycle checking.
#

:instrumentedSearchEngineWrapper
a vitroWebapp:searchengine.InstrumentedSearchEngineWrapper ,
vitroWebapp:modules.searchEngine.SearchEngine ;
:wraps :solrSearchEngine .

:solrSearchEngine
a vitroWebapp:searchengine.solr.SolrSearchEngine ,
vitroWebapp:modules.searchEngine.SearchEngine .

# ----------------------------
#
# Search indexer module:
# There is only one standard implementation. You must specify the number of
# worker threads in the thread pool.
#

:basicSearchIndexer
a vitroWebapp:searchindex.SearchIndexerImpl ,
vitroWebapp:modules.searchIndexer.SearchIndexer ;
:threadPoolSize "10" .

# ----------------------------
#
# Content triples source module: holds data contents
# The SDB-based implementation is the default option. It reads its parameters
# from the runtime.properties file, for backward compatibility.
#
# Other implementations are based on a local TDB instance, a "standard" SPARQL
# endpoint, or a Virtuoso endpoint, with parameters as shown.
#

:sdbContentTripleSource
a vitroWebapp:triplesource.impl.sdb.ContentTripleSourceSDB ,
vitroWebapp:modules.tripleSource.ContentTripleSource .

#:tdbContentTripleSource
# a vitroWebapp:triplesource.impl.tdb.ContentTripleSourceTDB ,
# vitroWebapp:modules.tripleSource.ContentTripleSource ;
# # May be an absolute path, or relative to the Vitro home directory.
# :hasTdbDirectory "tdbContentModels" .

#:sparqlContentTripleSource
# a vitroWebapp:triplesource.impl.sparql.ContentTripleSourceSPARQL ,
# vitroWebapp:modules.tripleSource.ContentTripleSource ;
# # The URI of the SPARQL endpoint for your triple-store.
# :hasEndpointURI "PUT_YOUR_SPARQL_ENDPOINT_URI_HERE" ;
# # The URI to use for SPARQL UPDATE calls against your triple-store.
# :hasUpdateEndpointURI "PUT_THE UPDATE_URI_HERE" .

#:virtuosoContentTripleSource
# a vitroWebapp:triplesource.impl.virtuoso.ContentTripleSourceVirtuoso ,
# vitroWebapp:modules.tripleSource.ContentTripleSource ;
# # The URI where Virtuoso can be accessed: don't include the /sparql path.
# :hasBaseURI "http://localhost:8890" ;
# # The name and password of a Virtuoso account that has the SPARQL_UPDATE role.
# :hasUsername "USERNAME" ;
# :hasPassword "PASSWORD" .


# ----------------------------
#
# Configuration triples source module: holds configuration data and user accounts
# The TDB-based implementation is the only standard option.
# It requires no parameters.
#

:tdbConfigurationTripleSource
a vitroWebapp:triplesource.impl.tdb.ConfigurationTripleSourceTDB ,
vitroWebapp:modules.tripleSource.ConfigurationTripleSource .

# ----------------------------
#
# TBox reasoner module:
# The JFact-based implementation is the only standard option.
# It requires no parameters.
#

:jfactTBoxReasonerModule
a vitroWebapp:tboxreasoner.impl.jfact.JFactTBoxReasonerModule ,
vitroWebapp:modules.tboxreasoner.TBoxReasonerModule .
Loading