{"id":8,"date":"2022-10-07T16:14:20","date_gmt":"2022-10-07T16:14:20","guid":{"rendered":"https:\/\/wroberts.me\/?p=8"},"modified":"2022-12-08T09:08:28","modified_gmt":"2022-12-08T19:08:28","slug":"bookstack-a-self-hosted-documentation-platform","status":"publish","type":"post","link":"https:\/\/wroberts.me\/?p=8","title":{"rendered":"Bookstack &#8211; A Self-Hosted Wiki"},"content":{"rendered":"\n<p>What platform do you use for taking notes? For a long time, I&#8217;ve used Evernote since it offered a lot of features in terms of categorization and the ability to easily copy articles from the internet for reading later. While there are other notable options out such as Notion and Obsidian, I decided to go with a self-hosted solution. This way, I can use it as a fun learning project on how to host services on a Linux server. I decided to go with the self-hosted wiki software called Bookstack.  This article will show how to setup Bookstack on a virtual machine hosted on a Proxmox server.<\/p>\n\n\n\n<p>Bookstack is a self-hosted wiki platform with a library theme. Your wiki pages are pages in books. You can organize the pages in these books into chapters. You can then take these books and place them on shelves for further categorization. You can even place the same book on multiple shelves if you desire. For my purposes, I&#8217;m using Bookstack as a documentation platform for write-ups on setting up my homelab as well as storing notes on various topics, mainly cybersecurity, networking, and programming.<\/p>\n\n\n\n<p>The website for Bookstack can be found here:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.bookstackapp.com\/\">https:\/\/www.bookstackapp.com\/<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LXC_Creation\"><\/span>LXC Creation<span class=\"ez-toc-section-end\"><\/span><\/h2><div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" 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: #999;color:#999\" 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><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/wroberts.me\/?p=8\/#LXC_Creation\" >LXC Creation<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/wroberts.me\/?p=8\/#Downloading_a_Container_Image\" >Downloading a Container Image<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/wroberts.me\/?p=8\/#General_Tab\" >General Tab<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/wroberts.me\/?p=8\/#Choose_a_Container_Template\" >Choose a Container Template<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/wroberts.me\/?p=8\/#Disk_Creation\" >Disk Creation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/wroberts.me\/?p=8\/#CPU_Settings\" >CPU Settings<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/wroberts.me\/?p=8\/#Memory_Settings\" >Memory Settings<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/wroberts.me\/?p=8\/#Network_Settings\" >Network Settings<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/wroberts.me\/?p=8\/#DNS_Settings\" >DNS Settings<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/wroberts.me\/?p=8\/#Confirmation\" >Confirmation<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/wroberts.me\/?p=8\/#Installing_Bookstack\" >Installing Bookstack<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/wroberts.me\/?p=8\/#Initial_Setup\" >Initial Setup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/wroberts.me\/?p=8\/#Update_the_System\" >Update the System<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/wroberts.me\/?p=8\/#Disable_Root_Login\" >Disable Root Login<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/wroberts.me\/?p=8\/#Install_Bookstack\" >Install Bookstack<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/wroberts.me\/?p=8\/#Accessing_Bookstack\" >Accessing Bookstack<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Downloading_a_Container_Image\"><\/span>Downloading a Container Image<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>I&#8217;m choosing to use a LXC container as opposed to a complete virtual machine since Bookstack will be the only service running on this machine. LXC containers act like light virtual machines as they share the host kernel but do not require the memory and disk requirements of a full virtual machine. This makes these sorts of containers suitable for running a light application like Bookstack. Also, Proxmox comes with container images by default, making spinning up machines fast and simple.<\/p>\n\n\n\n<p>The first thing we need to do is download an image. Click on your storage device at the bottom of the list on the left-hand side. In my case, it is &#8220;local-pve.&#8221; Then, click &#8220;CT Templates.&#8221; Then, click templates. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10-1024x555.png\" alt=\"\" class=\"wp-image-55\" width=\"880\" height=\"476\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-10.png 1920w\" sizes=\"auto, (max-width: 880px) 100vw, 880px\" \/><\/figure>\n<\/div>\n\n\n<p>Proxmox has containers for a wide range of distros but for this application, we&#8217;ll be using the Ubuntu 22.04 image. Click on the image and hit download. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11-1024x555.png\" alt=\"\" class=\"wp-image-56\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-11.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>After the download is finished, click &#8220;Create CT&#8221; in the upper right-hand corner.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"General_Tab\"><\/span>General Tab<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>In the first screen, create a name for the container and enter a secure password for login. Hit next.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1024x555.png\" alt=\"\" class=\"wp-image-26\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">LXC Container Creation<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Choose_a_Container_Template\"><\/span>Choose a Container Template<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>For this machine, we&#8217;ll use an Ubuntu 22.04 container image. Hit next.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1-1024x555.png\" alt=\"\" class=\"wp-image-28\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-1.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Ubuntu 22.04 Template<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Disk_Creation\"><\/span>Disk Creation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Choose where the machine will be stored and the size of the disk. Hit next. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2-1024x555.png\" alt=\"\" class=\"wp-image-29\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-2.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">8GB of storage is enough for now. It can resized later if needed.<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"CPU_Settings\"><\/span>CPU Settings<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Since this machine will only be used to host the wiki page, one core will be enough. Hit next.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3-1024x555.png\" alt=\"\" class=\"wp-image-30\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-3.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Memory_Settings\"><\/span>Memory Settings<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>We&#8217;ll use the default memory settings since Bookstack isn&#8217;t a memory intensive service.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4-1024x555.png\" alt=\"\" class=\"wp-image-31\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-4.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Network_Settings\"><\/span>Network Settings<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>On this screen, we&#8217;re going to configure the IP address of our wiki. We&#8217;re going to give this machine a static IP address since we don&#8217;t want the IP address used to access this machine to change. For my network, I want this machine to have an IP address of 10.80.80.10. In the IPv4\/CIDR field, I&#8217;m going to put 10.80.80.10\/24 since I want this machine on the 10.80.80.0\/24 network. The default gateway is the IP address of the router&#8217;s interface on this network. You will have to adjust your network settings to match your own network&#8217;s subnet. Remember the IP address of this machine, it will be needed later.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5-1024x555.png\" alt=\"\" class=\"wp-image-32\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-5.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Set static IP and gateway<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"DNS_Settings\"><\/span>DNS Settings<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>We&#8217;ll leave the DNS settings as they are. We want this machine to use the same DNS settings as the Proxmox host.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6-1024x555.png\" alt=\"\" class=\"wp-image-33\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-6.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Use same DNS settings as Proxmox host<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Confirmation\"><\/span>Confirmation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Review the confirmation screen and hit finish.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7-1024x555.png\" alt=\"\" class=\"wp-image-37\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-7.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Finished<\/figcaption><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Installing_Bookstack\"><\/span>Installing Bookstack<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Initial_Setup\"><\/span>Initial Setup<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Now that the container is created, we can start the machine. Click on &#8220;Bookstack&#8221; (or whichever named you picked for this machine) and then click start.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12-1024x555.png\" alt=\"\" class=\"wp-image-58\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-12.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Initial screen at startup<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Log in as root and the password will be what you provided earlier when creating the container.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13-1024x555.png\" alt=\"\" class=\"wp-image-59\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-13.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Logged in<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Update_the_System\"><\/span>Update the System<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The first thing we&#8217;ll do is update the system with the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt update &amp;&amp; apt upgrade -y<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14-1024x555.png\" alt=\"\" class=\"wp-image-60\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-14.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><br>System updating<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Disable_Root_Login\"><\/span>Disable Root Login<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>As a security practice, we&#8217;re going to disable root logins and create a user account with sudo privileges. Run the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>adduser &lt;username&gt;<\/code><\/pre>\n\n\n\n<p>Enter the name you want for the account after &#8220;adduser&#8221; without the brackets.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15-1024x555.png\" alt=\"\" class=\"wp-image-61\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-15.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>You will be asked to provide a password for this account followed by identifying information. The additional information is optional so feel free to leave it blank by hitting enter.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16-1024x555.png\" alt=\"\" class=\"wp-image-62\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-16.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Next, we&#8217;ll add this user to the sudo group so it can use the sudo command. Run the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>usermod -aG sudo &lt;username&gt;<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17-1024x555.png\" alt=\"\" class=\"wp-image-65\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-17.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Next, we&#8217;ll confirm the user is included in the sudoers group with the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo -l -U &lt;username&gt;<\/code><\/pre>\n\n\n\n<p>The line (ALL : ALL) ALL under confirms the user was successfully added to the sudo group.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18-1024x555.png\" alt=\"\" class=\"wp-image-66\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-18.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Now that we have confirmed the new user can use sudo, we can disable root login. Run the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  passwd -l root<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19-1024x555.png\" alt=\"\" class=\"wp-image-68\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-19.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Type in &#8220;logout&#8221; to log out of root. If you try to log in as root again, you won&#8217;t be able to.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20-1024x555.png\" alt=\"\" class=\"wp-image-69\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-20.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Log in as the user you created.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21-1024x555.png\" alt=\"\" class=\"wp-image-70\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-21.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Install_Bookstack\"><\/span>Install Bookstack<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Installing Bookstack is straightforward. Run the following three commands:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Download the script\nwget https:\/\/raw.githubusercontent.com\/BookStackApp\/devops\/main\/scripts\/installation-ubuntu-22.04.sh\n\n# Make it executable\nchmod a+x installation-ubuntu-22.04.sh\n\n# Run the script with admin permissions\nsudo .\/installation-ubuntu-22.04.sh<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22-1024x555.png\" alt=\"\" class=\"wp-image-72\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-22.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Download the script<\/figcaption><\/figure>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23-1024x555.png\" alt=\"\" class=\"wp-image-73\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-23.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Make it executable<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24-1024x555.png\" alt=\"\" class=\"wp-image-74\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-24.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Run the script<\/figcaption><\/figure>\n<\/div>\n\n\n<p>After inputting the commands, you will be asked for a domain or IP address to host Bookstack on. We are not using a domain for this machine, so use the IP address used when configuring the network for this machine. It should be the same IP provided in the output after running the script. In my case, it is 10.80.80.10. Hit enter and wait for it to finish installing.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25-1024x555.png\" alt=\"\" class=\"wp-image-75\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-25.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26-1024x555.png\" alt=\"\" class=\"wp-image-76\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-26.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Installing<\/figcaption><\/figure>\n<\/div>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28-1024x555.png\" alt=\"\" class=\"wp-image-79\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-28.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Finished<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Accessing_Bookstack\"><\/span>Accessing Bookstack<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Open a browser and use the IP address of the machine to access the login page. The default credentials are admin@admin.com and password.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29-1024x555.png\" alt=\"\" class=\"wp-image-80\" width=\"880\" height=\"476\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-29.png 1920w\" sizes=\"auto, (max-width: 880px) 100vw, 880px\" \/><figcaption class=\"wp-element-caption\">Log in page<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30-1024x576.png\" alt=\"\" class=\"wp-image-81\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30-1024x576.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30-300x169.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30-768x432.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30-1536x864.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-30.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Congratulations! You now have your own personal wiki platform. As a first step, you should change your admin credentials by clicking on admin in the top-right corner. We won&#8217;t be going all of the features of Bookstack but we&#8217;ll start with creating a new book and page. On the home screen, click on &#8220;Books.&#8221; Then, on the following screen, hit &#8220;Create New Book&#8221; on the right.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31-1024x555.png\" alt=\"\" class=\"wp-image-82\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-31.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Create book<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Besides a title and description, you can add cover images and tags to your books for organization.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35-1024x555.png\" alt=\"\" class=\"wp-image-86\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-35.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>On the next screen, you see you can add a page to your new book. This is where you&#8217;ll add your content. Chapters allow you to group these pages together. For example, I can create a Security+ book with notes for the exam. Each chapter can have pages of notes based on different subjects such as encryption, hashing, or frameworks.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"555\" src=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36-1024x555.png\" alt=\"\" class=\"wp-image-87\" srcset=\"https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36-1024x555.png 1024w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36-300x163.png 300w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36-768x416.png 768w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36-1536x832.png 1536w, https:\/\/wroberts.me\/wp-content\/uploads\/2022\/10\/image-36.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Book overview<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Bookstack offers a ton of features that are too extensive to cover in this article. The documentation can be found here: <a href=\"https:\/\/www.bookstackapp.com\/docs\/\">https:\/\/www.bookstackapp.com\/docs\/<\/a>. <\/p>\n\n\n\n<p>Thanks for reading. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>What platform do you use for taking notes? For a long time, I&#8217;ve used Evernote since it offered a lot of features in terms of categorization and the ability to easily copy articles from the internet for reading later. While there are other notable options out such as Notion and Obsidian, I decided to go &#8230; <a href=\"https:\/\/wroberts.me\/?p=8\" class=\"more-link\">Read More<span class=\"screen-reader-text\"> &#8220;Bookstack &#8211; A Self-Hosted Wiki&#8221;<\/span> &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":41,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"series":[],"class_list":["post-8","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-home-lab"],"_links":{"self":[{"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/posts\/8","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8"}],"version-history":[{"count":34,"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/posts\/8\/revisions"}],"predecessor-version":[{"id":849,"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/posts\/8\/revisions\/849"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=\/wp\/v2\/media\/41"}],"wp:attachment":[{"href":"https:\/\/wroberts.me\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/wroberts.me\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=8"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}