{"id":41979,"date":"2025-12-12T15:11:27","date_gmt":"2025-12-12T14:11:27","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=41979"},"modified":"2025-12-12T15:11:27","modified_gmt":"2025-12-12T14:11:27","slug":"what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/","title":{"rendered":"What is Forgejo and getting it up and running on FreeBSD 15"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">In recent customer projects I had less to do with PostgreSQL but more with reviewing infrastructures and give recommendations about what and how to improve. In all of those projects <a href=\"https:\/\/about.gitlab.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">GitLab<\/a> is used in one way or the other. Some only use it for managing their code in Git and work on issues, others use pipelines to build their stuff, and others almost use the full set of features. Gitlab is a great product, but sometimes you do not need the full set of features so I started to look for alternatives mostly because of my own interest. One of the more popular choices seemed to be <a href=\"https:\/\/about.gitea.com\/\">Gitea<\/a> but as a <a href=\"https:\/\/blog.gitea.com\/a-message-from-lunny-on-gitea-ltd.-and-the-gitea-project\/\" target=\"_blank\" rel=\"noreferrer noopener\">company was created<\/a> around it, a fork was created and this is <a href=\"https:\/\/forgejo.org\" target=\"_blank\" rel=\"noreferrer noopener\">Forgejo<\/a>. The <a href=\"https:\/\/forgejo.org\/faq\/\" target=\"_blank\" rel=\"noreferrer noopener\">FAQ<\/a> summarizes the most important topics around the project pretty well, so please read it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As <a href=\"https:\/\/www.freebsd.org\/releases\/15.0R\/announce\/\" target=\"_blank\" rel=\"noreferrer noopener\">FreeBSD 15<\/a> was released on 2. December that&#8217;s the perfect chance to get that up and running there and have a look how it feels like. I am not going into the installation of FreeBSD 15, this really is straight forward. I just want to mention that I opted for the &#8220;packaged base system&#8221; instead of the distributions sets which is currently in tech preview. What that means is that the whole system is installed and managed with packages and you don&#8217;t need <a href=\"https:\/\/man.freebsd.org\/cgi\/man.cgi?freebsd-update\" target=\"_blank\" rel=\"noreferrer noopener\">freebsd-update<\/a> anymore. Although it is still available, it will not work anymore if you try to use it:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,11]; title: ; notranslate\" title=\"\">\nroot@forgejo:~ $ cat \/etc\/os-release \nNAME=FreeBSD\nVERSION=&quot;15.0-RELEASE&quot;\nVERSION_ID=&quot;15.0&quot;\nID=freebsd\nANSI_COLOR=&quot;0;31&quot;\nPRETTY_NAME=&quot;FreeBSD 15.0-RELEASE&quot;\nCPE_NAME=&quot;cpe:\/o:freebsd:freebsd:15.0&quot;\nHOME_URL=&quot;https:\/\/FreeBSD.org\/&quot;\nBUG_REPORT_URL=&quot;https:\/\/bugs.FreeBSD.org\/&quot;\nroot@forgejo:~ $ freebsd-update fetch\nfreebsd-update is incompatible with the use of packaged base.  Please see\nhttps:\/\/wiki.freebsd.org\/PkgBase for more information.\n\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Coming back to Forgejo: On FreeBSD this is available as a package, so you can just go ahead and install it:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,6,25]; title: ; notranslate\" title=\"\">\nroot@forgejo:~$ pkg search forgejo\nforgejo-13.0.2_1               Compact self-hosted Git forge\nforgejo-act_runner-9.1.0_2     Act runner is a runner for Forgejo based on the Gitea Act runner\nforgejo-lts-11.0.7_1           Compact self-hosted Git forge\nforgejo7-7.0.14_3              Compact self-hosted Git service\nroot@forgejo:~ $ pkg install forgejo\nUpdating FreeBSD-ports repository catalogue...\nFreeBSD-ports repository is up to date.\nUpdating FreeBSD-ports-kmods repository catalogue...\nFreeBSD-ports-kmods repository is up to date.\nUpdating FreeBSD-base repository catalogue...\nFreeBSD-base repository is up to date.\nAll repositories are up to date.\nThe following 32 package(s) will be affected (of 0 checked):\n\nNew packages to be INSTALLED:\n        FreeBSD-clibs-lib32: 15.0 &#x5B;FreeBSD-base]\n        brotli: 1.1.0,1 &#x5B;FreeBSD-ports]\n...\nNumber of packages to be installed: 32\n\nThe process will require 472 MiB more space.\n100 MiB to be downloaded.\n\nProceed with this action? &#x5B;y\/N]: y\nMessage from python311-3.11.13_1:\n\n--\nNote that some standard Python modules are provided as separate ports\nas they require additional dependencies. They are available as:\n\npy311-gdbm       databases\/py-gdbm@py311\npy311-sqlite3    databases\/py-sqlite3@py311\npy311-tkinter    x11-toolkits\/py-tkinter@py311\n=====\nMessage from git-2.51.0:\n\n--\nIf you installed the GITWEB option please follow these instructions:\n\nIn the directory \/usr\/local\/share\/examples\/git\/gitweb you can find all files to\nmake gitweb work as a public repository on the web.\n\nAll you have to do to make gitweb work is:\n1) Please be sure you&#039;re able to execute CGI scripts in\n   \/usr\/local\/share\/examples\/git\/gitweb.\n2) Set the GITWEB_CONFIG variable in your webserver&#039;s config to\n   \/usr\/local\/etc\/git\/gitweb.conf. This variable is passed to gitweb.cgi.\n3) Restart server.\n\n\nIf you installed the CONTRIB option please note that the scripts are\ninstalled in \/usr\/local\/share\/git-core\/contrib. Some of them require\nother ports to be installed (perl, python, etc), which you may need to\ninstall manually.\n=====\nMessage from git-lfs-3.6.1_8:\n\n--\nTo get started with Git LFS, the following commands can be used:\n\n  1. Setup Git LFS on your system. You only have to do this once per\n     repository per machine:\n\n     $ git lfs install\n\n  2. Choose the type of files you want to track, for examples all ISO\n     images, with git lfs track:\n\n     $ git lfs track &quot;*.iso&quot;\n\n  3. The above stores this information in gitattributes(5) files, so\n     that file needs to be added to the repository:\n\n     $ git add .gitattributes\n\n  4. Commit, push and work with the files normally:\n\n     $ git add file.iso\n     $ git commit -m &quot;Add disk image&quot;\n     $ git push\n=====\nMessage from forgejo-13.0.2_1:\n\n--\nBefore starting forgejo for the first time, you must set a number of\nsecrets in the configuration file. For your convenience, a sample file\nhas been copied to \/usr\/local\/etc\/forgejo\/conf\/app.ini.\n\nYou need to replace every occurence of CHANGE_ME in the file with\nsensible values. Please refer to the official documentation at\nhttps:\/\/forgejo.org for details.\n\nYou will also likely need to create directories for persistent storage.\nRun\n    su -m git -c &#039;forgejo doctor check&#039;\nto check if all prerequisites have been met.\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">What I really like with the FreeBSD packages is, that they usually give clear instructions on what to do. We&#8217;ll go with the web-based installer, so:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2,3,5,7]; title: ; notranslate\" title=\"\">\nroot@forgejo:~ $ chown git:git \/usr\/local\/etc\/forgejo\/conf\nroot@forgejo:~ $ rm \/usr\/local\/etc\/forgejo\/conf\/app.ini\nroot@forgejo:~ $ service -l | grep for\nforgejo\nroot@forgejo:~ $ service forgejo enable\nforgejo enabled in \/etc\/rc.conf\nroot@forgejo:~ $ service forgejo start\n2025\/12\/12 14:16:42 ...etting\/repository.go:318:loadRepositoryFrom() &#x5B;W] SCRIPT_TYPE &quot;bash&quot; is not on the current PATH. Are you sure that this is the correct SCRIPT_TYPE?\n\n&#x5B;1] Check paths and basic configuration\n - &#x5B;E] Failed to find configuration file at &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039;.\n - &#x5B;E] If you&#039;ve never ran Forgejo yet, this is normal and &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039; will be created for you on first run.\n - &#x5B;E] Otherwise check that you are running this command from the correct path and\/or provide a `--config` parameter.\n - &#x5B;E] Cannot proceed without a configuration file\nFAIL\nCommand error: stat \/usr\/local\/etc\/forgejo\/conf\/app.ini: no such file or directory\n\n2025\/12\/12 14:16:42 ...etting\/repository.go:318:loadRepositoryFrom() &#x5B;W] SCRIPT_TYPE &quot;bash&quot; is not on the current PATH. Are you sure that this is the correct SCRIPT_TYPE?\n\n&#x5B;1] Check paths and basic configuration\n - &#x5B;E] Failed to find configuration file at &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039;.\n - &#x5B;E] If you&#039;ve never ran Forgejo yet, this is normal and &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039; will be created for you on first run.\n - &#x5B;E] Otherwise check that you are running this command from the correct path and\/or provide a `--config` parameter.\n - &#x5B;E] Cannot proceed without a configuration file\nFAIL\nCommand error: stat \/usr\/local\/etc\/forgejo\/conf\/app.ini: no such file or directory\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Seems bash is somehow expected, but this is not available right now:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1]; title: ; notranslate\" title=\"\">\nroot@forgejo:~ $ which bash\nroot@forgejo:~ $ \n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Once more:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2,4,13]; title: ; notranslate\" title=\"\">\nroot@forgejo:~ $ pkg install bash\nroot@forgejo:~ $ service forgejo stop\nStopping forgejo.\nroot@forgejo:~ $ service forgejo start\n\n&#x5B;1] Check paths and basic configuration\n - &#x5B;E] Failed to find configuration file at &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039;.\n - &#x5B;E] If you&#039;ve never ran Forgejo yet, this is normal and &#039;\/usr\/local\/etc\/forgejo\/conf\/app.ini&#039; will be created for you on first run.\n - &#x5B;E] Otherwise check that you are running this command from the correct path and\/or provide a `--config` parameter.\n - &#x5B;E] Cannot proceed without a configuration file\nFAIL\nCommand error: stat \/usr\/local\/etc\/forgejo\/conf\/app.ini: no such file or directory\nroot@forgejo:~ $ service forgejo status\nforgejo is running as pid 3448.\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">The web installer is available on port 3000 and you can choose between the usual database backends:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"433\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-1024x433.png\" alt=\"\" class=\"wp-image-41996\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-1024x433.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-300x127.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-768x325.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805.png 1332w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">To keep it simple I went with SQLite3, kept everything at the default and provided the Administrator information further down the screen. Before the installer succeeded I had to create these two directories:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; highlight: [1,2,3,4]; title: ; notranslate\" title=\"\">\nroot@forgejo:~ $ mkdir \/usr\/local\/share\/forgejo\/data\/\nroot@forgejo:~ $ chown git:git \/usr\/local\/share\/forgejo\/data\/\nroot@forgejo:~ $ mkdir \/usr\/local\/share\/forgejo\/log\nroot@forgejo:~ $ chown git:git \/usr\/local\/share\/forgejo\/log\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Once that was done it went fine and this is the welcome screen:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"233\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416-1024x233.png\" alt=\"\" class=\"wp-image-41998\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416-1024x233.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416-300x68.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416-768x174.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416-1536x349.png 1536w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_144416.png 1902w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">As with the other tools in that area there are the common sections like &#8220;Issues&#8221;, &#8220;Pull requests&#8221;, and &#8220;Milestones&#8221;. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the next post we&#8217;re going to create an organization, a repository and try to create a simple, how GitLab calls it, pipeline.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In recent customer projects I had less to do with PostgreSQL but more with reviewing infrastructures and give recommendations about what and how to improve. In all of those projects GitLab is used in one way or the other. Some only use it for managing their code in Git and work on issues, others use&hellip;&nbsp;<\/p>\n","protected":false},"author":28,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","neve_meta_reading_time":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[4133,1320],"tags":[3777,2256],"class_list":["post-41979","post","type-post","status-publish","format-standard","hentry","category-database","category-devops","tag-forgejo","tag-freebsd"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.4 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>What is Forgejo and getting it up and running on FreeBSD 15 - dbi services | Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Forgejo and getting it up and running on FreeBSD 15\" \/>\n<meta property=\"og:description\" content=\"In recent customer projects I had less to do with PostgreSQL but more with reviewing infrastructures and give recommendations about what and how to improve. In all of those projects GitLab is used in one way or the other. Some only use it for managing their code in Git and work on issues, others use&hellip;&nbsp;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi services | Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dbiservices\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-12T14:11:27+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1332\" \/>\n\t<meta property=\"og:image:height\" content=\"563\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Open source Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dbiservices\" \/>\n<meta name=\"twitter:site\" content=\"@dbiservices\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Open source Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/\"},\"author\":{\"name\":\"Open source Team\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/0b4548362cac3eeff8b3eaf329e3530a\"},\"headline\":\"What is Forgejo and getting it up and running on FreeBSD 15\",\"datePublished\":\"2025-12-12T14:11:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/\"},\"wordCount\":419,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Screenshot_20251212_143805-1024x433.png\",\"keywords\":[\"Forgejo\",\"FreeBSD\"],\"articleSection\":[\"Database\",\"DevOps\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/\",\"name\":\"What is Forgejo and getting it up and running on FreeBSD 15 - dbi services | Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Screenshot_20251212_143805-1024x433.png\",\"datePublished\":\"2025-12-12T14:11:27+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Screenshot_20251212_143805.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Screenshot_20251212_143805.png\",\"width\":1332,\"height\":563},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is Forgejo and getting it up and running on FreeBSD 15\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi services Blog\",\"description\":\"#BeSharing\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\"},\"alternateName\":\"dbi Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\",\"name\":\"dbi services\",\"alternateName\":\"dbi\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/dbi-services-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/dbi-services-logo.png\",\"width\":512,\"height\":512,\"caption\":\"dbi services\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/dbiservices\\\/\",\"https:\\\/\\\/x.com\\\/dbiservices\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/dbi-services\\\/\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/dbiservices\"],\"description\":\"Swiss IT consulting and services company specialised in efficient data infrastructures and platforms: databases, application servers, cloud, DevOps, digitalization, analytics, data quality and monitoring. Headquartered in Del\u00e9mont with offices in Nyon, Basel, Bern and Zurich.\",\"email\":\"info@dbi-services.com\",\"telephone\":\"+41 32 422 96 00\",\"legalName\":\"dbi services SA\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/0b4548362cac3eeff8b3eaf329e3530a\",\"name\":\"Open source Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"caption\":\"Open source Team\"},\"description\":\"Posts published under the Open source Team account are collective contributions by the dbi services open infrastructure consultants. The practice covers open-source databases and platforms, PostgreSQL first of all, along with MySQL, MariaDB, and Linux, from architecture, replication, and high availability to performance tuning and operations under service level agreements, and contributes actively to the PostgreSQL community.\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/open-source-team\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is Forgejo and getting it up and running on FreeBSD 15 - dbi services | Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/","og_locale":"en_US","og_type":"article","og_title":"What is Forgejo and getting it up and running on FreeBSD 15","og_description":"In recent customer projects I had less to do with PostgreSQL but more with reviewing infrastructures and give recommendations about what and how to improve. In all of those projects GitLab is used in one way or the other. Some only use it for managing their code in Git and work on issues, others use&hellip;&nbsp;","og_url":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/","og_site_name":"dbi services | Blog","article_publisher":"https:\/\/www.facebook.com\/dbiservices\/","article_published_time":"2025-12-12T14:11:27+00:00","og_image":[{"width":1332,"height":563,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805.png","type":"image\/png"}],"author":"Open source Team","twitter_card":"summary_large_image","twitter_creator":"@dbiservices","twitter_site":"@dbiservices","twitter_misc":{"Written by":"Open source Team","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/"},"author":{"name":"Open source Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0b4548362cac3eeff8b3eaf329e3530a"},"headline":"What is Forgejo and getting it up and running on FreeBSD 15","datePublished":"2025-12-12T14:11:27+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/"},"wordCount":419,"commentCount":0,"publisher":{"@id":"https:\/\/www.dbi-services.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-1024x433.png","keywords":["Forgejo","FreeBSD"],"articleSection":["Database","DevOps"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/","url":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/","name":"What is Forgejo and getting it up and running on FreeBSD 15 - dbi services | Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805-1024x433.png","datePublished":"2025-12-12T14:11:27+00:00","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2025\/12\/Screenshot_20251212_143805.png","width":1332,"height":563},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/what-is-forgejo-and-getting-it-up-and-running-on-freebsd-15\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What is Forgejo and getting it up and running on FreeBSD 15"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi services Blog","description":"#BeSharing","publisher":{"@id":"https:\/\/www.dbi-services.com\/blog\/#organization"},"alternateName":"dbi Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.dbi-services.com\/blog\/#organization","name":"dbi services","alternateName":"dbi","url":"https:\/\/www.dbi-services.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2026\/09\/dbi-services-logo.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2026\/09\/dbi-services-logo.png","width":512,"height":512,"caption":"dbi services"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/dbiservices\/","https:\/\/x.com\/dbiservices","https:\/\/www.linkedin.com\/company\/dbi-services\/","https:\/\/www.youtube.com\/user\/dbiservices"],"description":"Swiss IT consulting and services company specialised in efficient data infrastructures and platforms: databases, application servers, cloud, DevOps, digitalization, analytics, data quality and monitoring. Headquartered in Del\u00e9mont with offices in Nyon, Basel, Bern and Zurich.","email":"info@dbi-services.com","telephone":"+41 32 422 96 00","legalName":"dbi services SA"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0b4548362cac3eeff8b3eaf329e3530a","name":"Open source Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","caption":"Open source Team"},"description":"Posts published under the Open source Team account are collective contributions by the dbi services open infrastructure consultants. The practice covers open-source databases and platforms, PostgreSQL first of all, along with MySQL, MariaDB, and Linux, from architecture, replication, and high availability to performance tuning and operations under service level agreements, and contributes actively to the PostgreSQL community.","url":"https:\/\/www.dbi-services.com\/blog\/author\/open-source-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/41979","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=41979"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/41979\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=41979"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=41979"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=41979"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}