Introduction to Nextcloud Talk

Traducciones al Español
Estamos traduciendo nuestros guías y tutoriales al Español. Es posible que usted esté viendo una traducción generada automáticamente. Estamos trabajando con traductores profesionales para verificar las traducciones de nuestro sitio web. Este proyecto es un trabajo en curso.
Create a Linode account to try this guide with a $ credit.
This credit will be applied to any valid services used during your first  days.

What is Nextcloud 14?

Nextcloud 14 is a cloud storage platform that offers users the ability to self-host a video and text chat platform called Talk, featuring end-to-end encryption. This guide will walk you through setting up Nextcloud, and show how to use the video chat platform built-into the latest release.

Install Docker CE

You will need a Linode with Docker CE installed to follow along with the steps in this guide.

To install Docker CE (Community Edition), follow the instructions within one of the guides below:

For complete instructions on even more Linux distributions, reference the Install Docker Engine section of Docker’s official documentation.

Install Nextcloud 14 and Talk


  1. Pull and run the Nextcloud image:

     docker run -d -p 8080:80 nextcloud
  2. In a browser, navigate to port 8080 of your Linode (e.g. to launch the Nextcloud console.

  3. Create an admin account when prompted:


Talk works by allowing all the users that are registered to your Nextcloud instance to communicate with each other. Nextcloud Talk offers simple text and video chat, private or group password protected calls, and screen sharing. The Nextcloud Talk source code is available on GitHub.

  1. From the Nextcloud console main page, click the Settings icon on the right side of the navigation bar. Choose + Apps.

  2. Install the Talk add-on located in the Social & communication section. Select the app and click Enable.

  1. Navigate to the Users section of the Nextcloud interface, and create logins for your team.

How to Use Talk

Nextcloud Talk is built using WebRTC, and works in your browser.

  1. Choose Users from the settings menu and add one or more additional users. Give the username and password combinations to each user and have them log in through the web console.

  2. Once Talk is installed, an icon for the addon will appear on the nav menu:

    Talk menu icon

  3. Click this icon to enter Talk and allow the use of your system’s camera and microphone when prompted. Once this is done, you will be able to start a chat or video call with any of the users you have created.

The basic configuration here allows you to make video calls using Firefox. Google Chrome requires an HTTPS connection in order to allow access to the camera and microphone. To do this, create an SSL certificate or place Nextcloud behind a reverse proxy.

Docker Compose

The basic Nextcloud Docker image is already configured for persistent data in the event that your container crashes. However, Docker Compose makes it easy to launch a configuration using a separate database container and persistent data volume. This method keeps your data consistent through upgrades and automatically handles all container restarts.

Install Docker Compose

Docker Compose is available in plugin and standalone variants. However, Docker’s official documentation prioritizes the plugin. Further, the plugin has a straightforward installation and works well with past Docker Compose commands.

These steps thus show how to install the Docker Compose plugin. If you are interested in installing the standalone Docker Compose application, follow Docker’s official installation guide.


Many tutorials retain the Docker Compose standalone command format, which looks like the following:

docker-compose [command]

Be sure to replace this with the plugin’s command format when using this installation method. This typically just means replacing the hyphen with a space, as in:

docker compose [command]
  1. Enable the Docker repository for your system’s package manager. The repository is typically already enabled after you have installed the Docker engine. Follow our relevant guide on installing Docker to enable the repository on your system.

  2. Update your package manager, and install the Docker Compose plugin.

    • On Debian and Ubuntu systems, use the following commands:
    sudo apt update
    sudo apt install docker-compose-plugin
    • On CentOS, Fedora, and other RPM-based distributions, use the following commands:
    sudo yum update
    sudo yum install docker-compose-plugin

Create docker-compose.yaml

  1. In a text editor, create docker-compose.yaml and add the following configuration (from the Nextcloud Github repo). Fill in the MYSQL_ROOT_PASSWORD and MYSQL_PASSWORD with suitable values.

    File: docker-compose.yaml
      version: '2'
          image: mariadb
          restart: always
            - db:/var/lib/mysql
            - MYSQL_ROOT_PASSWORD=
            - MYSQL_PASSWORD=
            - MYSQL_DATABASE=nextcloud
            - MYSQL_USER=nextcloud
          image: nextcloud
            - 8080:80
            - db
            - nextcloud:/var/www/html
          restart: always
  2. If it is still running, stop the container from the previous section using docker stop and the container name or ID.

  3. Launch the Docker Compose configuration:

    docker-compose up -d

    Nextcloud should be available at port 8080 on your Linode’s public IP address.

  4. When creating an admin account, open the Storage & database drop-down menu, fill in the information as shown below, and enter the MySQL password you used in the docker-compose file:

    Nextcloud database connection

    The setup provided by Nextcloud does not include any SSL encryption. To secure your data and communications, the Nextcloud service should be placed behind a reverse proxy. A Docker Compose file using a NGINX reverse proxy and Let’s Encrypt is also available.

More Information

You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.

This page was originally published on

Your Feedback Is Important

Let us know if this guide was helpful to you.

Join the conversation.
Read other comments or post your own below. Comments must be respectful, constructive, and relevant to the topic of the guide. Do not post external links or advertisements. Before posting, consider if your comment would be better addressed by contacting our Support team or asking on our Community Site.
The Disqus commenting system for Linode Docs requires the acceptance of Functional Cookies, which allow us to analyze site usage so we can measure and improve performance. To view and create comments for this article, please update your Cookie Preferences on this website and refresh this web page. Please note: You must have JavaScript enabled in your browser.