
{"id":13805,"date":"2022-06-10T17:26:00","date_gmt":"2022-06-10T15:26:00","guid":{"rendered":"https:\/\/contabo.com\/blog\/?p=13805"},"modified":"2022-10-25T18:54:20","modified_gmt":"2022-10-25T16:54:20","slug":"setting-up-nextcloud-on-vps","status":"publish","type":"post","link":"https:\/\/contabo.com\/blog\/setting-up-nextcloud-on-vps\/","title":{"rendered":"How to Install Nextcloud on VPS"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"630\" src=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg\" alt=\"Tutorial teaching you how to install Nextcloud on a virtual private server (VPS) in nine steps.\" class=\"wp-image-13886\" srcset=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg 1200w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1-600x315.jpg 600w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1-768x403.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n\n\n<p>Nextcloud is a popular Open Source productivity platform among the self-hosting community. This tutorial will teach you how to install <a href=\"https:\/\/contabo.com\/en\/vps\/\" target=\"_blank\" rel=\"noreferrer noopener\">Nextcloud on VPS<\/a>.<\/p>\n\n\n\n<p>We&#8217;ve included both a step-by-step video guide and written tutorial.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-nextcloud-vps-install-video-tutorial\">Nextcloud VPS Install Video Tutorial<\/h2>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"ast-oembed-container \" style=\"height: 100%;\"><iframe loading=\"lazy\" title=\"How to setup Nextcloud on VPS\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/dh1kQuHp9Wk?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-s-required-to-install-nextcloud\">What&#8217;s Required to Install Nextcloud?<\/h2>\n\n\n\n<p>To install Nextcloud, you&#8217;ll need a Linux server with root access. For this tutorial, I\u2019m going to deploy Nextcloud on a VPS with Debian 11 as the operating system.<\/p>\n\n\n\n<p>And for the web server, I&#8217;m using Apache2 (it&#8217;ll be used as a reverse-proxy). Moreover, it\u2019s required to have a domain already connected to your server.<\/p>\n\n\n\n<p>Before we start with the Nextcloud VPS install, we want to make sure that our server is up to date. To do this, log in as root and use this command to update your server:<\/p>\n\n\n\n<p><code>apt update &amp;&amp; apt upgrade \u2013y&nbsp;<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-1-install-required-programs\">Step 1: Install Required Programs&nbsp;<\/h2>\n\n\n\n<p>We&#8217;ll need to install all required programs, e.g., Apache2, PHP, and database software. PHP8.0 will be covered in Step 2.<\/p>\n\n\n\n<p>Let&#8217;s start by installing the required programs with this command:&nbsp;<\/p>\n\n\n\n<p><code>apt install apache2 unzip wget curl mariadb-client mariadb-server nano&nbsp;<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-2-install-php8-0\">Step 2: Install PHP8.0<\/h2>\n\n\n\n<p>As mentioned earlier, we need to install PHP8.0 (or newer). 8.0 is the recommended PHP version.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-step-2a-adding-repository\">Step 2A: Adding Repository&nbsp;<\/h3>\n\n\n\n<p>We&#8217;ll need to add the PHP8.0 repository in Debian 11. To do so enter these commands in this order:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li><code>apt-get install ca-certificates apt-transport-https software-properties-common -y&nbsp;<\/code><\/li>\n\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n\n<li><code>echo \"deb https:\/\/packages.sury.org\/php\/ $(lsb_release -sc) main\" | tee \/etc\/apt\/sources.list.d\/sury-php.list&nbsp;<\/code><\/li>\n\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n\n<li><code>apt install gnupg gnupg2 gnupg1 -y&nbsp;<\/code><\/li>\n\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n\n<li><code>wget -qO - https:\/\/packages.sury.org\/php\/apt.gpg | apt-key add -&nbsp;<\/code><\/li>\n\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n\n<li><code>apt update &amp;&amp; apt upgrade -y&nbsp;<\/code><\/li>\n\n<\/ol>\n\n\n\n<p>The repo should already be installed by now, so we&#8217;ll proceed with installing PHP8.0.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-step-2b-installing-php8-0-necessary-modules\">Step 2B: Installing PHP8.0 &amp; Necessary Modules<\/h3>\n\n\n\n<p>Installing PHP8.0 is very easy and done with just one command:<\/p>\n\n\n\n<p><code>apt install php8.0 -y&nbsp;<\/code><\/p>\n\n\n\n<p>You&#8217;ll need to install additional PHP-Modules for Nextcloud (needed for Nextcloud to work properly) with this command:<\/p>\n\n\n\n<p><code>apt install libapache2-mod-php8.0 php8.0-{zip,xml,mbstring,gd,curl,imagick,intl,bcmath,gmp,cli,mysql,apcu,redis}&nbsp;<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-step-2c-adjusting-php-ini\">Step 2C: Adjusting php.ini&nbsp;<\/h3>\n\n\n\n<p>After installing PHP and all required modules, we need to adjust the <em>php.ini<\/em>, or the config of PHP. I\u2019m going to use the nano text-editor. Open the file with this command:<\/p>\n\n\n\n<p><code>nano \/etc\/php\/8.0\/apache2\/php.ini&nbsp;<\/code><\/p>\n\n\n\n<p>And don&#8217;t forget to change these parameters:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>memory_limit = 1024M<\/strong><\/li>\n\n\n<li><strong>upload_max_filesize = 16G<\/strong>&nbsp;<\/li>\n\n\n<li><strong>post_max_size = 16G<\/strong>&nbsp;<\/li>\n\n\n<li><strong>date.timezone = Europe\/Berlin<\/strong><\/li>\n\n<\/ul>\n\n\n\n<p><em>Hint: You can press <strong>[CTRL+W]<\/strong> to open a search-field in which you can search for these parameters (e.g., memory_limit). Hit [Enter] to jump to the exact line. With this method, you don\u2019t need to scroll through the whole config to find the values.<\/em><\/p>\n\n\n\n<p>After you&#8217;ve changed the parameters, save the file with <strong>[CTRL+O]<\/strong> and exit the editor with<strong> [CTRL+X]<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-3-setting-up-a-database\">Step 3: Setting up a Database&nbsp;<\/h2>\n\n\n\n<p>Nextcloud will store things like userinfo in a database. Therefore, we need to create one by using <a href=\"https:\/\/mariadb.org\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">MariaDB<\/a>.<\/p>\n\n\n\n<p>You have to first log in to the database software with this command:&nbsp;<\/p>\n\n\n\n<p><code>mysql \u2013u root \u2013p&nbsp;<\/code><\/p>\n\n\n\n<p>Then, you&#8217;ll need to enter your root-password. <\/p>\n\n\n\n<p>With this command you can create the database:<\/p>\n\n\n\n<p><code>create database nextcloud;<\/code><\/p>\n\n\n\n<p>Now we will create a database user with this command:<\/p>\n\n\n\n<p><code>create user \u2018nextcloud\u2019@\u2019localhost\u2019 identified by \u2018PASSWORD\u2019;<\/code><\/p>\n\n\n\n<p><strong>IMPORTANT: <\/strong>Please set a secure password by replacing <em>PASSWORD<\/em> in the command above. Make sure to leave the apostrophe in front and behind your password (you could use a password manager like <a href=\"https:\/\/contabo.com\/blog\/bitwarden-self-hosting-vps\/\" target=\"_blank\" rel=\"noreferrer noopener\">Bitwarden self-hosted on a VPS<\/a> for even more security).<\/p>\n\n\n\n<p>Now give the database user access to the nextcloud database with this command:&nbsp;<\/p>\n\n\n\n<p><code>grant all privileges on nextcloud.* to \u2018nextcloud\u2019@\u2019localhost\u2019;<\/code><\/p>\n\n\n\n<p>And refresh the database with this command:&nbsp;<\/p>\n\n\n\n<p><code>flush privileges;<\/code><\/p>\n\n\n\n<p>This creates the database and database user. You can exit the database software with this command:<\/p>\n\n\n\n<p><code>exit;<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-4-download-nextcloud-files\">Step 4: Download Nextcloud Files<\/h2>\n\n\n\n<p>It&#8217;s now time to download the actual Nextcloud files. To do so, use this command:<\/p>\n\n\n\n<p><code>cd \/tmp &amp;&amp; wget https:\/\/download.nextcloud.com\/server\/releases\/latest.zip&nbsp;<\/code><\/p>\n\n\n\n<p>Because the downloaded file is a .zip-Archive, we need to unzip it first with this command:&nbsp;<\/p>\n\n\n\n<p><code>unzip latest.zip<\/code><\/p>\n\n\n\n<p>After unzipping, you can remove the .zip-Archive with this command:<\/p>\n\n\n\n<p><code>rm latest.zip<\/code><\/p>\n\n\n\n<p>Move the unzipped Nextcloudfolder to its correct position with this command:<\/p>\n\n\n\n<p><code>mv nextcloud \/var\/www<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-5-configure-apache2\">Step 5: Configure Apache2<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-activate-necessary-modules\">Activate Necessary Modules<\/h3>\n\n\n\n<p>You&#8217;ll need to activate some Nextcloud required modules in Apache2&#8217;s default configuration. Use this command to do so:<\/p>\n\n\n\n<p><code>a2enmod rewrite headers env dir mime<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-step-5a-setting-up-a-reverse-proxy\">Step 5A: Setting up a reverse-proxy&nbsp;<\/h3>\n\n\n\n<p>In order to tell Apache2 that there is a Nextcloud instance running at a specific location, we need to set up a reverse-proxy.<\/p>\n\n\n\n<p>To do so, we are again using the nano-text editor to create this reverse-proxy. Use this command to create the config:<\/p>\n\n\n\n<p><code>nano \/etc\/apache2\/sites-available\/nextcloud.conf&nbsp;<\/code><\/p>\n\n\n\n<p>Now paste in the following content:&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;VirtualHost *:80&gt; \n\n     ServerAdmin &lt;YourEmail&gt; \n\n     DocumentRoot \/var\/www\/nextcloud\/ \n\n     ServerName &lt;Your(sub)Domain&gt; \n\n     Alias \/nextcloud \"\/var\/www\/nextcloud\/\" \n\n  \n\n     &lt;Directory \/var\/www\/nextcloud\/&gt; \n\n        Options +FollowSymlinks \n\n        AllowOverride All \n\n        Require all granted \n\n          &lt;IfModule mod_dav.c&gt; \n\n            Dav off \n\n          &lt;\/IfModule&gt; \n\n        SetEnv HOME \/var\/www\/nextcloud \n\n        SetEnv HTTP_HOME \/var\/www\/nextcloud \n\n     &lt;\/Directory&gt; \n\n  \n\n     ErrorLog ${APACHE_LOG_DIR}\/error.log \n\n     CustomLog ${APACHE_LOG_DIR}\/access.log combined \n\n  \n\n&lt;\/VirtualHost&gt; <\/code><\/pre>\n\n\n\n<p><strong>IMPORTANT:<\/strong> You need to replace <em>&lt;YourEmail&gt;<\/em> in the second line with a valid email address. The brackets in front of and behind your email address (&#8220;&lt;&#8221; and &#8220;&gt;&#8221;) need to be removed.<\/p>\n\n\n\n<p>Moreover, you need to replace <em>&lt;Your(sub)Domain&gt;<\/em> in the fourth line with your acutal (sub)domain (don&#8217;t forget to remove the brackets!).&nbsp;<\/p>\n\n\n\n<p>After changing these two things, save the file with <strong>[CTRL+O]<\/strong> and exit the editor with <strong>[CTRL+X]<\/strong>.<\/p>\n\n\n\n<p>You can activate your config with the following command:&nbsp;<\/p>\n\n\n\n<p><code>a2ensite nextcloud.conf<\/code><\/p>\n\n\n\n<p>You&#8217;ll need to restart the whole web server with this command in order for the changes to take effect:&nbsp;<\/p>\n\n\n\n<p><code>systemctl restart apache2<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-6-optional-create-a-data-folder\">Step 6 (optional): Create a Data Folder<\/h2>\n\n\n\n<p>By default, Nextcloud will store all uploaded data in the installation directory of your Nextcloud instance. If you want, you can create a separate location for all uploaded data (note this step is fully optional). You can use this command to indicate where you want to create the uploaded data folder:<\/p>\n\n\n\n<p><code>mkdir \/home\/data<\/code><\/p>\n\n\n\n<p>For the purposes of this tutorial, I chose <em>\/home\/data<\/em> as my uploaded files&#8217; location. You&#8217;re more than welcome to choose a different location \u2013 just adjust the command.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-7-adjust-permissions\">Step 7: Adjust Permissions&nbsp;<\/h2>\n\n\n\n<p>In order for Apache2 (the web server) to access the Nextcloud files, we&#8217;ll need to adjust a few permissions.<\/p>\n\n\n\n<p>Use these commands to adjust the permissions:<\/p>\n\n\n\n<p><code>chown -R www-data:www-data \/var\/www\/nextcloud&nbsp;<\/code><\/p>\n\n\n\n<p><code>chmod -R 755 \/var\/www\/nextcloud<\/code><\/p>\n\n\n\n<p>Note that you&#8217;ll need to change your permissions for the uploaded data folder if you created said folder in the previous optional step. Use this command to change permissions for the folder:<\/p>\n\n\n\n<p><code>chown \u2013R www-data:www-data \/home\/data<\/code><\/p>\n\n\n\n<p>If you\u2019ve chosen a different location than <em>\/home\/data<\/em> (except the default one), then adjust the path in the command above.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-8-install-ssl-certificate-via-certbot\">Step 8: Install SSL Certificate via Certbot<\/h2>\n\n\n\n<p>SSL certificates are one of the &#8220;must implement&#8221; security measures, especially for securing data transfer or login data. In this tutorial, we use Certbot, which lets you generate <a href=\"https:\/\/certbot.eff.org\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">free Let\u2019s Encrypt certificates<\/a> that are valid for 90 days.<\/p>\n\n\n\n<p>Use this command to install Certbot:<\/p>\n\n\n\n<p><code>apt install certbot python3-certbot-apache -y<\/code><\/p>\n\n\n\n<p>After installing Certbot, start the program with this command:&nbsp;<\/p>\n\n\n\n<p><code>certbot --apache<\/code><\/p>\n\n\n\n<p>Note that when you start the program for the first time, you&#8217;ll need to agree to some license terms &amp; conditions (y&#8217;know, the usual &#8220;sign your soul away to use the program&#8221; terms &amp; conditions).<\/p>\n\n\n\n<p>You should now see a list of all of your active websites (e.g., <em>cloud.domain.com<\/em> or <em>ilovethistutorial.com<\/em>).<\/p>\n\n\n\n<p>In this following step, you&#8217;ll need to type in the correct number to select the site you want to install a certificate for, and choose <em>Redirect<\/em> (Option 2 in the next menu.)<\/p>\n\n\n\n<p>After this is all complete, you can sit back and marvel at the fruits of your labor: you now have a SSL certificate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-step-9-last-step-finish-nextcloud-installation-in-browser\">Step 9 (last step!): Finish Nextcloud Installation in Browser<\/h2>\n\n\n\n<p>The last thing you need to do is finalize the installation via your browser.<\/p>\n\n\n\n<p>Just enter your (sub)domain into your browser&#8217;s address bar.&nbsp;<\/p>\n\n\n\n<p>You&#8217;ll then see these fields:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1053\" height=\"948\" src=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/nextcloud_guide_en.jpg\" alt=\"There are four steps to finalizing your Nextcloud instance installation.\" class=\"wp-image-13916\" srcset=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/nextcloud_guide_en.jpg 1053w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/nextcloud_guide_en-600x540.jpg 600w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/nextcloud_guide_en-768x691.jpg 768w\" sizes=\"auto, (max-width: 1053px) 100vw, 1053px\" \/><figcaption class=\"wp-element-caption\">The last four steps of installing your Nextcloud instance in your browser.<\/figcaption><\/figure>\n\n\n\n<p>These last four steps are straightforward as you see in the screenshot. Here they are written out for easier reference:<\/p>\n\n\n\n<p>1) Create an admin account.<\/p>\n\n\n\n<p>2 (Optional): If you chose a separate location for your uploaded data, then you&#8217;ll need to provide the path of this location. Otherwise, leave it as it is.&nbsp;<\/p>\n\n\n\n<p>3) Enter your database credentials:<\/p>\n\n\n\n<p>U<em>ser: nextcloud<\/em><\/p>\n\n\n\n<p>P<em>assword: PASSWORD<\/em>&nbsp;<\/p>\n\n\n\n<p><em>Name: nextcloud<\/em><\/p>\n\n\n\n<p><em>Since the database runs on the same server as this Nextcloud instance, you can leave the localhost-part as<\/em> <em>is.<\/em><\/p>\n\n\n\n<p>4) Click &#8220;Install&#8221;.<\/p>\n\n\n\n<p>This menu appears after you click &#8220;Install&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"897\" height=\"912\" src=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_j6wGxxXE4y.jpg\" alt=\"Nextcloud recommended apps might be worth installing for your server.\" class=\"wp-image-13811\" srcset=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_j6wGxxXE4y.jpg 897w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_j6wGxxXE4y-590x600.jpg 590w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_j6wGxxXE4y-768x781.jpg 768w\" sizes=\"auto, (max-width: 897px) 100vw, 897px\" \/><figcaption class=\"wp-element-caption\">Nextcloud has a ton of great apps to explore.<\/figcaption><\/figure>\n\n\n\n<p>Here, you can choose if you want Nextcloud to install the listed recommended apps or not.<br><br>After you decide, you&#8217;ll then see this screen, which confirms you&#8217;ve successfully set up Nextcloud on your VPS! Congratulations on the successful Nextcloud VPS install (and for making it through this tutorial).<br><br>You can check out <a href=\"https:\/\/contabo.com\/blog\/tutorials\/\" target=\"_blank\" rel=\"noreferrer noopener\">more tutorials<\/a>, or spin up another <a href=\"https:\/\/contabo.com\/en\/vps\/\" target=\"_blank\" rel=\"noreferrer noopener\">VPS server<\/a> to tinker with and self-host other apps.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"955\" src=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_shysPmqtDE.jpg\" alt=\"The installation screen confirming you've successfully installed Nextcloud.\" class=\"wp-image-13813\" srcset=\"https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_shysPmqtDE.jpg 1919w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_shysPmqtDE-600x299.jpg 600w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_shysPmqtDE-768x382.jpg 768w, https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/firefox_shysPmqtDE-1536x764.jpg 1536w\" sizes=\"auto, (max-width: 1919px) 100vw, 1919px\" \/><figcaption class=\"wp-element-caption\">Woohoo for the Nextcloud successful installation screen!<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Nextcloud is a popular Open Source productivity platform among the self-hosting community. This tutorial will teach you how to install Nextcloud on VPS. We&#8217;ve included both a step-by-step video guide and written tutorial.<\/p>\n","protected":false},"author":50,"featured_media":13886,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[18],"tags":[894],"ppma_author":[1491],"class_list":["post-13805","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-vps"],"uagb_featured_image_src":{"full":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg",1200,630,false],"thumbnail":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1-150x150.jpg",150,150,true],"medium":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1-600x315.jpg",600,315,true],"medium_large":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1-768x403.jpg",768,403,true],"large":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg",1200,630,false],"1536x1536":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg",1200,630,false],"2048x2048":["https:\/\/contabo.com\/blog\/wp-content\/uploads\/2022\/05\/blog-head_1200x630_nextcloud-1.jpg",1200,630,false]},"uagb_author_info":{"display_name":"Tobias Mildenberger","author_link":"https:\/\/contabo.com\/blog\/author\/tobias\/"},"uagb_comment_info":0,"uagb_excerpt":"Nextcloud is a popular Open Source productivity platform among the self-hosting community. This tutorial will teach you how to install Nextcloud on VPS. We've included both a step-by-step video guide and written tutorial.","authors":[{"term_id":1491,"user_id":50,"is_guest":0,"slug":"tobias","display_name":"Tobias Mildenberger","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/077178d5dce6c3d4c0c0396857a7e544bfdf8adf04145fff5160b33a22e28b1f?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/posts\/13805","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/users\/50"}],"replies":[{"embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/comments?post=13805"}],"version-history":[{"count":0,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/posts\/13805\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/media\/13886"}],"wp:attachment":[{"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/media?parent=13805"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/categories?post=13805"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/tags?post=13805"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/contabo.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=13805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}