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

[FEATURE] Workflow and functionalities to provide DFG-Viewer as a Docker image and use it #323

Open
wants to merge 52 commits into
base: master
Choose a base branch
from

Conversation

markusweigelt
Copy link
Contributor

  • Dockerfile and resources to build the Docker Image
  • Docker Compose file to run the DFG-Viewer image and database
  • GitHub Workflow to build, test, and publish the DFG-Viewer Docker Image to the GitHub Container Repository

When starting the Docker Image, the following steps run automatically:

  1. TYPO3 12 will be installed.
  2. Extensions DFG-Viewer (Branch update-typo12), Kitodo.Presentation (dev-master), and SLUB Digital Collection (Branch update-typo12) will be installed.
  3. Some configurations are applied.

The initial startup may take about a minute.

The DFG-Viewer instance can then be accessed via localhost, unless otherwise configured.

For more informations please check the README. Let me know if you need further assistance!

@markusweigelt markusweigelt changed the title [FEATURE] Docker image [FEATURE] Workflow and functionalities to provide DFG-Viewer as a Docker image and use it Nov 18, 2024
Docker/build/Dockerfile Outdated Show resolved Hide resolved
@stweil
Copy link
Contributor

stweil commented Nov 18, 2024

Many steps are similar to my setup, but some are different. Maybe we can find a common optimum.

@markusweigelt
Copy link
Contributor Author

markusweigelt commented Nov 19, 2024

The basic setup for installing the system is similar to Martin Helmich's approach. Unfortunately, this Dockerfile is based only on a non-Composer installation. Otherwise, I would have used this Docker image as a base. Some of the currently published releases of DFG-Viewer or Kitodo.Presentation in the TER did not include a vendor folder and could not be installed in this environment over ZIP file. Therefore, I found the use of Composer to be essential.

The primary goal is to create a production-ready image. This means all components for development, such as Git, are not installed, or features like debugging are disabled.

Currently, the image is still being built based on the branches for TYPO3 12. Once these are merged, the GitHub workflow could be set to the main repositories.

For development, I recommend using the repository slub/ddev-dfgviewer, which will soon be updated with the branch update-and-adjustments.
Alternatively, we can certainly create certain options here to override or adjust the configuration (in case the slub/ddev-dfgviewer repository is no longer maintained after my project).

@csidirop
Copy link
Contributor

Don't we already have a way to setup presentation (and dfg-viewer) via Docker: https://github.com/UB-Mannheim/kitodo-presentation-docker ?

@stweil
Copy link
Contributor

stweil commented Nov 20, 2024

That's right, thanks for the reminder. And we also own https://hub.docker.com/u/kitodo, so we could publish the Docker image there.

@markusweigelt
Copy link
Contributor Author

Don't we already have a way to setup presentation (and dfg-viewer) via Docker: https://github.com/UB-Mannheim/kitodo-presentation-docker ?

It is part of my project to provide the DFG Viewer as an offical image, ideally as part of the DFG Viewer repository.

According to the project and the project proposal, there is a demand for this, and of course, there are institution-specific implementations. If UB Mannheim is providing the official image for the DFG-Viewer and Kitodo.Presentation, then this has apparently not been communicated accordingly. However, that is not my responsibility.

@markusweigelt
Copy link
Contributor Author

markusweigelt commented Nov 21, 2024

That's right, thanks for the reminder. And we also own https://hub.docker.com/u/kitodo, so we could publish the Docker image there.

The DFG Viewer is not part of the Kitodo association. Perhaps communication with SLUB should be initiated first, for example with @beatrycze-volk or @sebastian-meyer, to avoid creating faits accomplis and instead develop a collaborative and sustainable solution. I think the GitHub container repository is the right place to provide an official image.

For further points regarding these political topics, a discussion should be opened elsewhere. I do not think the comment section of this PR is suitable for that purpose.

@stweil
Copy link
Contributor

stweil commented Nov 21, 2024

@markusweigelt, but you know that Christos did his DFG Viewer work in a common DFG project with SLUB and UB Braunschweig, so there was intensive communication?

@markusweigelt
Copy link
Contributor Author

@stweil Yes, I was aware that he extended the DFG Viewer in the OCR-D project. However, I have no knowledge of which project he is currently working on, particularly in relation to a Docker image, and I had no information on this either.

@stweil
Copy link
Contributor

stweil commented Nov 21, 2024

The Kitodo / DFG Viewer Docker image was part of his project work in the past. Although the project was officially finished, there remain open tasks: update for recent TYPO3, then integration of the implemented function (OCR on demand) into the official repositories. That's not part of a current project, but we try do do it nevertheless.

@stweil
Copy link
Contributor

stweil commented Nov 21, 2024

The Kitodo organisation on Docker Hub is a different issue. I created it very early for a Docker image of Kitodo.Production. So there is still no Docker image for Kitodo.Presentation (with DFG Viewer as example) on Docker Hub. But it might be a good place for such an image as soon as it exists officially.

@markusweigelt
Copy link
Contributor Author

There is no official information that I could find, e.g., on the DFG Viewer website, TYPO3 extension documentation, README.md, or DEVELOPMENT.md, indicating that an effort towards an official image already exists or is available for older versions.

@beatrycze-volk beatrycze-volk added the ✔️ feature A new feature or enhancement. label Nov 21, 2024
@beatrycze-volk beatrycze-volk added this to the DFG-Viewer 7.0.0 milestone Nov 21, 2024
markusweigelt and others added 3 commits November 21, 2024 18:18
Add `T3_SYS_TRUSTEDHOSTSPATTERN` env variable for configuration of hosts names in a reverse proxy environment
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✔️ feature A new feature or enhancement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants