Articles with the tag:
Close
Changelog
Close
Try in the cloud
Try in the cloud
Help Center
ONLYOFFICE Docs Community Edition for Linux

Installing ONLYOFFICE Docs Community Edition using Ansible

ONLYOFFICE Docs v8.0 ONLYOFFICE Docs changelog

Version 8.0.1

Release date: 26/02/2024

Version 8.0.0

Release date: 30/01/2024

Version 7.5.1

Release date: 11/08/2023

Version 7.5.0

Release date: 10/17/2023

Version 7.4.1

Release date: 07/31/2023

Version 7.4.0

Release date: 06/13/2023

Version 7.3.3

Release date: 03/15/2023

Version 7.3.2

Release date: 02/14/2023

Version 7.3.0

Release date: 01/31/2023

Version 7.2.2

Release date: 12/20/2022

Version 7.2.1

Release date: 10/21/2022

Version 7.2.0

Release date: 09/22/2022

Version 7.1.1

Release date: 06/02/2022

Version 7.1.0

Release date: 05/12/2022

Version 7.0.1

Release date: 02/22/2022

Version 7.0.0

Release date: 01/18/2022

Version 6.4.2

Release date: 10/14/2021

Version 6.4.1

Release date: 09/28/2021

Version 6.4.0

Release date: 08/26/2021

Version 6.3.2

Release date: 08/10/2021

Version 6.3.1

Release date: 06/08/2021

Version 6.3.0

Release date: 05/20/2021

Version 6.2.2

Release date: 04/19/2021

Version 6.2.1

Release date: 03/31/2021

Version 6.2.0

Release date: 03/01/2021

Version 6.1.1

Release date: 01/28/2021

Version 6.1.0

Release date: 12/02/2020

Version 6.0.2

Release date: 11/12/2020

Version 6.0.1

Release date: 10/28/2020

Version 6.0.0

Release date: 10/14/2020

Version 5.6.5

Release date: 09/21/2020

Version 5.6.4

Release date: 09/08/2020

Version 5.6.3

Release date: 08/17/2020

Version 5.6.2

Release date: 08/07/2020

Version 5.6.1

Release date: 08/05/2020

Version 5.6.0

Release date: 07/29/2020

Version 5.5.3

Release date: 05/22/2020

Version 5.5.1

Release date: 04/09/2020

Version 5.5.0

Release date: 03/05/2020

Version 5.4.2

Release date: 11/27/2019

Version 5.4.1

Release date: 10/02/2019

Version 5.4.0

Release date: 09/03/2019

Version 5.3.4

Release date: 07/16/2019

Version 5.3.2

Release date: 06/24/2019

Version 5.3.1

Release date: 06/06/2019

Version 5.3.0

Release date: 05/28/2019

Version 5.2.8

Release date: 02/05/2019

Version 5.2.7

Release date: 01/16/2019

Version 5.2.6

Release date: 12/25/2018

Version 5.2.4

Release date: 12/12/2018

Version 5.2.3

Release date: 10/31/2018

Version 5.2.2

Release date: 10/05/2018

Version 5.2.0

Release date: 09/28/2018

Version 5.1.5

Release date: 07/18/2018

Version 5.1.4

Release date: 05/24/2018

Version 5.1.3

Release date: 04/27/2018

Version 5.1.2

Release date: 04/11/2018

Version 5.1.1

Release date: 04/05/2018

Version 5.1.0

Release date: 03/28/2018

Version 5.0.7

Release date: 01/16/2018

Version 5.0.6

Release date: 12/11/2017

Version 5.0.5

Release date: 11/28/2017

Version 5.0.4

Release date: 11/14/2017

Version 5.0.3

Release date: 11/02/2017

Version 5.0.2 SaaS only

Release date: 10/13/2017

Version 5.0.1 SaaS only

Release date: 10/05/2017

Version 5.0.0 SaaS only

Release date: 09/23/2017

Version 4.4.4

Release date: 09/13/2017

Windows-only release

See changelog on GitHub

Version 4.4.3

Release date: 08/14/2017

Version 4.4.2

Release date: 07/24/2017

Version 4.4.1

Release date: 07/05/2017

Version 4.3.6

Release date: 06/14/2017

Version 4.3.5

Release date: 06/05/2017

Version 4.3.4

Release date: 05/16/2017

Version 4.3.3

Release date: 04/28/2017

Version 4.3.2

Release date: 04/17/2017

Version 4.3.1

Release date: 04/06/2017

Version 4.3.0

Release date: 04/03/2017

Version 4.2.11

Release date: 03/13/2017

Version 4.2.10

Release date: 02/20/2017

Version 4.2.9

Release date: 02/14/2017

Version 4.2.8

Release date: 02/06/2017

Version 4.2.7

Release date: 02/01/2017

Version 4.2.5

Release date: 01/16/2017

Version 4.2.4

Release date: 01/09/2017

Version 4.2.3

Release date: 12/23/2016

Version 4.2.2

Release date: 12/21/2016

Version 4.2.1

Release date: 12/06/2016

Version 4.2.0

Release date: 12/01/2016

Version 4.1.8

Release date: 11/03/2016

Version 4.1.7

Release date: 11/01/2016

Version 4.1.6

Release date: 10/26/2016

Version 4.1.5

Release date: 10/13/2016

Version 4.1.4

Release date: 10/07/2016

Version 4.1.3

Release date: 09/28/2016

Version 4.1.2

Release date: 09/22/2016

Version 4.0.3

Release date: 08/04/2016

Version 4.0.2

Release date: 08/03/2016

Introduction

Community Edition allows you to install ONLYOFFICE Docs on your local server and integrate the online editors with your web applicationthe ONLYOFFICE collaboration platform or other popular systems.

ONLYOFFICE Docs is an online office suite that comprises viewers and editors for texts, spreadsheets and presentations, fully compatible with Office Open XML formats (.docx, .xlsx, .pptx) and enables collaborative editing in real time.

Functionality

  • Document Editor
  • Spreadsheet Editor
  • Presentation Editor
  • Mobile web viewers
  • Mobile web editors
  • Collaborative editing
  • Hieroglyph support
  • Support for all the popular formats: DOC, DOCX, TXT, ODT, RTF, ODP, EPUB, ODS, XLS, XLSX, CSV, PPTX, HTML

See the detailed list of features available for ONLYOFFICE Docs Community Edition.

By integrating it with ONLYOFFICE Groups, you will be able to:

  • share files;
  • manage access rights for documents;
  • embed documents on a website;
  • view and edit files stored on Drive, Box, Dropbox, OneDrive, OwnCloud connected to ONLYOFFICE.

Ansible allows you to install and configure software on several machines at once. This guide describes how to install ONLYOFFICE Docs Community Edition using Ansible.

Requirements

  • OS: The ONLYOFFICE.documentserver Ansible role is used to install and configure ONLYOFFICE Docs on RHEL/CentOS or Debian/Ubuntu servers. This instruction is written for Ubuntu 18.04, 20.04
  • At least two hosts:
    • Ansible control node with Ansible installed and configured.
    • One or more managed hosts (the machines where you want to install ONLYOFFICE Docs).

    To easily start working with Ansible, perform three easy steps on the Ansible control node:

    1. Install Ansible. You can refer to the official Ansible documentation
    2. Create an SSH key pair:
      ssh-keygen
    3. Add a public key to the managed hosts so that the control node can access them via SSH:
      ssh-copy-id username@managed_host1
      ssh-copy-id username@managed_host2
      
  • Other requirements:
    • ONLYOFFICE Docs requires PostgreSQL, RabbitMQ and Redis server. They will be installed automatically after launching the playbook.
    • This role requires root access, so either run it in a playbook with a global become: yes, or invoke the role in your playbook:
      - hosts: documentserver
        roles:
          - role: ONLYOFFICE.documentserver
            become: yes
      

      The playbook example provided in Step1 contains become: yes for the ONLYOFFICE.documentserver role.

Installing ONLYOFFICE Docs on Ansible hosts

The actions below are performed on the Ansible control node. You will need to create a playbook, create a new inventory file or edit the existing one, install all roles specified in the playbook and then launch the playbook.

Step 1. Create a playbook

Create a new directory, if necessary:

mkdir ~/playbooks

Go to the directory:

cd ~/playbooks

Create a new playbook and open it for editing:

nano playbook.yml

Add the following contents:

- hosts: documentserver
  vars:
    postgresql_global_config_options:
    - option: listen_addresses
      value: "*"
    - option: unix_socket_directories
      value: '{{ postgresql_unix_socket_directories | join(",") }}'
    postgresql_hba_entries:
    - type: local
      database: all
      user: postgres
      auth_method: peer
    - type: local
      database: all
      user: all
      auth_method: peer 
    - type: host
      database: all
      user: all
      address: 127.0.0.1/32
      auth_method: md5
    - type: host
      database: all
      user: all
      address: ::1/128
      auth_method: md5
    - type: host
      database: all
      user: all
      address: 0.0.0.0/0
      auth_method: md5
    postgresql_databases:
    - name: "{{ db_server_name }}"
    postgresql_users:
    - name: "{{ db_server_user }}"
      password: "{{ db_server_pass }}"
    rabbitmq_users:
    - name: "{{ rabbitmq_server_user }}"
      password: "{{ rabbitmq_server_pass }}"
      vhost: "{{ rabbitmq_server_vpath }}"
      configure_priv: .*
      read_priv: .*
      write_priv: .*
      tags: administrator
    rabbitmq_users_remove: []
    redis_bind_interface: 0.0.0.0
  roles:
  - role: geerlingguy.postgresql
  - role: onlyoffice.rabbitmq
  - role: geerlingguy.redis
  - role: onlyoffice.documentserver
    become: yes

