diff --git a/docs/contact.md b/docs/contact.md index c7038307baebd17887e90aef4defc901cc74c1d8..b29bafaf2e764df30193d9abcd0b4ae8aa8fc42c 100644 --- a/docs/contact.md +++ b/docs/contact.md @@ -8,7 +8,7 @@ hide: ## Team -### Project Management +### Strategy & Partnerships Ao.univ.Prof. Dr. [Andreas Rauber](https://www.ifs.tuwien.ac.at/~andi)<br /> Technische Universität Wien<br /> @@ -16,7 +16,7 @@ Research Unit Data Science<br /> Favoritenstraße 9-11<br /> A-1040 Vienna, Austria -### Development +### Technical Lead Projektass. Dipl.-Ing. [Martin Weise](https://ec.tuwien.ac.at/~weise/)<br /> Technische Universität Wien<br /> @@ -31,6 +31,7 @@ A-1040 Vienna, Austria - Güçlü, Gökay - Grantner, Tobias - Karnbach, Geoffrey +- Lukic, Nikola - Mahler, Lukas - Michlits, Cornelia - Rauber, Andreas diff --git a/docs/index.md b/docs/index.md index eb2d6e0110e0c7dcd08cdb9d6f0a95eb0b85a368..79c657b4d9cfe98fd1804379486c7b1ebf8822bb 100644 --- a/docs/index.md +++ b/docs/index.md @@ -32,5 +32,5 @@ These institutions use DBRepo and integrated it into their repository infrastruc ## More Information - Demonstration instance [https://dbrepo1.ec.tuwien.ac.at](https://dbrepo1.ec.tuwien.ac.at) -- Sandbox instance [https://dbrepo2.ec.tuwien.ac.at](https://dbrepo2.ec.tuwien.ac.at) +- Sandbox instance [https://test.dbrepo.tuwien.ac.at](https://dbrepo2.ec.tuwien.ac.at) - System description [https://doi.org/10.2218/ijdc.v17i1.825](https://doi.org/10.2218/ijdc.v17i1.825) diff --git a/docs/system-databases-auth.md b/docs/system-databases-auth.md index e8de96ce5df1d9a9027f4e31e2b35af15ded0d78..c368151a4c7fab0c78c1c6555003ca35efc15f92 100644 --- a/docs/system-databases-auth.md +++ b/docs/system-databases-auth.md @@ -8,16 +8,25 @@ author: Martin Weise !!! debug "Debug Information" - * Ports: 3306/tcp, 9100/tcp - * Prometheus: `http://:9100/metrics` + Image: [`bitnami/mariadb:10.5`](https://hub.docker.com/r/bitnami/mariadb) + + * Ports: 3306/tcp + * JDBC: `jdbc://mariadb:<hostname>:3306` ## Overview -tbd +This is the database in which the [Authentication Service](../system-services-authentication) writes into. In the +default configuration, only MariaDB is supported. ## Limitations -(none) +* No support for MariaDB Galera at the moment. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-databases-data.md b/docs/system-databases-data.md index c3c098755b323a39dd1c73cc1bc6a0e693460bf3..e3e08ce041307ab43fafb6d2f5f78ac64c6b232c 100644 --- a/docs/system-databases-data.md +++ b/docs/system-databases-data.md @@ -8,17 +8,52 @@ author: Martin Weise !!! debug "Debug Information" - * Ports: 3306/tcp, 9100/tcp - * Prometheus: `http://:9100/metrics` + Image: [`bitnami/mariadb:10.5`](https://hub.docker.com/r/bitnami/mariadb) + + * Ports: 3306/tcp + * JDBC: `jdbc://mariadb:<hostname>:3306` ## Overview -It is the core component of the project. +By default, only one Data Database is deployed. You can deploy multiple (different) Data Database instances and make +them available in the repository as follows: + +```console +curl \ + -sSL \ + http://<hostname>:9093/api/container \ + -X POST \ + -d '{"name": "Data Database 2", "imageId": 1, "host": "example.com", "port": 3306, "privilegedUsername": "root", "privilegedPassword": "s3cr3t" }' +``` + +### Backup + +```console +mysqldump \ + -u <privilegedUsername> \ + -p<privilegedPassword> \ + <databaseInternalName> > dump.sql +``` + +### Restore + +```console +mysql \ + -u <privilegedUsername> \ + -p<privilegedPassword> \ + <databaseInternalName> < dump.sql +``` ## Limitations (none) +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! + ## Security (none) diff --git a/docs/system-databases-metadata.md b/docs/system-databases-metadata.md index 36c66b3dbc15ddeda50c0fd2a4f82cbf06048e51..1cfcf69885006ca8ed560142fd4103ab5eb92bc0 100644 --- a/docs/system-databases-metadata.md +++ b/docs/system-databases-metadata.md @@ -8,8 +8,10 @@ author: Martin Weise !!! debug "Debug Information" - * Ports: 3306/tcp, 9100/tcp - * Prometheus: `http://:9100/metrics` + Image: [`bitnami/mariadb:10.5`](https://hub.docker.com/r/bitnami/mariadb) + + * Ports: 3306/tcp + * JDBC: `jdbc://mariadb:<hostname>:3306` It is the core component of the project. It is a relational database that contains metadata about all researcher database created in the database repository like column names, check expressions, value enumerations or key/value @@ -24,6 +26,12 @@ port `3306`. (none) +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! + ## Security (none) diff --git a/docs/system-databases-search.md b/docs/system-databases-search.md index bc3f1d73cc36756baa09da66b508b40d76c417bd..ecabcaf6f18f770546a496ccc6aad117f68e090a 100644 --- a/docs/system-databases-search.md +++ b/docs/system-databases-search.md @@ -8,6 +8,8 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/search-db:latest`](https://hub.docker.com/r/dbrepo/search-db) + * Ports: 9200/tcp * Indexes: `http://:9200/_all` * Health: `http://:9200/_cluster/health` @@ -28,6 +30,12 @@ Database more efficient. (none) +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! + ## Security 1. Change the default credentials in the [Search Database Dashboard](../system-other-search-dashboard) with the default diff --git a/docs/system-other-search-dashboard.md b/docs/system-other-search-dashboard.md index 402fcf3c5cb97856864eb4d8e194cc5568203a6a..a2ac309560e7cb6bf987c8f11ad0e7cdbd53b78e 100644 --- a/docs/system-other-search-dashboard.md +++ b/docs/system-other-search-dashboard.md @@ -8,6 +8,8 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`opensearchproject/opensearch-dashboards:2.10.0`](https://hub.docker.com/r/opensearchproject/opensearch-dashboards) + * Ports: 5601/tcp * UI: `http://:5601/admin/dashboard/` diff --git a/docs/system-other-ui.md b/docs/system-other-ui.md index c3bb4fbb6c561d1b2524bc64aa56ce7315320891..abe0e22b2413e8835b3701aaf582d4761722ff68 100644 --- a/docs/system-other-ui.md +++ b/docs/system-other-ui.md @@ -8,6 +8,8 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/ui:latest`](https://hub.docker.com/r/dbrepo/ui) + * Ports: 3000/tcp, 9100/tcp * Prometheus: `http://:9100/metrics` * UI: `http://:3000/` diff --git a/docs/system-services-analyse.md b/docs/system-services-analyse.md index e67e4f90920b17c24f75ea39fadc726c9f7e38b9..04f2a533d74aa24b3150fb67e1d33168a6e3ae4c 100644 --- a/docs/system-services-analyse.md +++ b/docs/system-services-analyse.md @@ -4,13 +4,34 @@ author: Martin Weise # Analyse Service +## tl;dr + !!! debug "Debug Information" + Image: [`dbrepo/analyse-service:latest`](https://hub.docker.com/r/dbrepo/analyse-service) + * Ports: 5000/tcp - * Prometheus: `http://:5000/metrics` - * Swagger UI: `http://:5000/swagger-ui/index.html` <a href="../swagger/analyse" target="_blank">:fontawesome-solid-square-up-right: view online</a> + * Prometheus: `http://<hostname>:5000/metrics` + * Health: `http://<hostname>:5000/health` + * Swagger UI: `http://<hostname>:5000/swagger-ui/index.html` <a href="../swagger/analyse" target="_blank">:fontawesome-solid-square-up-right: view online</a> + +## Overview It suggests data types for the FAIR Portal when creating a table from a *comma separated values* (CSV) file. It recommends enumerations for columns and returns e.g. a list of potential primary key candidates. The researcher is able to confirm these suggestions manually. Moreover, the *Analyze Service* determines basic statistical properties of numerical columns. + +## Limitations + +* No support for authentication + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! + +## Security + +1. Since authentication is not supported, use IP-based ingress rules to limit access to the upload endpoint. diff --git a/docs/system-services-authentication.md b/docs/system-services-authentication.md index 2c39395f329052a95f4acb9fe76280844f9b5f3c..64bc61120d1ca7c6e79cdcf8a85ad6d7fb7de390 100644 --- a/docs/system-services-authentication.md +++ b/docs/system-services-authentication.md @@ -8,36 +8,22 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/authentication-service:latest`](https://hub.docker.com/r/dbrepo/authentication-service) + * Ports: 8080/tcp - * Admin Console: `http://:8080/api/auth/admin/` - * Health: `http://:8080/api/auth/health` - * Prometheus: `http://:8080/api/auth/metrics` + * Admin Console: `http://<hostname>:8080/api/auth/admin/` + * Health: `http://<hostname>:8080/api/auth/health` + * Prometheus: `http://<hostname>:8080/api/auth/metrics` ## Overview -Very specific to the deployment of the organization. In our reference implementation we implement a *security assertion -markup language* (SAML) service provider and use our institutional SAML identity provider for obtaining account data -through an encrypted channel. - -From version 1.2 onwards we use Keycloak for authentication and deprecated the previous Spring Boot application. -Consequently, the authentication will be through Keycloak. - -By default, the Authentication Service comes with a self-signed certificate valid 3 months from build date. For -deployment it is *highly encouraged* to use your own certificate, properly issued by a trusted PKI, e.g. GÉANT. For -local deployments you can use the self-signed certificate. You need to accept the risk in most browsers when visiting -the [admin panel](https://localhost:8443/admin/). - -Sign in with the default credentials (username `fda`, password `fda`) or the one you configured during set-up. Be -default, users are created using the frontend and the sign-up page. But it is also possible to create users from -Keycloak, they will still act as "self-sign-up" created users. Since we do not support all features of Keycloak, leave -out required user actions as they will not be enforced, also the temporary password. +From version 1.2 onwards we use Keycloak for authentication for managing a part of the user identity and deprecated the +Spring Boot application instead. Going forward, the authentication will be +through [Keycloak by RedHat](https://quay.io/repository/keycloak/keycloak?tab=info). -Each user has attributes associated to them. In case you manually create a user in Keycloak directly, you need to add -them in Users > Add user > Attributes: - -* `theme_dark` (*boolean*, default: false) -* `orcid` (*string*) -* `affiliation` (*string*) +By default, users are created using the [UI](../system-other-ui) and the sign-up page in the UI. A new user is also +created in the UI creates a new user in the [Auth Database](../system-databases-auth), consequently a part of the +user identity is managed by Keycloak. ## Groups @@ -80,10 +66,8 @@ public ResponseEntity<DatabaseBriefDto> create(@NotNull Long containerId, | Name | Description | |--------------------------|--------------------------------------| -| `create-container` | Can create a container | | `find-container` | Can find a specific container | | `list-containers` | Can list all containers | -| `modify-container-state` | Can start and stop the own container | ### Default Database Handling @@ -171,10 +155,10 @@ public ResponseEntity<DatabaseBriefDto> create(@NotNull Long containerId, ### Escalated Container Handling -| Name | Description | -|----------------------------------|----------------------------------------------| -| `delete-container` | Can delete any container | -| `modify-foreign-container-state` | Can modify any container state (start, stop) | +| Name | Description | +|--------------------|--------------------------| +| `create-container` | Can create a container | +| `delete-container` | Can delete any container | ### Escalated Database Handling @@ -216,9 +200,15 @@ public ResponseEntity<DatabaseBriefDto> create(@NotNull Long containerId, ## Limitations -* No support for sending e-mails through Keycloak -* No support for temporary passwords -* No support for multi-factor authentication +* No support for sending e-mails through Keycloak by default. +* No support for temporary passwords. +* No support for multi-factor authentication. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-services-broker.md b/docs/system-services-broker.md index 04ec39c3e05d60f999d1606a3f937acf75bd619f..ff259c461506ee423f2d4248cc6e622a87b79629 100644 --- a/docs/system-services-broker.md +++ b/docs/system-services-broker.md @@ -8,9 +8,12 @@ author: Martin Weise !!! debug "Debug Information" - * Ports: 5672/tcp, 15672/tcp - * RabbitMQ Management Plugin: `http://:15672` - * RabbitMQ Prometheus Plugin: `http://:15692/metrics` + Image: [`bitnami/rabbitmq:3.10`](https://hub.docker.com/r/bitnami/rabbitmq) + + * Ports: 5672/tcp, 15672/tcp, 15692/tcp + * AMQP: `amqp://<hostname>:5672` + * Management: `http://<hostname>:15672` + * Prometheus: `http://<hostname>:15692/metrics` ## Overview @@ -34,7 +37,14 @@ the [usage](/usage-broker) page. ## Limitations -* No support for MQTT. +* No support for MQTT in the [Metadata Service](../system-services-metadata) + and [Data Service](../system-services-data) because of MQTT's missing permission system. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-services-data.md b/docs/system-services-data.md index 60914a817dadafe2cc2f88c6a5fad4383273229c..b0d0e38e20139702a54937b2142528b6169c9246 100644 --- a/docs/system-services-data.md +++ b/docs/system-services-data.md @@ -8,11 +8,15 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/data-service:latest`](https://hub.docker.com/r/dbrepo/data-service) + * Ports: 9093/tcp - * Info: `http://:9093/actuator/info` - * Health: `http://:9093/actuator/health` - * Prometheus: `http://:9093/actuator/prometheus` - * Swagger UI: `http://:9093/swagger-ui/index.html` <a href="../swagger/data" target="_blank">:fontawesome-solid-square-up-right: view online</a> + * Info: `http://<hostname>:9093/actuator/info` + * Health: `http://<hostname>:9093/actuator/health` + - Readiness: `http://<hostname>:9093/actuator/health/readiness` + - Liveness: `http://<hostname>:9093/actuator/health/liveness` + * Prometheus: `http://<hostname>:9093/actuator/prometheus` + * Swagger UI: `http://<hostname>:9093/swagger-ui/index.html` <a href="../swagger/data" target="_blank">:fontawesome-solid-square-up-right: view online</a> ## Overview @@ -22,7 +26,13 @@ Data Service up. ## Limitations -(none) +* No clear differentiation for data-handling endpoints from the [Metadata Service](../system-services-metadata) yet. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-services-gateway.md b/docs/system-services-gateway.md index fbe1ee828b5ed803626b0ef02490a7212408bbb6..ee8486590c5c0f3cec4da42faa73c5c5096af626 100644 --- a/docs/system-services-gateway.md +++ b/docs/system-services-gateway.md @@ -8,6 +8,8 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`nginx:1.25-alpine-slim`](https://hub.docker.com/r/nginx) + * Ports: 80/tcp, 443/tcp ## Overview @@ -17,7 +19,7 @@ standard [NGINX](https://www.nginx.com/) reverse proxy for load balancing, SSL/T ## Limitations -(none) +(none relevant to DBRepo) ## Security diff --git a/docs/system-services-metadata.md b/docs/system-services-metadata.md index 74f9d65b5c587618cc53a671bbcb227882e75710..d020c9b0cd775226e3e9f324d69cace44b721921 100644 --- a/docs/system-services-metadata.md +++ b/docs/system-services-metadata.md @@ -8,45 +8,82 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/metadata-service:latest`](https://hub.docker.com/r/dbrepo/metadata-service) + * Ports: 9099/tcp - * Info: `http://:9099/actuator/info` - * Health: `http://:9099/actuator/health` - * Readiness: `http://:9099/actuator/health/readiness` - * Liveness: `http://:9099/actuator/health/liveness` - * Prometheus: `http://:9099/actuator/prometheus` - * Swagger UI: `http://:9099/swagger-ui/index.html` <a href="../swagger/metadata" target="_blank">:fontawesome-solid-square-up-right: view online</a> + * Info: `http://9093:9099/actuator/info` + * Health: `http://9093:9099/actuator/health` + - Readiness: `http://9093:9099/actuator/health/readiness` + - Liveness: `http://9093:9099/actuator/health/liveness` + * Prometheus: `http://9093:9099/actuator/prometheus` + * Swagger UI: `http://9093:9099/swagger-ui/index.html` <a href="../swagger/metadata" target="_blank">:fontawesome-solid-square-up-right: view online</a> ## Overview -This microservice manages: +This service manages the following topics: * Databases -* Users -* Metadata (PID, OAI-PMH) -* Queries, views +* Identifiers (DataCite, OAI-PMH) +* Queries +* Semantics (Ontologies) * Tables +* Users +* Views + +### Databases + +The service handles table operations inside a database. We use [Hibernate](https://hibernate.org/orm/) for schema and +data ingest operations. -It creates the databases inside a Docker container and the Query Store. Currently, we only -support [MariaDB](https://mariadb.org/) images that allow table versioning with low programmatic effort. +### Identifiers -This microservice is responsible for creating and resolving a *persistent identifier* (PID) attached to a query to +The service is responsible for creating and resolving a *persistent identifier* (PID) attached to a query to obtain the metadata attached to it and allow re-execution of a query. We store both the query and hashes of the query and result set to allow equality checks of the originally obtained result set and the currently obtained result set. In the reference implementation we currently only use a numerical id column and plan to integrate *digital object identifier* (DOI) through our institutional library soon. -This service provides an OAI-PMH endpoint for metadata crawler. +This service provides an OAI-PMH endpoint for metadata aggregators. + +### Queries + +It provides an interface to insert data into the tables. It also allows for view-only, paginated and versioned query +execution to the raw data. + +### Semantics + +The service provides metadata to the table columns in the [Metadata Database](../system-databases-metadata) from +registered ontologies like Wikidata [`wd:`](https://wikidata.org), Ontology of Units of +Measurement [`om2:`](https://www.ontology-of-units-of-measure.org/resource/om-2), Friend of a +Friend [`foaf:`](http://xmlns.com/foaf/0.1/), the [`prov:`](http://www.w3.org/ns/prov#) namespace, etc. -It provides an interface to insert data into the tables created by the Table Service. It also allows for view-only, -paginated and versioned query execution to the raw data and consumes messages in the message queue from the Broker -Service. -This microservice handles table operations inside a database that is managed by the Database Service. We -use [Hibernate](https://hibernate.org/orm/) for schema and data ingest operations. +### Tables + +The service manages tables in the [Data Database](../system-databases-data) and manages the metadata of these tables +in the [Metadata Database](../system-databases-metadata). + +### Users + +The service manages users in the [Data Database](../system-databases-data) +and [Metadata Database](../system-databases-metadata), as well as in the [Broker Service](../system-services-broker) +and the [Authentication Service](../system-services-authentication). + +### Views + +The service manages views in the [Data Database](../system-databases-data) +and [Metadata Database](../system-databases-metadata). ## Limitations -(none) +* No support for other databases than [MariaDB](https://mariadb.org/) because of system-versioning capabilities missing + in other database engines. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-services-mirror.md b/docs/system-services-mirror.md index e7514e81dc4f66543b3d1fdae08b86d15895c472..94cd66f723fbd39e4ea958d0928759b7fcb0f97d 100644 --- a/docs/system-services-mirror.md +++ b/docs/system-services-mirror.md @@ -8,15 +8,21 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/mirror-service:latest`](https://hub.docker.com/r/dbrepo/mirror-service) + * Ports: 9050/tcp - * Info: `http://:9050/actuator/info` - * Health: `http://:9050/actuator/health` - * Prometheus: `http://:9050/actuator/prometheus` - * Swagger UI: `http://:9050/swagger-ui/index.html` <a href="../swagger/mirror" target="_blank">:fontawesome-solid-square-up-right: view online</a> + * Info: `http://<hostname>:9050/actuator/info` + * Health: `http://<hostname>:9050/actuator/health` + - Readiness: `http://<hostname>:9050/actuator/health/readiness` + - Liveness: `http://<hostname>:9050/actuator/health/liveness` + * Prometheus: `http://<hostname>:9050/actuator/prometheus` + * Swagger UI: `http://<hostname>:9050/swagger-ui/index.html` <a href="../swagger/mirror" target="_blank">:fontawesome-solid-square-up-right: view online</a> ## Overview -This service mirrors relevant table from the Metadata DB into the Search DB: +This service is responsible for synchronizing the [Metadata Database](../system-databases-metadata) with +the [Search Database](../system-databases-search) and the user permissions of databases, tables, etc. with +the [Broker Service](../system-services-broker). | Metadata DB | ↦ | Search DB | |---------------------|:-------:|---------------| @@ -31,7 +37,15 @@ This service mirrors relevant table from the Metadata DB into the Search DB: ## Limitations -(none) +* No support for cron-job like execution. +* No support for conditional updates in the [Search Database](../system-databases-search), updates occur in defined + intervals. + +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! ## Security diff --git a/docs/system-services-upload.md b/docs/system-services-upload.md index 10636f02e8ad60b11ee1d8bb124c9232890d45c1..ab5c8f991482acb6b3fc6d323bdefcf6133a3b2a 100644 --- a/docs/system-services-upload.md +++ b/docs/system-services-upload.md @@ -8,9 +8,11 @@ author: Martin Weise !!! debug "Debug Information" + Image: [`dbrepo/upload-service:latest`](https://hub.docker.com/r/dbrepo/upload-service) + * Ports: 1080/tcp - * TUS: `http://:1080/api/upload/files` - * Prometheus: `http://:1080/metrics` + * TUS: `http://<hostname>:1080/api/upload/files` + * Prometheus: `http://<hostname>:1080/metrics` * Swagger UI: <a href="../swagger/upload" target="_blank">:fontawesome-solid-square-up-right: view online</a> ## Overview @@ -31,6 +33,12 @@ For more information, see the [official Docker image](https://hub.docker.com/r/t * No support for authentication +!!! question "Do you miss functionality? Do these limitations affect you?" + + We strongly encourage you to help us implement it as we are welcoming contributors to open-source software and get + in [contact](../contact) with us, we happily answer requests for collaboration with attached CV and your programming + experience! + ## Security 1. Since authentication is not supported, use IP-based ingress rules to limit access to the upload endpoint. diff --git a/mkdocs.yml b/mkdocs.yml index 7894e3a85f2c8e7abb77609078c16ffc74c42f08..3ef0c99bd2c5ff0ab613263c8d4e5b83533ac4c9 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -57,13 +57,24 @@ theme: icon: repo: fontawesome/brands/git-alt palette: - scheme: default - primary: custom - font: - code: Roboto Mono - toggle: - icon: material/weather-night - name: Switch to light mode + # Palette toggle for light mode + - media: "(prefers-color-scheme: light)" + scheme: default + primary: custom + font: + code: Roboto Mono + toggle: + icon: material/brightness-7 + name: Switch to dark mode + # Palette toggle for dark mode + - media: "(prefers-color-scheme: dark)" + scheme: slate + primary: custom + font: + code: Roboto Mono + toggle: + icon: material/brightness-4 + name: Switch to light mode name: material markdown_extensions: - attr_list