How to: easily deploy Collabora Online on your Kubernetes setup

All you need to deploy Collabora Online on your Kubernetes setup, is applying these configuration settings on your installation of Collabora Online.

Install Collabora Online on Kubernetes in 3 easy steps

With the increasing use of the Kubernetes, we are happy to provide an easy way to deploy our online on your Kubernetes setup.
Thanks to Collabora developer lpranam, Collabora Online can be setup with Kubernetes and also a key feature such as collaborative editing will work correctly. Therefore it is vital to ensure that all users editing the same document end up being served by the same pod. Using the WOPI protocol, the http/https URL includes a unique identifier (WOPISrc) for use with that document. Thus load balancing can be done by using WOPISrc – ensuring that all URLs that contain the same WOPISrc are sent to the same pod. We use a reverse proxy to achieve this load balancing mechanism. HAProxy provides the easiest way to achieve all are requirements for this setup.

Pre-installation checklist

  1. running Kubernetes cluster
  2. The helm command-line tool
  3. The kubectl command-line tool

Configuration files can be found at

Installation steps

  1. Install HAProxy ingress controller
    kubectl apply -f
  2. Prepare the namespace in the Kubernetes cluster with this command
    kubectl create namespace collabora
  3. Install collabora online helm chart
    helm install collabora-online ./kubernetes/helm/collabora-online/

Accessing online service

The following steps may vary a little according to your cloud providers. Here we demonstrate how to access the online with a minikube setup on a local machine.

HAproxy is installed as a NodePort service so to access any service through HAProxy we can use the node’s ip.

  1. To get your node ip with minikube minikube ip

example output

2. Each container port is mapped to a NodePort port via the Service object. To find those ports

kubectl get svc --namespace=haproxy-controller

example output

In this instance, the following ports were mapped:

  • Container port 80 to NodePort 30536
  • Container port 443 to NodePort 31821
  • Container port 1024 to NodePort 30480

3. Now in this case to make our hostname available we have to add the following line into /etc/hosts:

Feedback and community

If you have feedback, or want to get involved somehow: here’s our cool-dev community!

Read More

ARM64 an officially supported platform for CODE

We now officially announce the availability of CODE for the ARM64 platform. Users can now benefit from the availability of the latest developments in document collaboration with a feature rich open-source application, offering great support for all major file formats. The availability for the ARM64 platform is possible thanks to the work for the recently announced Collabora Online for the Raspberry Pi.

The ARM64 version can be used with docker or the Nextcloud snap. Find the docker source here.

We also offer CODE packages, of course less convenient to use, and available for Ubuntu 18.04 LTS only. And of course there’s the releases and information on GitHub.

About CODE

CODE is the Collabora Online Development Edition. It contains the latest developments and is perfect for home users. It enables them to regain control of their own online documents and to host them themselves in a secure and private environment. For tech-enthusiasts, it is a low-threshold way to get involved and familiar with our online office solution. CODE will be improved continuously and our next supported and maintained Collabora Online product will be built from it. All of our code is Open Source, and a vibrant community in participating in growing Collabora Online. Would you like to be part of the story? Join the community!


Get CODE 6.4


Read More

Canonical, Nextcloud and Collabora deliver work-from-home solution to Raspberry Pi and enterprise ARM users

The Internet, March 25 – Canonical, Collabora and Nextcloud announce the immediate availability of a content collaboration platform for 64bit ARM for both consumers and enterprises. Building on the prior Nextcloud Ubuntu Appliance and with Collabora Online, it adds the first viable self-hosted web office solution on the popular Raspberry Pi 4 platform.

The Raspberry Pi series has transformed tech, bringing down the cost of anything from IoT devices to small home servers. Ubuntu has been leading the space offering easy to install and zero-management snap software packages, lowering barrier to entry further. Interest in Nextcloud on the Raspberry Pi has been evident from hundreds of online tutorials appearing over the years, as well as enthusiasm around an earlier collaboration between Canonical, Nextcloud and Western Digital on a solution for the platform. With the introduction of the Ubuntu Nextcloud Appliance, easy deployment of the Nextcloud Hub became available for x86 devices like Intel NUC’s as well as ARM devices like the Raspberry Pi, but the latter lacked support for a viable online office document editor. Today, the lack of a viable office solution is resolved with the availability of the widely used, open source, web office document editor Collabora Online.

This enables tens of thousands of Raspberry Pi users to turn their Pi 4 into a self-hosted content collaboration and document editing solution in minutes. With the growing availability of 64bit ARM devices in the enterprise server space, larger organizations are also set to benefit from the availability of this platform. Obviously, we encourage users and organizations to act responsible with regard to data protection by using e.g. proper networks, encryption and backups.

Installation Tutorial

Before you start, note the following system requirements for the installation:

  • 3.0 flash drive (2GB minimum)
  • A Raspberry Pi 4, preferably with 2 or 4 GB RAM
  • A Mini HDMI to HDMI cable
  • A monitor with VGA or HDMI interface
  • A VGA or HDMI cable
  • A USB keyboard and mouse
  • A network connection with Internet access
  • An Ubuntu 20.04 LTS desktop image

Find a full tutorial on the Ubuntu website for installing the Nextcloud Ubuntu Appliance image on a Raspberry Pi. Read how to quickly set up step by step and stay fully productive by having video calls in Talk, sharing documents with Files, editing it with others using Collabora Online, reading your emails or planning meetings and many more! Make sure you don’t miss the details in the announcements by Ubuntu and Nextcloud!
Mind that you may also install the Appliance one a RPI 3 however, that for running the Collabora Online office solution, that hardware is really not ideal.

Easy built-in installation

The Ubuntu Nextcloud Appliance comes with the Collabora Online built-in server.This makes getting started really easy. This installation is perfect for personal use or use with small teams. If you are looking for a larger deployment, contact us for details about a full, scalable installation:

Screenshot of a Nextcloud installation: Install and select CODE-Built-in-server
Install and select CODE-Built-in-server

Great feature richness

The really easy installation comes with a great feature richness, full WYSIWYG functionality and a modern and flexible user interface! Collabora Online is built using LibreOffice technology and therefore the document support and features are similar to what that desktop suite offers. To mention a few:

  • Powerful spreadsheets, also offering possibilities as validation, pivot tables, password protection
  • Working with images with close to no limitations
  • Text files with track changes, page formatting, charts, styles
  • Vector drawings, with shapes, 3D, flow charts
  • Presentations including master pages, charts, transitions and animations
Tip: keep an eye on our new releases for more new features.

Working with images in Collabora Online, knows few limitations. Position, on the page, resize, rotate, proper wrapping and more. It all works nicely, and you can visualize your documents as you edit.

Tremendous options to work with images

Find more examples in the earlier announcement for the Intel NUC, for example on sharing and collaborating.


About Canonical

Canonical is the publisher of Ubuntu, the OS for most public cloud workloads as well as the emerging categories of smart gateways, self-driving cars and advanced robots. Canonical provides enterprise security, support and services to commercial users of Ubuntu. Established in 2004, Canonical is a privately held company.

About Nextcloud

Nextcloud Hub is the industry-leading, fully open source, on-premises team productivity platform, combining the easy user interface of consumer-grade cloud solutions with the security and compliance measures enterprises need. Nextcloud Hub brings together universal access to data through mobile, desktop and web interfaces with next-generation, on-premise secure communication and collaboration features like real-time document editing, chat and video calls, putting them under direct control of IT and integrated with existing infrastructure.
Nextcloud’s easy and quick deployment, open, modular architecture and emphasis on security and advanced federation capabilities enable modern enterprises to leverage their existing file storage assets within and across the borders of their organization. For more information, visit or follow @Nextclouders on Twitter.

About Collabora

Collabora Productivity created Collabora Online and is therefore the driving force behind putting LibreOffice in the cloud. Collabora provides a range of products as well as consulting to enterprise and government. Powered by the largest team of certified LibreOffice engineers in the world, Collabora is a leading contributor to the LibreOffice codebase and community. Collabora Office for Desktop and Collabora Online provide a business-hardened office suite with long-term support. Collabora’s multi-platform policy is completed with Collabora Office for iOS and Android. Collabora Productivity is a division of Collabora, the global software consultancy dedicated to providing benefits of Open Source to the commercial world, specializing in mobile, automotive and consumer electronics industries. For more information, visit or follow @CollaboraOffice on Twitter.

Read More

How to use and manage Basic and VBA compatible macros in Collabora Online

The release of Collabora Online 6.4.7  and CODE 6.4.7 introduced the possibility to run macros in Online!

Configuration settings in loolwsd.xml: enabling and setting the security level

By default, execution of macros is completely disabled. The administrators can enable that in the security node of the loolwsd.xml configuration file.

<enable_macros_execution desc="..." type="bool" default="false">false</enable_macros_execution>

Once enabled, the administrator can decide which security level should be used for the macro execution. Currently there are two levels:

  • 0 (Low, not recommended) All macros will be executed without confirmation.
  • 1 (Medium, the default) Confirmation required before executing macros from untrusted sources.