Save the file.

The yml files are sensitive to formatting. If you change any values, ensure that you use spacing for indentation and check alignment. You can validate your modified file using any third-party yaml validator.

The ONLYOFFICE roles must be specified in the same register which is used in the commands for installing these roles (see Step 3). I.e. if you specified - role: ONLYOFFICE.documentserver in the playbook, install the role using the ansible-galaxy install ONLYOFFICE.documentserver command, not ansible-galaxy install onlyoffice.documentserver

Step 2. Create an inventory file

Create a new inventory file and open it for editing:

nano inventory

Add the following content:

[documentserver]
managed_host1 ansible_user=root
managed_host2 ansible_user=root
managed_host3 ansible_user=root

Replace managed_host1, managed_host2, managed_host3, etc. with actual IP addresses or domain names of managed nodes where you want to install ONLYOFFICE Docs.

Save the file.

Alternatively, you can add this list of hosts to your default /etc/ansible/hosts file.

In the example above, the inventory file is added to the same directory where the playbook was created. If your inventory file is located in a different directory, you will need to specify the full path to the inventory file using the -i parameter when launching the playbook (see Step4).

Step 3. Install the Ansible Roles for ONLYOFFICE Docs

Install all roles specified in the playbook using the following commands:

ansible-galaxy install onlyoffice.documentserver
ansible-galaxy install geerlingguy.postgresql
this command will install geerlingguy.postgresql v 3.4, in this case you can get the error with the TASK [geerlingguy.postgresql : Define postgresql_log_dir.] when launching the playbook. To avoid this error, you can remove the role using the following command: ansible-galaxy remove geerlingguy.postgresql and instal a previous version of this role using the following command: ansible-galaxy install geerlingguy.postgresql,3.3.1
ansible-galaxy install onlyoffice.rabbitmq
ansible-galaxy install geerlingguy.redis

Step 4. Run the playbook

In the directory with the created playbook, run the following command:

ansible-playbook playbook.yml -i inventory

If your inventory file is located in a different directory, you need to specify the full path to the inventory file using the -i parameter. For example, if you add the [documentserver] list to the default hosts file, use the following command: ansible-playbook playbook.yml -i /etc/ansible/hosts

if you get the error with the TASK [geerlingguy.postgresql : Ensure PostgreSQL Python libraries are installed.], it can be solved by updating repositories cache on managed hosts with apt-get update. For this purpose, you can create a separate update.yml playbook with the following contents:
- hosts: documentserver
  become: true
  become_user: root
  tasks:
    - name: Update apt repo
      apt: update_cache=yes

Execute update.yml and then run the playbook.yml again.

After executing the playbook.yml, ONLYOFFICE Docs with all dependencies will be installed on all managed hosts specified in your inventory file.

Variables used in the official onlyoffice.documentserver role

Available role variables are listed below, along with default values (see defaults/main.yml):

db_server_host: localhost

The IP address or the name of the host where the PostgreSQL server is running.

db_server_name: onlyoffice

The name of a PostgreSQL database to be created on the image startup.

db_server_user: onlyoffice

The new user name with superuser permissions for the PostgreSQL account.

db_server_pass: onlyoffice

The password set for the PostgreSQL account.

package_name: onlyoffice-documentserver

The package name of the ONLYOFFICE Document Server.

redis_server_host: localhost

The IP address or the name of the host where the Redis server is running.

redis_server_port: 6379

The Redis server port number.

rabbitmq_server_host: localhost

The IP address or the name of the host where the RabbitMQ server is running.

rabbitmq_server_user: guest

The new user name for the RabbitMQ account.

rabbitmq_server_pass: guest

The password set for the RabbitMQ account.

rabbitmq_server_vpath: /

The virtual path for the RabbitMQ server.

proto: http

The option to add ssl configuration or not.

key_file: "~/certs/tls.key"

The path to the key file.

cert_file: "~/certs/tls.crt"

The path to the certificate file.

cluster_mode: false

The option to enable or disable cluster mode.

start_example: false

The option for starting example service after installing.

Download Host on your own server Available for
Docker, Windows and Linux
You Might Also Like This:
Close