[{"data":1,"prerenderedAt":497},["ShallowReactive",2],{"navigation":3,"/docs/server-configuration/server-requirements":285,"/docs/server-configuration/server-requirements-surround":492},[4],{"title":5,"path":6,"stem":7,"children":8},"Introduction","/docs","docs/1.index",[9,10,36,53,70,83,100,121,138,155,176],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"page":35},"Installation","/docs/installation","docs/1.installation",[15,19,23,27,31],{"title":16,"path":17,"stem":18},"Install to macOS","/docs/installation/install-macos","docs/1.installation/1.install-macos",{"title":20,"path":21,"stem":22},"Install to Windows","/docs/installation/install-windows","docs/1.installation/2.install-windows",{"title":24,"path":25,"stem":26},"Install to Linux","/docs/installation/install-linux","docs/1.installation/3.install-linux",{"title":28,"path":29,"stem":30},"Install via Composer","/docs/installation/install-composer","docs/1.installation/4.install-composer",{"title":32,"path":33,"stem":34},"Install via NPM/Yarn","/docs/installation/install-npm-yarn","docs/1.installation/5.install-npm-yarn",false,{"title":37,"path":38,"stem":39,"children":40,"page":35},"Community","/docs/community","docs/11.community",[41,45,49],{"title":42,"path":43,"stem":44},"Get Help","/docs/community/get-help","docs/11.community/1.get-help",{"title":46,"path":47,"stem":48},"Testing New Releases","/docs/community/testing","docs/11.community/2.testing",{"title":50,"path":51,"stem":52},"Contributing","/docs/community/contributing","docs/11.community/3.contributing",{"title":54,"path":55,"stem":56,"children":57,"page":35},"Getting Started","/docs/getting-started","docs/2.getting-started",[58,62,66],{"title":59,"path":60,"stem":61},"How Spin Works","/docs/getting-started/how-spin-works","docs/2.getting-started/1.how-spin-works",{"title":63,"path":64,"stem":65},"Create a New Project with Spin","/docs/getting-started/create-a-new-project-with-spin","docs/2.getting-started/2.create-a-new-project-with-spin",{"title":67,"path":68,"stem":69},"Add Spin to an Existing Project","/docs/getting-started/add-spin-to-an-existing-project","docs/2.getting-started/3.add-spin-to-an-existing-project",{"title":71,"path":72,"stem":73,"children":74,"page":35},"Development Environment","/docs/development-environment","docs/3.development-environment",[75,79],{"title":76,"path":77,"stem":78},"Starting Up Your Development Environment","/docs/development-environment/starting-up-your-development-environment","docs/3.development-environment/1.starting-up-your-development-environment",{"title":80,"path":81,"stem":82},"Running Commands in Development","/docs/development-environment/running-commands-in-development","docs/3.development-environment/2.running-commands-in-development",{"title":84,"path":85,"stem":86,"children":87,"page":35},"Server Configuration","/docs/server-configuration","docs/4.server-configuration",[88,92,96],{"title":89,"path":90,"stem":91},"Server Requirements","/docs/server-configuration/server-requirements","docs/4.server-configuration/1.server-requirements",{"title":93,"path":94,"stem":95},"Server Configuration Basics","/docs/server-configuration/server-configuration-basics","docs/4.server-configuration/2.server-configuration-basics",{"title":97,"path":98,"stem":99},".spin.yml Usage","/docs/server-configuration/spin-yml-usage","docs/4.server-configuration/3.spin-yml-usage",{"title":101,"path":102,"stem":103,"children":104,"page":35},"Providers","/docs/providers","docs/5.providers",[105,109,113,117],{"title":106,"path":107,"stem":108},"DigitalOcean","/docs/providers/digitalocean","docs/5.providers/0.digitalocean",{"title":110,"path":111,"stem":112},"Hetzner","/docs/providers/hetzner","docs/5.providers/0.hetzner",{"title":114,"path":115,"stem":116},"Vultr","/docs/providers/vultr","docs/5.providers/0.vultr",{"title":118,"path":119,"stem":120},"Use Any Host","/docs/providers/use-any-host","docs/5.providers/99.use-any-host",{"title":122,"path":123,"stem":124,"children":125,"page":35},"Deployment","/docs/deployment","docs/6.deployment",[126,130,134],{"title":127,"path":128,"stem":129},"Choosing a Deployment Strategy","/docs/deployment/choosing-a-deployment-strategy","docs/6.deployment/1.choosing-a-deployment-strategy",{"title":131,"path":132,"stem":133},"Automated Deployments with GitHub Actions","/docs/deployment/automated-deployments-with-github-actions","docs/6.deployment/2.automated-deployments-with-github-actions",{"title":135,"path":136,"stem":137},"Using \"spin deploy\"","/docs/deployment/using-spin-deploy","docs/6.deployment/3.using-spin-deploy",{"title":139,"path":140,"stem":141,"children":142,"page":35},"Server Access","/docs/server-access","docs/7.server-access",[143,147,151],{"title":144,"path":145,"stem":146},"Connecting to Your Server","/docs/server-access/connecting-to-your-server","docs/7.server-access/1.connecting-to-your-server",{"title":148,"path":149,"stem":150},"Troubleshooting Your Application","/docs/server-access/troubleshooting-your-application","docs/7.server-access/2.troubleshooting-your-application",{"title":152,"path":153,"stem":154},"Updating Your Server","/docs/server-access/updating-your-server","docs/7.server-access/3.updating-your-server",{"title":156,"path":157,"stem":158,"children":159,"page":35},"Advanced","/docs/advanced","docs/8.advanced",[160,164,168,172],{"title":161,"path":162,"stem":163},"Generating a Secure SSH Key","/docs/advanced/generating-a-secure-ssh-key","docs/8.advanced/2.generating-a-secure-ssh-key",{"title":165,"path":166,"stem":167},"Adding Other Services","/docs/advanced/adding-other-services","docs/8.advanced/3.adding-other-services",{"title":169,"path":170,"stem":171},"Create your own Spin Template","/docs/advanced/create-your-own-template","docs/8.advanced/99.create-your-own-template",{"title":173,"path":174,"stem":175},"Migrating from Spin v2 to v3","/docs/advanced/migrating-from-spin-v2-to-v3","docs/8.advanced/migrating-from-spin-v2-to-v3",{"title":177,"path":178,"stem":179,"children":180,"page":35},"Command Reference","/docs/command-reference","docs/9.command-reference",[181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273,277,281],{"title":182,"path":183,"stem":184},"base64","/docs/command-reference/base64","docs/9.command-reference/base64",{"title":186,"path":187,"stem":188},"build","/docs/command-reference/build","docs/9.command-reference/build",{"title":190,"path":191,"stem":192},"configure","/docs/command-reference/configure","docs/9.command-reference/configure",{"title":194,"path":195,"stem":196},"debug","/docs/command-reference/debug","docs/9.command-reference/debug",{"title":198,"path":199,"stem":200},"deploy","/docs/command-reference/deploy","docs/9.command-reference/deploy",{"title":202,"path":203,"stem":204},"down","/docs/command-reference/down","docs/9.command-reference/down",{"title":206,"path":207,"stem":208},"exec","/docs/command-reference/exec","docs/9.command-reference/exec",{"title":210,"path":211,"stem":212},"gh","/docs/command-reference/gh","docs/9.command-reference/gh",{"title":214,"path":215,"stem":216},"help","/docs/command-reference/help","docs/9.command-reference/help",{"title":218,"path":219,"stem":220},"init","/docs/command-reference/init","docs/9.command-reference/init",{"title":222,"path":223,"stem":224},"kill","/docs/command-reference/kill","docs/9.command-reference/kill",{"title":226,"path":227,"stem":228},"latest","/docs/command-reference/latest","docs/9.command-reference/latest",{"title":230,"path":231,"stem":232},"logs","/docs/command-reference/logs","docs/9.command-reference/logs",{"title":234,"path":235,"stem":236},"maintain","/docs/command-reference/maintain","docs/9.command-reference/maintain",{"title":238,"path":239,"stem":240},"mkpasswd","/docs/command-reference/mkpasswd","docs/9.command-reference/mkpasswd",{"title":242,"path":243,"stem":244},"new","/docs/command-reference/new","docs/9.command-reference/new",{"title":246,"path":247,"stem":248},"provision","/docs/command-reference/provision","docs/9.command-reference/provision",{"title":250,"path":251,"stem":252},"prune","/docs/command-reference/prune","docs/9.command-reference/prune",{"title":254,"path":255,"stem":256},"ps","/docs/command-reference/ps","docs/9.command-reference/ps",{"title":258,"path":259,"stem":260},"pull","/docs/command-reference/pull","docs/9.command-reference/pull",{"title":262,"path":263,"stem":264},"run","/docs/command-reference/run","docs/9.command-reference/run",{"title":266,"path":267,"stem":268},"stop","/docs/command-reference/stop","docs/9.command-reference/stop",{"title":270,"path":271,"stem":272},"up","/docs/command-reference/up","docs/9.command-reference/up",{"title":274,"path":275,"stem":276},"update","/docs/command-reference/update","docs/9.command-reference/update",{"title":278,"path":279,"stem":280},"vault","/docs/command-reference/vault","docs/9.command-reference/vault",{"title":282,"path":283,"stem":284},"version","/docs/command-reference/version","docs/9.command-reference/version",{"id":286,"title":89,"body":287,"canonical":482,"description":483,"extension":484,"layout":485,"meta":486,"navigation":489,"path":90,"seo":490,"stem":91,"__hash__":491},"docs/docs/4.server-configuration/1.server-requirements.md",{"type":288,"value":289,"toc":469},"minimark",[290,297,302,314,318,321,324,331,334,337,340,347,351,354,357,364,368,371,375,381,384,451,457,461,464],[291,292,293],"lead-p",{},[294,295,296],"p",{},"Spin gives you the power to choose any host that you want. Although the responsibility is on your shoulders to get a server set up, Spin makes it very easy to get this accomplished.",[298,299,301],"h2",{"id":300},"choose-a-host","Choose a host",[294,303,304,305,313],{},"We've run ",[306,307,312],"a",{"href":308,"rel":309,"target":311},"https://521dimensions.notion.site/VPS-Benchmarks-for-Self-hosters-c6eca7c5f16d4bb8aeb989174fc58ffe?pvs=4",[310],"nofollow","_blank","VPS Benchmarks against a number of hosts"," and have found the following hosts to have great value. The links below are referral links, meaning we get a small kickback if you sign up -- but this doesn't affect our recommendations.",[315,316,110],"h3",{"id":317},"hetzner",[294,319,320],{},"Hetzner is a German-based company with data centers in the EU and the US. Their pricing is very competitive and they have incredible performance.",[294,322,323],{},"With the link below, they offer €⁠20 (~$21 USD) credits free which can get you a server for a few months.",[294,325,326],{},[306,327,330],{"href":328,"rel":329,"target":311},"https://hetzner.cloud/?ref=lhLUIrkdUPhl",[310],"Sign Up with Hetzner →",[315,332,114],{"id":333},"vultr",[294,335,336],{},"Vultr is a US-based company that has a great reputation for performance and value. They have a wide range of data centers around the world and a great API for automation.",[294,338,339],{},"With the link below, they are offering $100 in credits -- which can get you quite a bit for a few months.",[294,341,342],{},[306,343,346],{"href":344,"rel":345,"target":311},"https://www.vultr.com/?ref=9627777-8H",[310],"Sign Up with Vultr →",[315,348,350],{"id":349},"digital-ocean","Digital Ocean",[294,352,353],{},"Digital Ocean is a US-based company that has data centers all around the world. Although their performance generally lacks compared to other providers, there are so many resources that natively support their offerings.",[294,355,356],{},"With the link below, they are offering $200 in credits over 60 days.",[294,358,359],{},[306,360,363],{"href":361,"rel":362,"target":311},"https://m.do.co/c/f3bad4b927ca",[310],"Sign Up with Digital Ocean →",[315,365,367],{"id":366},"any-other-host","Any other host",[294,369,370],{},"Spin is host-agnostic, meaning you can run Spin anywhere. If you have a preferred host, you can use them as well. Just make sure that your host meets the following requirements below.",[298,372,374],{"id":373},"recommended-server-specs","Recommended Server Specs",[376,377,378],"note",{},[294,379,380],{},"Note if you use any of our supported providers in the left sidebar, we'll automatically configure everything for you. 🤓",[294,382,383],{},"Hardware specs largely depend on your project, but even for simple apps, we recommend the following:",[385,386,387,395,401,407,419,433,439,445],"ul",{},[388,389,390,394],"li",{},[391,392,393],"strong",{},"CPU",": 1 CPU core",[388,396,397,400],{},[391,398,399],{},"RAM",": 1GB",[388,402,403,406],{},[391,404,405],{},"Storage",": >25GB SSD",[388,408,409,412,413,418],{},[391,410,411],{},"Architecture",": x86_64 (64-bit) [",[306,414,417],{"href":415,"rel":416,"target":311},"https://github.com/serversideup/spin/discussions/9",[310],"request ARM64 support","]",[388,420,421,424,425,432],{},[391,422,423],{},"Operating System",": Ubuntu 22.04 LTS or newer (",[306,426,429],{"href":427,"rel":428,"target":311},"https://ubuntu.com/about/release-cycle",[310],[391,430,431],{},"must be an LTS version",")",[388,434,435,438],{},[391,436,437],{},"Snapshots/Backups",": Highly recommended",[388,440,441,444],{},[391,442,443],{},"Firewall",": Configured to allow SSH and HTTPS traffic (22/tcp, 80/tcp, 443/tcp, 2222/tcp)",[388,446,447,450],{},[391,448,449],{},"Access",": Root SSH access is required",[294,452,453,456],{},[391,454,455],{},"Spin requires a fresh server installation."," Do not install Spin on servers that already have control panels (like Plesk, cPanel) or other server management tools (like Laravel Forge) installed, as this can cause configuration conflicts.",[298,458,460],{"id":459},"next-steps","Next steps",[294,462,463],{},"The next step is to understand how servers work with Spin.",[294,465,466],{},[306,467,468],{"href":94},"Learn how servers work with Spin →",{"title":470,"searchDepth":471,"depth":471,"links":472},"",2,[473,480,481],{"id":300,"depth":471,"text":301,"children":474},[475,477,478,479],{"id":317,"depth":476,"text":110},3,{"id":333,"depth":476,"text":114},{"id":349,"depth":476,"text":350},{"id":366,"depth":476,"text":367},{"id":373,"depth":471,"text":374},{"id":459,"depth":471,"text":460},"https://serversideup.net/open-source/spin/docs/server-configuration/server-requirements","Learn the requirements for running Spin.","md","docs",{"head":487},{"title":488},"Server Requirements - Spin by Server Side Up",true,{"title":89,"description":483},"3iaaWbxfcQtHxdUoJuD1iXKjwk8g1zzUm2pbtIbaLHo",[493,495],{"title":80,"path":81,"stem":82,"description":494,"children":-1},"Learn how to run commands in your development environment with Spin.",{"title":93,"path":94,"stem":95,"description":496,"children":-1},"Learn how to configure your servers with Spin.",1769465036879]