<macro_security_level desc="..." type="int" default="1">1</macro_security_level>

Sources for Macros

Macros can be either embedded in the documents, or can be installed on the server. When opening a document with macros, in the security level “1” (Medium), the users will always see the following dialog, and will have to confirm they understand the risk.

Limitations for Macros in Collabora Online

Due to the limitations of editing the documents online, and due to the strict security design of Collabora Online, running macros have several limitation limitations. Following list of examples is not exhaustive, if you find a case that is not working for you, please let us know.

It is not possible to:

  1. Access Database sources, or open and access data as Database source.
  2. Use XForms, Forms, Controls, click buttons.
  3. Access other documents, or open external documents.
  4. Create new document from template.
  5. Mail Merge, or merge all documents in a directory.
  6. Call an external program.
  7. Use the Shell command.
  8. Extract a Zip File.
  9. Get and set the current directory.
  10. Connect to a remote OOo server using Basic.
  11. Create a toolbar for a component type.
  12. Toggle the design mode, or access the toolbars in any way.

Find out more about macros and all the other new features in our Collabora Online 6.4.7 announcement.


Read More

Collabora Online Community Roundup #10

On 1 October 2020, Collabora Online moved to its new home on GitHub, and started settling in the new infrastructure, expanding its fantastic community, and continuing the work to deliver the latest and greatest developments in productivity and collaboration together. Check our new community website for all the details! 😉

Collabora developers also keep fixing and improving our lovely mother project LibreOffice. As all the good work requires some appreciation, let’s take a look at what the seasoned developers of the Collabora team and the volunteer contributors from our community have been doing during the last 2 weeks.

Week in Numbers

On the Collabora Online code repository in the last week, 11 authors have pushed 42 commits to master and 72 commits to all branches. On master, 48 files have changed and there have been 1,567 additions and 835 deletions.

Screenshot of GitHub Pulse for Collabora Online
Development Activity on Collabora Online GitHub Repository from February 15, 2021 to February 22, 2021

New Contributors

Congratulations to Gianni154, Samuel, sowoi, oiselarius and SerjSX for reporting their first issues and improvement requests on our GitHub repository!

  • Thanks to Gianni154 for reporting multiple issues around the iOS app such as the comment function not working properly while the keyboard is active[0], thus giving us the opportunity to improve the experience for our users on iOS even further.
  • Thanks to Samuel for opening an enhancement request to add the Libertinus Font to the CODE docker image, thus letting us know about the preferences of our users on certain configurations.
  • Thanks to sowoi for reporting that empty menus are being shown even when all of their items are disabled on certain integrations, thus giving us the opportunity to improve the user experince of Collabora Online even more.
  • Thanks to oiselarius for letting us know about issues encountered while opening files with the iOS app which reside on some cloud storage services.
  • Thanks to SerjSX for reporting a potential issue on the Android app, and then helping triage the issue which turned out to be a false positive.

Thank you all, and welcome aboard! 🙂

Join the fun!

You can also join the fun, and be part of our next list of new contributors! 🙂

Just go to our GitHub repo, fork it, build it (on Linux or on any platform), grab one of our newcomer-friendly easy hacks, and send your first pull request. And if you get stuck at any point, just drop by one of our communication channels. 😉


Collabora Online Weekly Meeting #13

COOL Weekly Meeting #13 has taken place on Thursday, February 18, 2021 at 11:00:00 am (UTC) with participants both from the community contributors and the Collabora team. We have got a quick update on what’s going on and discussed matters raised by the contributors, as well as having the chance to say hi to fellow members of the community. Topics discussed in the meeting include:

  • During the quick update part by Muhammet Kara, it’s been reported that COOL has got more than 75 new contributors (25+ code contributors) since the move to GitHub, and the COOL Roundup #9, covering more than 2 months of time, is finally out.
  • Pedro Silva has reported that multiple new categories have been added to the Collabora Online community forum along with new icons, and a new navigation bar on the top making it easier to find your way around.

    New navigation bar on the forum
  • Nicolas Christener has given an update on the template contest, informing us that there are 33 submissions so far, with 10 of them being quite promising, and that they will finish the evaluations by Feb 25.
  • Gabriel Masei has confirmed that all the work towards allowing users and integrations to change/choose a toolbar type dynamically has been completed and landed on the main (master) branch.
  • Gökay Şatır has shared the latest status of the ongoing CanvasTileLayer work, stating that they are now removing the custom scrollbars using the canvas section container and also updating the canvas section container as well, which would improve the user experience on different platforms with an even smoother and more natural look and behavior of scrolling.
  • On the Icon Theming topic, Pedro Silva has reported that Andreas Kainz is going to do some manual tests before moving on.
  • About the ongoing effort of Async Saving, which would improve the performance and the user experience of Collabora Online by allowing seamless/smooth save operations especially when multiple users are working on the same document collaboratively, Jan Holesovsky shared that Ashod Nakashian has already merged some of the initial/preparatory work, doing some clean-up and under-the-hood improvements, and the first step of the good stuff is already on GitHub as pull requests.
  • Andras Timar, on the new release schedule, has informed us that CODE is expected to have more frequent updates with the bleeding edge features and improvements before they go into the next release of COOL.
  • Pedro Silva has reported that the bug which prevented the notebookbar from being scrolled on small screens is now fixed, and all the work has already been merged.
  • Pranam Lashkari has reported that the Invalidation Debugging work by Rashesh Padia has been completed and merged.
  • Muhammet Kara has brought up that there is a small pull request by Gleb Popov which allegedly fixes a build issue on FreeBSD and looks okay, and he has requested a review from Ashod Nakashian, and he is going to merge it if no response or objection in a few days.

