https://github.com/mkucej/i-librarian-free
I, Librarian - open-source version of a PDF managing SaaS.
https://github.com/mkucej/i-librarian-free
arxiv crossref document-management doi groupware ieee nasa ocr officedocs pdf pdf-viewer php pubmed remote-work research-and-development saas web-based
Last synced: 3 months ago
JSON representation
I, Librarian - open-source version of a PDF managing SaaS.
- Host: GitHub
- URL: https://github.com/mkucej/i-librarian-free
- Owner: mkucej
- License: gpl-3.0
- Created: 2020-04-07T18:42:51.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2025-12-02T15:18:10.000Z (6 months ago)
- Last Synced: 2025-12-05T20:05:54.799Z (6 months ago)
- Topics: arxiv, crossref, document-management, doi, groupware, ieee, nasa, ocr, officedocs, pdf, pdf-viewer, php, pubmed, remote-work, research-and-development, saas, web-based
- Language: PHP
- Homepage: https://i-librarian.net
- Size: 10.8 MB
- Stars: 318
- Watchers: 8
- Forks: 32
- Open Issues: 19
-
Metadata Files:
- Readme: README-Docker.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# *I, Librarian* in Docker
## Prepare permanent storage directory
```bash
mkdir -p /var/www/i-librarian-free/library/data
chown -R 33:33 /var/www/i-librarian-free/library/data
```
User 33:33 is the user/group ID (UID/GID) that *I, Librarian* runs as. In an unlikely case of a conflict, you can set
the directory permissions to 0777 instead.
## Prepare config file
```bash
mkdir -p /var/www/i-librarian-free/library/config
tar xf I-Librarian-5.11.3-Linux.tar.xz config/ilibrarian-default.ini --strip-components=1
mv ilibrarian-default.ini /var/www/i-librarian-free/library/config/ilibrarian.ini
```
## Build an image
```bash
docker build -t i-librarian-free:5.11.3 - < I-Librarian-5.11.3-Linux.tar.xz
```
## Run container
```bash
docker run -d --name il-free -p 127.0.0.1:9050:80 -v /var/www/i-librarian-free/library/data:/i-librarian/data \
-v /var/www/i-librarian-free/library/config:/i-librarian/config i-librarian-free:5.11.3
```
## Docker compose alternative
```YAML
services:
il-free:
image: i-librarian-free:5.11.3
container_name: il-free
restart: always
ports:
- "127.0.0.1:9050:80"
volumes:
- type: bind
source: /var/www/i-librarian-free/library/data
target: /i-librarian/data
- type: bind
source: /var/www/i-librarian-free/library/config
target: /i-librarian/config
read_only: true
```
```bash
docker compose up -d
```
## Access
*I, Librarian* now runs at 127.0.0.1:9050. You can use the local address directly, or via reverse proxy. For instance, using Caddy:
* access *I, Librarian* at https://library.example.com. Here, `library` subdomain is just an example. Use whatever you want.
```Caddyfile
library.example.com {
reverse_proxy 127.0.0.1:9050
}
```
* alternatively, to access *I, Librarian* on a `library` URL path at https://example.com/library. Here, `library` path is literal.
```Caddyfile
example.com {
handle /library* {
reverse_proxy 127.0.0.1:9050
}
}
```