-
Notifications
You must be signed in to change notification settings - Fork 281
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
Add I,librarian free app to Appstore #5403
Open
viktor-c
wants to merge
10
commits into
runtipi:master
Choose a base branch
from
viktor-c:i-librarian
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 8 commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
939de8b
initial commit for il-librarian-free
viktor-c e6e91b3
add schema to config.json
viktor-c 05f2e5c
try to fix unknown error by reducing file content
viktor-c 49947ac
further reduce content
viktor-c 871e14d
go back to full config
viktor-c 28b99df
remove services
viktor-c 7fe44f4
remove false service
viktor-c 8851459
add description from website
viktor-c 7d58e4b
Update apps/i-librarian/docker-compose.yml
viktor-c 45b8e7a
remove priviliged caps from docker-compose
viktor-c File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
{ | ||
"$schema": "../schema.json", | ||
"name": "i-librarian", | ||
"available": true, | ||
"exposable": true, | ||
"dynamic_config": true, | ||
"port": 31547, | ||
"id": "i-librarian", | ||
"tipi_version": 1, | ||
"version": "v5.11.1", | ||
"categories": ["data"], | ||
"description": "I, Librarian is an online service that will organize your collection of PDF papers and office documents. It provides a lot of extra features for students and research groups both in industry and academia. It is a reference manager, PDF manager and organizer focused on private group collaboration.", | ||
"short_desc": "I-Librarian", | ||
"author": "Scilico", | ||
"source": "https://github.com/mkucej/i-librarian-free", | ||
"form_fields": [], | ||
"website": "https://i-librarian.net/", | ||
"supported_architectures": ["amd64"], | ||
"created_at": 1730663152, | ||
"updated_at": 1730663152 | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
{ | ||
"services": [ | ||
{ | ||
"name": "i-librarian", | ||
"image": "cgrima/i-librarian:latest", | ||
"isMain": true, | ||
"internalPort": 80, | ||
"volumes": [ | ||
{ | ||
"hostPath": "${APP_DATA_DIR}/data/i-librarian", | ||
"containerPath": "/app/data", | ||
"readOnly": false | ||
}, | ||
{ | ||
"hostPath": "/etc/localtime", | ||
"containerPath": "/etc/localtime", | ||
"readOnly": true | ||
} | ||
], | ||
"addPorts": [ | ||
{ | ||
"containerPort": 80, | ||
"hostPort": 31547, | ||
"tcp": true | ||
} | ||
], | ||
"healthCheck": { | ||
"test": "curl --fail http://localhost || exit 1", | ||
"retries": 3, | ||
"interval": "30s", | ||
"timeout": "10s" | ||
} | ||
} | ||
|
||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
services: | ||
i-librarian: | ||
container_name: i-librarian | ||
image: cgrima/i-librarian:latest | ||
privileged: true | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Security concern: Untrusted image source and privileged mode Two critical security issues:
Consider these changes:
- privileged: true
+ # Add only required capabilities if needed
+ cap_add:
+ - specific_capability
|
||
restart: unless-stopped | ||
ports: | ||
- ${APP_PORT}:80 | ||
volumes: | ||
- ${APP_DATA_DIR}:/app/data | ||
- /etc/localtime:/etc/localtime:ro | ||
viktor-c marked this conversation as resolved.
Show resolved
Hide resolved
|
||
networks: | ||
- tipi_main_network | ||
labels: | ||
# Main | ||
traefik.enable: true | ||
traefik.http.middlewares.ilibrarian-web-redirect.redirectscheme.scheme: https | ||
traefik.http.services.ilibrarian.loadbalancer.server.port: 80 | ||
# Web | ||
traefik.http.routers.ilibrarian-insecure.rule: Host(`${APP_DOMAIN}`) | ||
traefik.http.routers.ilibrarian-insecure.entrypoints: web | ||
traefik.http.routers.ilibrarian-insecure.service: ilibrarian | ||
traefik.http.routers.ilibrarian-insecure.middlewares: ilibrarian-web-redirect | ||
# Websecure | ||
traefik.http.routers.ilibrarian.rule: Host(`${APP_DOMAIN}`) | ||
traefik.http.routers.ilibrarian.entrypoints: websecure | ||
traefik.http.routers.ilibrarian.service: ilibrarian | ||
traefik.http.routers.ilibrarian.tls.certresolver: myresolver | ||
# Local domain | ||
traefik.http.routers.ilibrarian-local-insecure.rule: Host(`ilibrarian.${LOCAL_DOMAIN}`) | ||
traefik.http.routers.ilibrarian-local-insecure.entrypoints: web | ||
traefik.http.routers.ilibrarian-local-insecure.service: ilibrarian | ||
traefik.http.routers.ilibrarian-local-insecure.middlewares: ilibrarian-web-redirect | ||
# Local domain secure | ||
traefik.http.routers.ilibrarian-local.rule: Host(`ilibrarian.${LOCAL_DOMAIN}`) | ||
traefik.http.routers.ilibrarian-local.entrypoints: websecure | ||
traefik.http.routers.ilibrarian-local.service: ilibrarian | ||
traefik.http.routers.ilibrarian-local.tls: true | ||
runtipi.managed: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# I, Librarian | ||
I, Librarian is an online service that will organize your collection of PDF papers and office documents. It provides a lot of extra features for students and research groups both in industry and academia. It is a reference manager, PDF manager and organizer focused on private group collaboration. | ||
|
||
## I, Librarian free | ||
https://github.com/mkucej/i-librarian-free | ||
|
||
## Why should you use I, Librarian? | ||
### Centralized management | ||
Never loose a document. PDFs are stored and administered at a central location. There is no need to synchronize different devices. All users work with one library in real time. | ||
### Great for remote work | ||
Access your library over the Internet from anywhere. However, restricted access is also possible. Your users only need a web browser. No need to install and upgrade software. | ||
### Powerful full-text search | ||
Search for terms or phrases in metadata, PDF files, PDF annotations, and rich-text notes. A precise OCR is also available. Both the search and OCR are multilingual. | ||
### Private collaboration | ||
Users can create ad hoc projects for more focused work, share notes, PDF annotations, and engage in discussions. | ||
### Annotate PDFs in a web browser | ||
Use a full-featured PDF viewer with a multicolor marker and shared sticky notes directly in a web browser. | ||
### No customer lock-in | ||
You can use I, Librarian as online service or on your premises. Libraries can be easily migrated at any time. | ||
|
||
## I, Librarian is used by professionals in many organizations | ||
Note: A listing of an organization does not represent their official endorsement of our services. | ||
UT Southwestern Medical Center | ||
Hart Crowser, Inc | ||
Frontier Medicines Corporation | ||
CNRS | ||
Schrödinger | ||
Aeonyx Research Corporation | ||
YESAB | ||
Admedes GmbH | ||
Nkarta, Inc. | ||
DNO North Sea | ||
NiKang Therapeutics, Inc. | ||
University of Illinois at Chicago | ||
Federal University of Santa Catarina | ||
Sensirion AG | ||
Technischen Universität Wien | ||
Global Ore Discovery | ||
Saarland University | ||
Principia Biopharma | ||
|
||
## Copyright | ||
Copyright. © 2001-2024 · [Scilico](http://scilico.com/), LLC · Biglerville, PA, USA |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
Based on the gathered information, I can now provide the final response:
Using unofficial Docker image poses stability and security risks
The current configuration uses an unofficial Docker image (
cgrima/i-librarian:latest
) while I, Librarian's official repository doesn't provide or recommend any specific Docker image. Instead, it recommends a direct installation with Apache 2.4+ and PHP 7.2+ requirements.Consider:
🔗 Analysis chain
Consider using a specific version tag instead of 'latest'.
Using the
latest
tag in production can lead to unexpected breaking changes during container updates. Additionally, the image is from a personal Docker Hub account which might pose maintenance and security risks.Consider:
Let me try a different approach to verify the image and its tags.
This will help us understand:
Let me check the official repository mentioned in the description to understand the recommended deployment approach.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
Length of output: 744
Script:
Length of output: 1227
Script:
Length of output: 3546