diff --git a/Dockerfile b/Dockerfile index bae7ed6..f1ff665 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,7 +16,8 @@ RUN \ echo "**** install runtime packages ****" && \ apt-get install -y \ imagemagick \ - python-minimal && \ + python-minimal \ + unrar && \ echo "**** install calibre-web ****" && \ if [ -z ${CALIBREWEB_RELEASE+x} ]; then \ CALIBREWEB_RELEASE=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/releases/latest" \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 2eae7bb..dadc4f6 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -23,7 +23,8 @@ RUN \ echo "**** install runtime packages ****" && \ apt-get install -y \ imagemagick \ - python-minimal && \ + python-minimal \ + unrar && \ echo "**** install calibre-web ****" && \ if [ -z ${CALIBREWEB_RELEASE+x} ]; then \ CALIBREWEB_RELEASE=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/releases/latest" \ diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 3bef081..911329f 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -23,7 +23,8 @@ RUN \ echo "**** install runtime packages ****" && \ apt-get install -y \ imagemagick \ - python-minimal && \ + python-minimal \ + unrar && \ echo "**** install calibre-web ****" && \ if [ -z ${CALIBREWEB_RELEASE+x} ]; then \ CALIBREWEB_RELEASE=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/releases/latest" \ diff --git a/README.md b/README.md index eadf91f..c26ae43 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,7 @@ docker create \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Europe/London \ + -e DOCKER_MODS=linuxserver/calibre-mod:latest #*optional* & **x86-64 only** \ -p 8083:8083 \ -v :/config \ -v :/books \ @@ -79,6 +80,7 @@ services: - PUID=1000 - PGID=1000 - TZ=Europe/London + - DOCKER_MODS=linuxserver/calibre-mod:latest #*optional* & **x86-64 only** volumes: - :/config - :/books @@ -97,6 +99,7 @@ Container images are configured using parameters passed at runtime (such as thos | `-e PUID=1000` | for UserID - see below for explanation | | `-e PGID=1000` | for GroupID - see below for explanation | | `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London. | +| `-e DOCKER_MODS=linuxserver/calibre-mod:latest #*optional* & **x86-64 only**` | #optional & **x86-64 only** Adds the ability to perform book conversion | | `-v /config` | Where calibre-web stores the internal database and config. | | `-v /books` | Where your calibre database is locate. | @@ -125,7 +128,14 @@ On the initial setup screen, enter `/books` as your calibre library location. *Username:* admin *Password:* admin123 -To reverse proxy with our Letsencrypt docker container use the following location block: +Unrar is included by default and needs to be set in the Calibre-Web admin page (Basic Configuration:External Binaries) with a path of `/usr/bin/unrar` + +**x86-64 only** We have implemented the optional ability to pull in the dependencies to enable ebook conversion utilising Calibre, this means if you don't require this feature the container isn't uneccessarily bloated but should you require it, it is easily available. +This optional layer will be rebuilt automatically on our CI pipeline upon new Calibre releases so you can stay up to date. +To use this option add the optional environmental variable as detailed above to pull an addition docker layer to enable ebook conversion and then in the Calibre-Web admin page (Basic Configuration:External Binaries) set the path to converter tool to `/usr/bin/ebook-convert` + + +To reverse proxy with our Letsencrypt docker container we include a preconfigured reverse proxy config, for other instances of Nginx use the following location block: ``` location /calibre-web { proxy_pass http://:8083; @@ -199,6 +209,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **13.06.19:** - Add docker mod to enable optional ebook conversion on x86-64. Add unrar. * **02.06.19:** - Rebase to Ubuntu Bionic & add Gdrive support. * **23.03.19:** - Switching to new Base images, shift to arm32v7 tag. * **23.02.19:** - Rebase to alpine 3.9, use repo version of imagemagick. diff --git a/readme-vars.yml b/readme-vars.yml index d7cc4bb..b03b0bc 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -22,6 +22,7 @@ param_container_name: "{{ project_name }}" param_usage_include_env: true param_env_vars: - { env_var: "TZ", env_value: "Europe/London", desc: "Specify a timezone to use EG Europe/London." } + - { env_var: "DOCKER_MODS", env_value: "linuxserver/calibre-mod:latest #*optional* & **x86-64 only**", desc: "#optional & **x86-64 only** Adds the ability to perform book conversion"} param_usage_include_vols: true param_volumes: - { vol_path: "/config", vol_host_path: "", desc: "Where calibre-web stores the internal database and config." } @@ -49,7 +50,14 @@ app_setup_block: | *Username:* admin *Password:* admin123 - To reverse proxy with our Letsencrypt docker container use the following location block: + Unrar is included by default and needs to be set in the Calibre-Web admin page (Basic Configuration:External Binaries) with a path of `/usr/bin/unrar` + + **x86-64 only** We have implemented the optional ability to pull in the dependencies to enable ebook conversion utilising Calibre, this means if you don't require this feature the container isn't uneccessarily bloated but should you require it, it is easily available. + This optional layer will be rebuilt automatically on our CI pipeline upon new Calibre releases so you can stay up to date. + To use this option add the optional environmental variable as detailed above to pull an addition docker layer to enable ebook conversion and then in the Calibre-Web admin page (Basic Configuration:External Binaries) set the path to converter tool to `/usr/bin/ebook-convert` + + + To reverse proxy with our Letsencrypt docker container we include a preconfigured reverse proxy config, for other instances of Nginx use the following location block: ``` location /calibre-web { proxy_pass http://:8083; @@ -62,6 +70,7 @@ app_setup_block: | # changelog changelogs: + - { date: "13.06.19:", desc: "Add docker mod to enable optional ebook conversion on x86-64. Add unrar." } - { date: "02.06.19:", desc: "Rebase to Ubuntu Bionic & add Gdrive support." } - { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." } - { date: "23.02.19:", desc: "Rebase to alpine 3.9, use repo version of imagemagick." }