Check out the meeting minutes for the details of the meeting, and join us on Thursday, March 04, 2021, at 11:00 am (UTC) to stay in touch with the rest of the community. You may also make your own suggestions for the next meeting by following the link shared in the COOL Telegram group before the next meeting. We’re looking forward to hearing from you live. 😉

Collabora Online (COOL)

  • Thanks to Gökay Şatır for his work on CanvasTileLayer, which would make COOL have a much crisper and smoother look and feel. See the Weekly Meeting notes above for some more details.
  • Thanks to Pranam Lashkari for fixing a bug which caused the composed shortcuts, such as Ctrl+P to print the document, not to work in read-only mode, and also for making sure the right-click menu properly works also on the first row & column of Calc documents.
  • Thanks to Andras Timar for adding the info on how to build Collabora Online 6.4 docker to the README file, thus improving the documentation for potential new contributors and adopters of COOL, along with various other improvements and maintenance around localization and containerization.
  • Thanks to Dennis Francis for various fixes and improvements around the Canvas layer, which brings a lot of visual and user experience improvements such as smooth zoom animations. You can also now add Mocha tests in Collabora Online to test any existing typescript classes or functions of it, again thanks to him. Check out his blog post for the details.

    Logo of Mocha testing framework
    Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple and fun.
  • Thanks to Szymon Kłos for various improvements and fixes especially around the notebookbar and various dialogs, such as adding the Fontwork feature to Calc and making sure dialogs are closed when the user hits the ESC key without the need of explicitly clicking the close button, thus helping COOL become richer in feature and have an even better user experience.
  • Thanks to Tor Lillqvist for adding a new toString() method to use while debugging Collabora Online, thus helping to make the lives of developers a bit easier, and for making sure the view id is included in the tunneled dialogs’ image hash to prevent possible issues while users are collaboratively editing a document.
  • Thanks to Ashod Nakashian for various fixes and improvements towards increasing general stability of COOL and maintainability of the code-base along with tests to make our code-base future-proof, working on the async save feature which will be a major leap towards a much smoother experience for users while collaboratively editing documents, and also for reviewing pull requests of other contributors, and for mentoring them through tough issues.
  • Thanks to Gabriel Masei for adding support for changing the UI mode dynamically between the classical toolbar and the new notebookbar, effectively making Collabora Online easier to customize based on user needs or taste.
    A screenshot of the Collabora Online’s classic toolbar on the Writer module

    A screenshot of the Collabora Online’s new Notebookbar on the Writer module
  • Thanks to Rashesh Padia for improving the debugging facilities of COOL, by adding a separate option in debug mode for sidebar invalidation re-rendering.
  • Thanks to Pedro Silva for various fixes and improvements around the user interface of COOL to make it have a better and more consistent look and feel, especially focusing on the vex widgets lately.
  • Thanks to Henry Castro for making it easier to debug Collabora Online by adding a tag string to extract backtrace logs.
  • Thanks to Umut Bayramoğlu for removing some unused variables, thus helping our code-base to become even lighter and easier to maintain.
  • Thanks to Gleb Popov for fixing the build with libc++ by ensuring that std:min() function has the same type of parameters in the code-base.
  • Thanks to Tamás Zolnai for a lot of fixes and improvements around cypress (testing framework), and the testing facilities, and also documenting the interface testing on the README file, thus helping new potential contributors to ensure stability and future-proofness of COOL.
  • Thanks to Miklos Vajna for adding support for gutter margins on Writer documents, which makes it much easier to adhere to binding standards of governments and other institutions for printed materials. Checkout his blog post for details!

    UI for the new gutter margins on Collabora Online

