{"id":298665,"date":"2021-07-14T15:00:23","date_gmt":"2021-07-14T12:00:23","guid":{"rendered":"https:\/\/en.buradabiliyorum.com\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/"},"modified":"2021-07-14T15:00:23","modified_gmt":"2021-07-14T12:00:23","slug":"how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it","status":"publish","type":"post","link":"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/","title":{"rendered":"#How to Self-Host a Collaborative Cloud with Nextcloud and Docker \u2013 CloudSavvy IT"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a2aab6ba60d4\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #dd3333;color:#dd3333\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #dd3333;color:#dd3333\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a2aab6ba60d4\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Planning_the_Setup\" >Planning the Setup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Getting_Set_Up\" >Getting Set Up<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#First_Run\" >First Run<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Automating_Configuration\" >Automating Configuration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Security\" >Security<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Managing_Nextcloud_Updates\" >Managing Nextcloud Updates<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker-cloudsavvy-it\/#Conclusion\" >Conclusion<\/a><\/li><\/ul><\/nav><\/div>\n<p><strong>&#8220;#How to Self-Host a Collaborative Cloud with Nextcloud and Docker \u2013 CloudSavvy IT&#8221;<\/strong><\/p>\n<div id=\"article-content-area\">\n<figure style=\"width: 3004px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"type:primaryImage wp-image-12666 size-full\" data-pagespeed-lazy-src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/bafebeb8.png?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"next cloud logo\" width=\"3004\" height=\"1436\" src=\"https:\/\/www.shutterstock.com\/image-photo\/poznan-pol-feb-6-2021-laptop-1939905700\" data-credittext=\"monticello\/Shutterstock.com\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><figcaption class=\"wp-caption-text\"><span class=\"type:primaryImage imagecredit\"><a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/www.shutterstock.com\/image-photo\/poznan-pol-feb-6-2021-laptop-1939905700\">monticello\/Shutterstock.com<\/a><\/span><\/figcaption><\/figure>\n<p>Nextcloud is an open-source file-sharing and collaboration platform to rival services like Google Workplace and Microsoft 365. Nextcloud lets you self-host your own collaborative cloud, so you don\u2019t need to shackle yourself to a public provider.<\/p>\n<p>A regular Nextcloud installation can be time-consuming to set up. Nextcloud is built on the classic LAMP stack, <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/docs.nextcloud.com\/server\/latest\/admin_manual\/installation\/source_installation.html#prerequisites-for-manual-installation\">so you\u2019ll need<\/a> Apache, PHP, and MySQL, each with its own prerequisites. This can make it tricky to maintain the installation or use it alongside other workloads on your server.<\/p>\n<p>Running Nextcloud as a Docker container simplifies the setup procedure and lets you isolate the installation from your other <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/download-scripts-themes-apps\/\" data-internallinksmanager029f6b8e52c=\"9\" title=\"Download Scripts &amp; Themes &amp; Apps\" target=\"_blank\" rel=\"noopener\">app<\/a>lications. Nextcloud has an <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hub.docker.com\/_\/nextcloud\">official Docker image,<\/a> which we\u2019ll focus on in this article. The community <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hub.docker.com\/r\/linuxserver\/nextcloud\">linuxserver project<\/a> also provides its own image with some pre-configured defaults.<\/p>\n<h2 id=\"planning-the-setup\"><span class=\"ez-toc-section\" id=\"Planning_the_Setup\"><\/span>Planning the Setup<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The Nextcloud Docker image comes with a functioning web server setup. You\u2019ll get Apache, PHP, and a pre-configured Nextcloud installation. An SQLite database is used by default.<\/p>\n<p>While a basic <code>docker run -d -p 80:80 nextcloud<\/code> will bring up a ready-to-run server, this doesn\u2019t include provision for persistent storage. The most critical aspect of Dockerized Nextcloud deployment is correct volume configuration so that you don\u2019t lose your data.<\/p>\n<p>In addition, the standard SQLite database is <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/help.nextcloud.com\/t\/state-of-sqlite-support\/85283\">only suitable<\/a> for small-scale usage. If you\u2019re going to have more than a handful of users, provisioning a MySQL or PostgreSQL database will improve performance.<\/p>\n<p>Let\u2019s now build a Dockerized Nextcloud installation that runs on MySQL and uses Docker volumes to safely persist your data. If you\u2019d rather use PostgreSQL, substitute references to MySQL below with their PostgreSQL <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hub.docker.com\/_\/nextcloud\">counterparts<\/a>.<\/p>\n<h2 id=\"getting-setup\"><span class=\"ez-toc-section\" id=\"Getting_Set_Up\"><\/span>Getting Set Up<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>You can deploy Nextcloud using basic Docker CLI commands. This quickly becomes tedious, though, not to mention difficult to remember in the future. Instead, using Docker Compose\u00a0lets you define your configuration as code.<\/p>\n<p>Make sure that you have Docker and Docker Compose installed on your system. Create a new directory to hold your Nextcloud configuration files. Add a <code>docker-compose.yml<\/code> file and paste in the following contents:<\/p>\n<div class=\"wp-geshi-highlight-wrap5\">\n<div class=\"wp-geshi-highlight-wrap4\">\n<div class=\"wp-geshi-highlight-wrap3\">\n<div class=\"wp-geshi-highlight-wrap2\">\n<div class=\"wp-geshi-highlight-wrap\">\n<div class=\"wp-geshi-highlight\">\n<div class=\"yaml\">\n<pre class=\"de1\"><span class=\"co3\">version<\/span><span class=\"sy2\">: <\/span><span class=\"st0\">\"3\"<\/span>\n<span class=\"co4\">\nservices<\/span>:<span class=\"co4\">\n  nextcloud<\/span>:<span class=\"co3\">\n    image<\/span><span class=\"sy2\">: <\/span>nextcloud:latest<span class=\"co3\">\n    restart<\/span><span class=\"sy2\">: <\/span>unless-stopped<span class=\"co4\">\n    ports<\/span><span class=\"sy2\">:\n<\/span>      - 80:80<span class=\"co4\">\n    environment<\/span><span class=\"sy2\">:\n<\/span>      - MYSQL_HOST=mysql\n      - MYSQL_DATABASE=nextcloud\n      - MYSQL_USER=nextcloud\n      - MYSQL_PASSWORD=nextcloud<span class=\"co4\">\n    volumes<\/span><span class=\"sy2\">:\n<\/span>      - nextcloud:\/var\/www\/html\n<span class=\"co4\">\n  mysql<\/span>:<span class=\"co3\">\n    image<\/span><span class=\"sy2\">: <\/span>mysql:8.0<span class=\"co3\">\n    restart<\/span><span class=\"sy2\">: <\/span>unless-stopped<span class=\"co4\">\n    environment<\/span><span class=\"sy2\">:\n<\/span>      - MYSQL_DATABASE=nextcloud\n      - MYSQL_USER=nextcloud\n      - MYSQL_PASSWORD=nextcloud\n      - MYSQL_ROOT_PASSWORD=nextcloud<span class=\"co4\">\n    volumes<\/span><span class=\"sy2\">:\n<\/span>      - mysql:\/var\/lib\/mysql\n<span class=\"co4\">\nvolumes<\/span>:<span class=\"co4\">\n  mysql<\/span><span class=\"sy2\">:\n<\/span>  nextcloud:<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>This Compose file encapsulates all the configuration for a safe Nextcloud installation. It provisions a MySQL database and configures Nextcloud to connect to it. You should set <code>MYSQL_PASSWORD<\/code> and <code>MYSQL_ROOT_PASSWORD<\/code> to secure custom values.<\/p>\n<p>The entire <code>\/var\/www\/html<\/code> directory is mounted as a Docker volume. Nextcloud stores its source, settings, and user data here. By turning the whole directory into a volume, Nextcloud\u2019s self-updater will work correctly. Otherwise, you\u2019d have to pull a new container image to update, as the self-updater wouldn\u2019t be able to persistently replace Nextcloud\u2019s files.<\/p>\n<p>The Nextcloud server will bind to port 80 on your machine by default. You can use a different port, such as <code>8080<\/code>, by updating the <code>ports<\/code> configuration:<\/p>\n<p><code>- 8080:80<\/code><\/p>\n<p>Now, you\u2019re ready to deploy Nextcloud with Docker Compose:<\/p>\n<pre>docker-compose up -d<\/pre>\n<p>Wait while Compose pulls the images and starts your containers. You\u2019ll then be able to access Nextcloud by visiting <code>localhost<\/code> in your browser.<\/p>\n<h2 id=\"first-run\"><span class=\"ez-toc-section\" id=\"First_Run\"><\/span>First Run<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The first time that you visit Nextcloud, you\u2019ll be shown the default setup wizard. Enter a username and password for your first user account. If you want to install some core apps, including calendar, contacts, and Nextcloud Talk calls, leave the \u201cInstall recommended apps\u201d checkbox ticked.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12480\" data-pagespeed-lazy-src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/61b21df2.png?trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"\" width=\"1268\" height=\"658\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Click \u201cFinish setup\u201d to complete the installation process. It might take a few moments while apps are installed. Don\u2019t close your browser tab until setup completes. Once Nextcloud\u2019s ready, you\u2019ll be shown a quick set of getting started slides. You\u2019ll then be taken to the Nextcloud dashboard.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12481\" data-pagespeed-lazy-src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/d4a46e82.png?trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"\" width=\"1274\" height=\"658\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>The dashboard offers you a centralized view of your cloud assets. Individual apps can surface content on the dashboard. You can get to all of your apps using the icons in the top-left corner.<\/p>\n<p>To install extra apps, click your user profile icon in the top-right corner. Choose \u201cApps\u201d from the menu. Click one of the categories in the left sidebar to see all of the available apps. Press \u201cDownload and enable\u201d below any app\u2019s card to add it to your Nextcloud instance.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12479\" data-pagespeed-lazy-src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/5a616de5.png?trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"\" width=\"1274\" height=\"658\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Nextcloud admin settings are found by clicking your user profile icon and choosing \u201cSettings\u201d in the menu. Click the links under \u201cAdministrator\u201d in the left sidebar to find management facilities. Your Nextcloud version and available updates are displayed on the \u201cOverview\u201d page.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12478\" data-pagespeed-lazy-src=\"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/cba4900c.png?trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"\" width=\"1273\" height=\"654\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Some Nextcloud administration tasks are invoked through the <code>occ<\/code> command-line binary. This is a PHP script within the Nextcloud source. You can interact with OCC using <code>docker-compose exec<\/code>\u00a0without fully attaching to the container:<\/p>\n<pre>docker-compose exec --user www-data php occ occ-command-here<\/pre>\n<p>It\u2019s important to include the <code>--user<\/code> flag so that\u00a0<code>occ<\/code> is run as the same user as the Nextcloud web interface. Otherwise, you might encounter filesystem ownership and permissions errors.<\/p>\n<h2 id=\"automating-configuration\"><span class=\"ez-toc-section\" id=\"Automating_Configuration\"><\/span>Automating Configuration<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Many of Nextcloud\u2019s admin settings can be preset when you start the container. Beyond database setup, the image supports environment variables to configure a mail system, connect to remote object storage, and automatically create an initial administrator user. When you supply these values, you won\u2019t need to provide them to the first-run setup wizard.<\/p>\n<p>As an alternative to environment variables, you can use <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/docs.docker.com\/engine\/swarm\/secrets\">Docker secrets<\/a> to set values in a more security-conscious way. Add your values to files and map them into the container using the <code>secrets<\/code> key in Compose. Then, update the <code>environment<\/code> section to read the injected secret files.<\/p>\n<div class=\"wp-geshi-highlight-wrap5\">\n<div class=\"wp-geshi-highlight-wrap4\">\n<div class=\"wp-geshi-highlight-wrap3\">\n<div class=\"wp-geshi-highlight-wrap2\">\n<div class=\"wp-geshi-highlight-wrap\">\n<div class=\"wp-geshi-highlight\">\n<div class=\"yaml\">\n<pre class=\"de1\"><span class=\"co4\">services<\/span>:<span class=\"co4\">\n  nextcloud<\/span>:<span class=\"co4\">\n    environment<\/span><span class=\"sy2\">:\n<\/span>      - NEXTCLOUD_ADMIN_PASSWORD_FILE=\/run\/secrets\/nextcloud_admin_password<span class=\"co4\">\nsecrets<\/span>:<span class=\"co4\">\n  nextcloud_admin_password<\/span>:<span class=\"co3\">\n    file<\/span><span class=\"sy2\">: <\/span>.\/nextcloud_admin_password<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>When you\u2019re using secrets, each Nextcloud environment variable should have <code>_FILE<\/code> appended to its name. This instructs Nextcloud to get the value from the referenced file path.<\/p>\n<h2 id=\"security\"><span class=\"ez-toc-section\" id=\"Security\"><\/span>Security<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The standard Docker image doesn\u2019t set up SSL by default. It\u2019s <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hub.docker.com\/_\/nextcloud\">recommended<\/a>\u00a0that you deploy behind an SSL-terminating reverse proxy such as Apache, Nginx, or Traefik. This should then forward requests to your Nextcloud container.<\/p>\n<p>The Docker image automatically works with requests that are proxied from the 10.0.0.8\/72, 172.16.0.0\/12, and 192.168.0.0\/16 address spaces. If your proxy server has a different IP, you should add it to the <code>TRUSTED_PROXIES<\/code> environment variable when deploying Nextcloud. You\u2019ll also need to set <code>APACHE_DISABLE_REWRITE_IP=1<\/code>.<\/p>\n<p>These steps ensure that Nextcloud will handle rewrites properly. The Docker image\u2019s usage instructions include <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hub.docker.com\/_\/nextcloud#using-the-apache-image-behind-a-reverse-proxy-and-auto-configure-server-host-and-protocol\">more guidance<\/a> on using Nextcloud with a proxy. You can check whether your installation is installed correctly using the Overview page in the admin center.<\/p>\n<h2 id=\"managing-nextcloud-updates\"><span class=\"ez-toc-section\" id=\"Managing_Nextcloud_Updates\"><\/span>Managing Nextcloud Updates<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>When you\u2019ve deployed Nextcloud with the Compose file above, you should be able to use the self-updater in the admin center to update Nextcloud. Bear in mind that this will only get you the latest Nextcloud source\u2014the underlying container will remain the same.<\/p>\n<p>It\u2019s a good idea to periodically pull a new Docker image. This helps you avoid running outdated OS packages, which could be a security risk.<\/p>\n<p>If you\u2019re using Docker Compose, you can rerun <code>docker-compose up<\/code> with the <code>--pull<\/code> flag. Compose will automatically pull the new image and replace your current container if required.<\/p>\n<pre>docker-compose up -d --pull<\/pre>\n<h2 id=\"conclusion\"><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Running a Nextcloud server gives you full control over your files. Beyond simple file sharing, Nextcloud also provides a full ecosystem of productivity apps. You\u2019ll find email, calendar, notes, and tasks systems as well as a complete <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/nextcloud.com\/talk\">voice and video-calling<\/a> solution.<\/p>\n<p>Deploying Nextcloud with Docker simplifies the setup procedure and avoids polluting your host with a bare-metal LAMP stack. Once Nextcloud is installed, you\u2019ll be able to connect from any of the supported desktop and mobile sync clients.<\/p>\n<p>We\u2019ve only covered the fundamentals of getting a Nextcloud server operational. If you want to learn more about installing apps and maintaining your installation, the Nextcloud <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/docs.nextcloud.com\/server\/latest\/admin_manual\">administration manual<\/a> provides exhaustive instructions.\n<\/div>\n<blockquote><p><strong><span style=\"color: #ff6600;\">If you liked the article, do not forget to share it with your friends. Follow us on\u00a0<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/news.google.com\/publications\/CAAqBwgKMLG0nwswvr63Aw\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google News<\/a><\/span>\u00a0too, click on the star and choose us from your favorites.<\/span><\/strong><\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\">For forums sites go to <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/forum.buradabiliyorum.com\/\" target=\"_blank\" rel=\"noopener\">Forum.BuradaBiliyorum.Com<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\"><strong>If you want to read more like this article, you can visit our <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/en.buradabiliyorum.com\/technology\/\" target=\"_blank\" rel=\"noopener\">Technology category.<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<p><span style=\"color: black;\"><a style=\"color: #ff9900;\" href=\"https:\/\/www.cloudsavvyit.com\/12476\/how-to-self-host-a-collaborative-cloud-with-nextcloud-and-docker\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;#How to Self-Host a Collaborative Cloud with Nextcloud and Docker \u2013 CloudSavvy IT&#8221; monticello\/Shutterstock.com Nextcloud is an open-source file-sharing and collaboration platform to rival services like Google Workplace and Microsoft 365. Nextcloud lets you self-host your own collaborative cloud, so you don\u2019t need to shackle yourself to a public provider. A regular Nextcloud installation can&#8230;<\/p>\n","protected":false},"author":1,"featured_media":298666,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2021\/07\/bafebeb8.png","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[],"class_list":["post-298665","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/298665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/comments?post=298665"}],"version-history":[{"count":0,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/298665\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media\/298666"}],"wp:attachment":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media?parent=298665"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/categories?post=298665"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/tags?post=298665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}