# hub.docker.com/r/tiredofit/libreoffice-online [![Docker Pulls](https://img.shields.io/docker/pulls/tiredofit/libreoffice-online.svg)](https://hub.docker.com/r/tiredofit/libreoffice-online) [![Docker Stars](https://img.shields.io/docker/stars/tiredofit/libreoffice-online.svg)](https://hub.docker.com/r/tiredofit/libreoffice-online) [![Docker Layers](https://images.microbadger.com/badges/image/tiredofit/libreoffice-online.svg)](https://microbadger.com/images/tiredofit/libreoffice-online) # Introduction This will build a container for [LibreOffice Online](https://libreoffice.org/) for editing documents in a browser from supported applications * This Container uses a [customized Debian Linux base](https://hub.docker.com/r/tiredofit/debian) which includes [s6 overlay](https://github.com/just-containers/s6-overlay) enabled for PID 1 Init capabilities, [zabbix-agent](https://zabbix.org) for individual container monitoring, Cron also installed along with other tools (bash,curl, less, logrotate, nano, vim) for easier management. * Configurable Concurrent User and Document Limit (set to generarous values by default) * Zabbix Monitoring of Active Documents, Users, Memory Consumed [Changelog](CHANGELOG.md) # Authors - [Dave Conroy](https://github.com/tiredofit) # Table of Contents - [Introduction](#introduction) - [Changelog](CHANGELOG.md) - [Prerequisites](#prerequisites) - [Installation](#installation) - [Quick Start](#quick-start) - [Configuration](#configuration) - [Database](#database) - [Data Volumes](#data-volumes) - [Environment Variables](#environmentvariables) - [Networking](#networking) - [Maintenance](#maintenance) - [Shell Access](#shell-access) - [References](#references) # Prerequisites This image assumes that you are using a reverse proxy such as [jwilder/nginx-proxy](https://github.com/jwilder/nginx-proxy) and optionally the [Let's Encrypt Proxy Companion @ https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion](https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion) in order to serve your pages. However, it will run just fine on it's own if you map appropriate ports. # Installation Automated builds of the image are available on [Docker Hub](https://hub.docker.com/tiredofit/libreoffice-online) and is the recommended method of installation. If you decide to compile this, it will take quite a few hours. ```bash docker pull tiredofit/libreoffice-online ``` The following image tags are available: * `latest` - See most recent versioned tag * `1.2` - Collabora Libreoffice 6.0.25 with Collabora Office Online 4.0.1-1 * `1.1` - Collabora Libreoffice 5.3.61 with Collabora Office Online 3.4.2.1 # Quick Start * The quickest way to get started is using [docker-compose](https://docs.docker.com/compose/). See the examples folder for a working [docker-compose.yml](examples/docker-compose.yml) that can be modified for development or production use. * Set various [environment variables](#environment-variables) to understand the capabilities of this image. A Sample `docker-compose.yml` is provided that will work right out of the box for most people without any fancy optimizations. * Map [persistent storage](#data-volumes) for access to configuration and data files for backup. # Configuration ### Persistent Storage The following directories should be mapped for persistent storage in order to utilize the container effectively. | Folder | Description | |-----------|-------------| | `/var/log/loolwsd` | Log files | `/assets/custom` | If you want to update the theme of LibreOffice online, dropping files in here will overwrite /opt/lool/share on startup | ### Environment Variables Along with the Environment Variables from the [Base image](https://hub.docker.com/r/tiredofit/debian), below is the complete list of available options that can be used to customize your installation. | Parameter | Description | |-----------|-------------| | `ADMIN_USER` | User for accessing Administration Console - Default `admin` | | `ADMIN_PASS` | Password for accessing Administration Console - Default `libreoffice` | | `ALLOWED_HOSTS` | Set which domains which can access service - Example: `^(.*)\.example\.org` | | `DICTIONARIES` | Spell Check Languages - Available `en_GB en_US` - Default `en_GB en_US` | | `LOG_LEVEL` | Log Level - Available `none, fatal, critical, error, warning, notice, information, debug, trace` - Default `warning` | ### Networking The following ports are exposed. | Port | Description | |-----------|-------------| | `9880` | Libreoffice Web Services | # Maintenance #### Shell Access For debugging and maintenance purposes you may want access the containers shell. ```bash docker exec -it (whatever your container name is e.g. libreoffice-online) bash ``` # References * https://libreoffice.org