Collabora Online Integrations

  • Thanks to Julius Härtl for reviewing and merging pull requests from other contributors on Collabora Online’s Nextcloud integration.
  • Thanks to Szymon Kłos for improving the user experience of Collabora Online’s Nextcloud integration by making sure the Save As dialog shows the new name after the file is renamed from within the editor.
  • Thanks to Phil Davis for improving the CI and test facilities of Collabora Online’s ownCloud integration by applying latest drone starlark code.
  • Thanks to Artur Neumann for reviewing and merging pull requests from other contributors on Collabora Online’s ownCloud integration.
  • Thanks to Cindy PIASSALE of Jeci for various improvements and clean-ups on Collabora Online’s Alfresco integration, such as adding Collabora Online as a viewer option for supported formats, documenting the new feature on the README file, and also releasing a new version of the integration app.

Honorable Mentions

  • Thanks to Cor Nouws for leading the marketing team, and not stopping there but continuing with testing & reporting bugs, attending to community events, and keeping us all informed about what’s going on. He also attends LibreOffice Design meetings from time to time to help COOL’s mother project LibreOffice have a better UI & UX.
  • Thanks to Eloy Crespo for his efforts to help the project well-funded as always.
  • Thanks to Marc Rodrigues for continuing to keep us updated on various news around Collabora Online and related FOSS projects, and creating a lot of yummy content to read!
  • Thanks to Pedro Silva for improving various points around the COOL Community Page and forum, and also for helping other contributors by providing instructions on their pull requests as well as reviewing them.
  • Thanks to Andras Timar for keeping us organized, maintaining our translation project on Weblate, and delivering hot new releases of our software!
  • Thanks to Yunusemre Şentürk for various tasks towards keeping our CI chains healthy.
  • Thanks to Jan Holesovsky for doing a lot of research on different topics, and providing mentoring/patch-reviewing/hand-holding/wisdom within the team, in our communication channels, and also on various channels of our lovely mother project LibreOffice.
  • Thanks to Mike Kaganski for his recent work on upgrading our partner & customer ticketing system to make things even sweeter for all of our users. Feel free to check his blog post on Reading from MySQL data with BLOBs dumped to CSV.
  • Your friendly community mentor, Muhammet Kara, is also creating & improving easy hacks, running workshops, helping new contributors solving their setup & build issues and reviewing their pull requests, working on easing the build procedure, improving our GitHub presence bit by bit based on its community guidelines, compiling/composing these community updates…


Last but not least, we can’t thank enough to our translators who constantly help COOL and its friends talk many languages on this earth. Collabora Online speaks many languages, thanks to all of our translators in our translation project, and all of those who previously contributed and keeps contributing to our mother project, LibreOffice.

We’re continuing to work to find good ways to credit translators’ hard work in the product. Please see a list of those involved, and please get in touch if you’re not listed. Many thanks to all those who have worked on translating Online, you rock!

If you would like to help COOL speak your language, you can just go to our translation project on weblate, and start contributing! 😉

Collabora Online translation project on Weblate
Collabora Online translation project on Weblate

Collabora loves LibreOffice!

We’re still contributing to LibreOffice and encourage you too to do so because LibreOffice rocks. 😉

  • Thanks to Miklos Vajna for many improvements and fixes especially around ensuring better support for OOXML formats thus better interoperability with other office suites, such as making sure the creation time of an imported DOCX file ispreserved, and adding support[0][1][2] for gutter margins of DOCX, DOC, ODF and RTF documents. Check out his blog post for details! He also had a FOSDEM talk on Handling PDF digital signatures with PDFium.
    Old render result, missing gutter, in Writer

    New render result, with gutter, in Writer
  • Thanks to Tomaž Vajngerl for continuing his work towards developing a built-in Xray-like UNO object inspector. This effort has been funded by The Document Foundation, so also thanks a lot to the TDF Board of Directors, and the TDF donors who made the work on this tool possible!
  • Thanks to Gülşah Köse for various fixes and improvements around importing custom shapes such as making sure crop positions are imported properly and greysale effect is handled properly, and also for adding corresponding tests to ensure those features keep working in the future, thus improving interoperability with other office suites.
  • Thanks to Noel Grandin for doing various code-quality improvements and modernization all around the LibreOffice code-base.
  • Thanks to Tor Lillqvist for a lot of fixes and improvements especially towards better support on macOS and iOS.

Read More