{"id":2980,"date":"2026-02-20T00:27:25","date_gmt":"2026-02-20T05:27:25","guid":{"rendered":"https:\/\/csimmons.dev\/blog\/?p=2980"},"modified":"2026-02-20T00:37:46","modified_gmt":"2026-02-20T05:37:46","slug":"running-coldfusion-acf-or-lucee-on-raspberry-pi-5","status":"publish","type":"post","link":"https:\/\/csimmons.dev\/blog\/2026\/02\/running-coldfusion-acf-or-lucee-on-raspberry-pi-5\/","title":{"rendered":"Running ColdFusion (ACF or Lucee) on Raspberry Pi 5"},"content":{"rendered":"<p>It&#8217;s been ages since I have had the time to tinker with any of my Raspberry Pis. In fact playing old games with my son using <a href=\"https:\/\/retropie.org.uk\/\" target=\"_blank\" rel=\"noopener\">Retro Pi<\/a> is probably 90% of the interaction in the last 3-4 years. Last week I was cleaning up some old &#8220;tech stuff&#8221; around my home office and came across my Raspberry Pi 5 unplugged and shelved. Barely an hour later I was running ColdFusion on it (of course by way of <a href=\"https:\/\/commandbox.ortusbooks.com\" target=\"_blank\" rel=\"noopener\">CommandBox<\/a>).<\/p>\n<p>I&#8217;m not going to go through all the details on how to get a Raspberry Pi up and running. There are plenty of videos and tutorials for that. What I&#8217;d like to<br \/>\nprovide is a slight update to the 4 commands necessary to install CommandBox on the current OS &#8211; Raspbian GNU\/Linux 13 (trixie). I found this in the <strong>Linux apt-get \u2192 Stable<\/strong> section of the <a href=\"https:\/\/commandbox.ortusbooks.com\/setup\/installation\" target=\"_blank\" rel=\"noopener\">CommandBox documentation<\/a>. I added the comments.<\/p>\n<pre>\n    # 1. Downloads Ortus Solutions' repository GPG signing key,\n    #    converts it to a trusted keyring format, and installs it\n    #    so your system can verify packages from that repo are authentic.\n    curl -fsSl https:\/\/downloads.ortussolutions.com\/debs\/gpg | gpg --dearmor | sudo tee \/usr\/share\/keyrings\/ortussolutions.gpg > \/dev\/null\n\n\n    # 2. Adds the Ortus Solutions package repository to your system's\n    #    APT software sources list.\n    echo \"deb [signed-by=\/usr\/share\/keyrings\/ortussolutions.gpg] https:\/\/downloads.ortussolutions.com\/debs\/noarch \/\" \\\n    | sudo tee \/etc\/apt\/sources.list.d\/commandbox.list\n\n\n    # 3. Refreshes the package index and installs CommandBox\n    #    (plus HTTPS support for APT if needed).\n    sudo apt-get update && sudo apt-get install apt-transport-https commandbox\n\n    # 4. Install Java\n    sudo apt install default-jdk\n<\/pre>\n<p>Number 4 is really my only contribution here. The original command: <code>sudo apt install openjdk-11-jdk<\/code> results in an error since<br \/>\n<strong>openjdk-11-jdk no longer exists in the main repository<\/strong>. The command I provided installs the default which at the time of this writing is<br \/>\n<strong>openjdk-21<\/strong>. Below you can see the output of the original command and the updated one.<\/p>\n<figure id=\"attachment_2976\" aria-describedby=\"caption-attachment-2976\" style=\"width: 644px\" class=\"wp-caption alignnone\"><img width=\"654\" height=\"464\" data-public-id=\"install-java\/install-java.png\" loading=\"lazy\" decoding=\"async\" class=\"wp-post-2980 wp-image-2976 size-full\" src=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_654,h_464,c_scale\/f_auto,q_auto\/v1771564750\/install-java\/install-java.png?_i=AA\" alt=\"Install Java\" data-format=\"png\" data-transformations=\"f_auto,q_auto\" data-version=\"1771564750\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/f_auto,q_auto\/v1771564750\/install-java\/install-java.png?_i=AA 654w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_300,h_213,c_scale\/f_auto,q_auto\/v1771564750\/install-java\/install-java.png?_i=AA 300w\" sizes=\"auto, (max-width: 654px) 100vw, 654px\" \/><figcaption id=\"caption-attachment-2976\" class=\"wp-caption-text\">Install Java<\/figcaption><\/figure>\n<p>Once CommandBox was installed I fired up an instance of Adobe ColdFusion 2025. Screenshot was taken using Raspberry Pi Connect screen sharing. As a side note I<br \/>\nshowed <code>server.os.additionalInformation<\/code> for ACF since <code>server.os.name<\/code> reports as UNIX.<\/p>\n<figure id=\"attachment_2978\" aria-describedby=\"caption-attachment-2978\" style=\"width: 1014px\" class=\"wp-caption alignnone\"><img width=\"1024\" height=\"587\" data-public-id=\"acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png\" loading=\"lazy\" decoding=\"async\" class=\"wp-post-2980 wp-image-2978 size-large\" src=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_1024,h_587,c_scale\/f_auto,q_auto\/v1771564814\/acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png?_i=AA\" alt=\"ACF ColdFusion on Raspberry Pi 5\" data-format=\"png\" data-transformations=\"f_auto,q_auto\" data-version=\"1771564814\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_1024,h_587,c_scale\/f_auto,q_auto\/v1771564814\/acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png?_i=AA 1024w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_300,h_172,c_scale\/f_auto,q_auto\/v1771564814\/acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png?_i=AA 300w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_768,h_440,c_scale\/f_auto,q_auto\/v1771564814\/acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png?_i=AA 768w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/f_auto,q_auto\/v1771564814\/acf-coldfusion-on-raspberry-pi-5\/acf-coldfusion-on-raspberry-pi-5.png?_i=AA 1279w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-2978\" class=\"wp-caption-text\">ACF ColdFusion on Raspberry Pi 5<\/figcaption><\/figure>\n<p>Also fired up an instance of Lucee 5. Screenshot taken again using Raspberry Pi Connect screen sharing.<\/p>\n<figure id=\"attachment_2979\" aria-describedby=\"caption-attachment-2979\" style=\"width: 1014px\" class=\"wp-caption alignnone\"><img width=\"1024\" height=\"588\" data-public-id=\"lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png\" loading=\"lazy\" decoding=\"async\" class=\"wp-post-2980 wp-image-2979 size-large\" src=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_1024,h_588,c_scale\/f_auto,q_auto\/v1771564819\/lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png?_i=AA\" alt=\"Lucee ColdFusion on Raspberry Pi 5\" data-format=\"png\" data-transformations=\"f_auto,q_auto\" data-version=\"1771564819\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/ccsimmons\/images\/f_auto,q_auto\/v1771564819\/lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png?_i=AA 1276w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_300,h_172,c_scale\/f_auto,q_auto\/v1771564819\/lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png?_i=AA 300w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_1024,h_588,c_scale\/f_auto,q_auto\/v1771564819\/lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png?_i=AA 1024w, https:\/\/res.cloudinary.com\/ccsimmons\/images\/w_768,h_441,c_scale\/f_auto,q_auto\/v1771564819\/lucee-coldfusion-on-raspberry-pi-5\/lucee-coldfusion-on-raspberry-pi-5.png?_i=AA 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-2979\" class=\"wp-caption-text\">Lucee ColdFusion on Raspberry Pi 5<\/figcaption><\/figure>\n<p>I guess I&#8217;ve been away from the Raspberry Pi game for so long that I was pretty blown away by the new <a href=\"https:\/\/www.raspberrypi.com\/documentation\/services\/connect.html\" target=\"_blank\" rel=\"noopener\">Raspberry Pi Connect<\/a> remote-access service from the Raspberry Pi Foundation. This service lets you open and control your Raspberry Pi desktop from anywhere through a web browser \u2014 without port-forwarding, VPNs, or knowing your home IP address.<\/p>\n<p>Also of note, the <a href=\"https:\/\/www.raspberrypi.com\/software\/\" target=\"_blank\" rel=\"noopener\">Raspberry Pi Imager<\/a> is amazing. You can preconfigure settings such as WiFi network access, VNC, Hostname, and other settings as you create the image rather than digging around in config files or using <code>raspi-config<\/code> after the fact.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s been ages since I have had the time to tinker with any of my Raspberry Pis. In fact playing old games with my son using Retro Pi is probably 90% of the interaction in the last 3-4 years. Last week I was cleaning up some old &#8220;tech stuff&#8221; around my home office and came &#8230; <a title=\"Running ColdFusion (ACF or Lucee) on Raspberry Pi 5\" class=\"read-more\" href=\"https:\/\/csimmons.dev\/blog\/2026\/02\/running-coldfusion-acf-or-lucee-on-raspberry-pi-5\/\" aria-label=\"Read more about Running ColdFusion (ACF or Lucee) on Raspberry Pi 5\">Read more<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_cloudinary_featured_overwrite":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[68],"tags":[48,36],"class_list":["post-2980","post","type-post","status-publish","format-standard","hentry","category-developer","tag-coldfusion","tag-raspberry-pi"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pbVg43-M4","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/posts\/2980","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/comments?post=2980"}],"version-history":[{"count":1,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/posts\/2980\/revisions"}],"predecessor-version":[{"id":2986,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/posts\/2980\/revisions\/2986"}],"wp:attachment":[{"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/media?parent=2980"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/categories?post=2980"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/csimmons.dev\/blog\/wp-json\/wp\/v2\/tags?post=2980"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}