<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Yulei Chen</title>
    <description>The latest articles on DEV Community by Yulei Chen (@yulei-chen).</description>
    <link>https://dev.to/yulei-chen</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1140510%2F1e4d7cf0-ff46-46eb-a472-4fe57550b45b.jpg</url>
      <title>DEV Community: Yulei Chen</title>
      <link>https://dev.to/yulei-chen</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yulei-chen"/>
    <language>en</language>
    <item>
      <title>Vibe Hosting with Cursor</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Tue, 03 Feb 2026 14:40:00 +0000</pubDate>
      <link>https://dev.to/yulei-chen/vibe-hosting-with-cursor-496m</link>
      <guid>https://dev.to/yulei-chen/vibe-hosting-with-cursor-496m</guid>
      <description>&lt;p&gt;What if you could list your services, inspect service logs, and even fix failed deployments without leaving Cursor? That’s &lt;strong&gt;vibe hosting&lt;/strong&gt;: you stay in the flow, and your AI assistant talks to &lt;a href="https://sliplane.io?utm_source=vibe-hosting-with-cursor" rel="noopener noreferrer"&gt;Sliplane&lt;/a&gt; for you via the &lt;strong&gt;Sliplane MCP server&lt;/strong&gt;. Deploy from chat, read logs in chat, and say “fix it” when a build fails. This post walks you through setup and a short showcase so you can try it yourself.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;p&gt;Before installing the Sliplane MCP server in Cursor, have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;Sliplane account&lt;/strong&gt; (&lt;a href="https://sliplane.io/auth/login?utm_source=vibe-hosting-with-cursor" rel="noopener noreferrer"&gt;start free trial&lt;/a&gt; if you don’t have one).&lt;/li&gt;
&lt;li&gt;Your &lt;strong&gt;API key&lt;/strong&gt; and &lt;strong&gt;Organization ID&lt;/strong&gt; from your &lt;a href="https://sliplane.io/app/team/api" rel="noopener noreferrer"&gt;Team&lt;/a&gt;. You’ll paste these into Cursor later.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsliplane.io%2Fimages%2Fblog%2Fvibe-hosting-with-cursor%2Fcreate-api-key-button.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fsliplane.io%2Fimages%2Fblog%2Fvibe-hosting-with-cursor%2Fcreate-api-key-button.webp" alt="create api key button"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;p&gt;Click the button below to add the Sliplane MCP server to Cursor. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://cursor.com/en-US/install-mcp?name=sliplane&amp;amp;config=ewogICAgInVybCI6Imh0dHBzOi8vbWNwLnNsaXBsYW5lLmlvIiwKICAgICJoZWFkZXJzIjogewogICAgICAgICJBdXRob3JpemF0aW9uIjogIkJlYXJlciBnZXRfeW91cl9hcGlfa2V5X2luX3NsaXBsYW5lLmFwcC90ZWFtIiwKICAgICAgICAiWC1Pcmdhbml6YXRpb24tSWQiOiAieW91cl9vcmdhbml6YXRpb25faWQiCiAgICB9Cn0=" class="crayons-btn crayons-btn--primary" rel="noopener noreferrer"&gt;Add to Cursor&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Cursor will open the install flow and open the configuration page for you. All you need to do is to paste your API key and Organization ID.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hb7g2hd8i8md0voug1z.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hb7g2hd8i8md0voug1z.webp" alt="cursor install mcp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Showcase
&lt;/h2&gt;

&lt;p&gt;Here’s a simplified use case from a Git repo to deploying on Sliplane and debugging a failed build with Cursor and the Sliplane MCP server.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Warning: LLMs can make mistakes. Always &lt;strong&gt;double-check&lt;/strong&gt; what the agent is doing and verify the plan before approving any actions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Step 1: Prepare the repo
&lt;/h3&gt;

&lt;p&gt;For this example we use a small Git repo sliplane-mcp-demo with a minimal Docker static deployment. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dockerfile&lt;/strong&gt; – builds a tiny static site and serves it (e.g. with a minimal web server).
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; nginx:alpine&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; index.html /usr/share/nginx/html/&lt;/span&gt;
&lt;span class="k"&gt;EXPOSE&lt;/span&gt;&lt;span class="s"&gt; 80&lt;/span&gt;
&lt;span class="k"&gt;CMD&lt;/span&gt;&lt;span class="s"&gt; ["nginx", "-g", "daemon off;"]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;index.html&lt;/strong&gt; – a single page that displays “Hello Sliplane” centered on the screen.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;html&lt;/span&gt; &lt;span class="na"&gt;lang=&lt;/span&gt;&lt;span class="s"&gt;"en"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;charset=&lt;/span&gt;&lt;span class="s"&gt;"UTF-8"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"viewport"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"width=device-width, initial-scale=1.0"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Hello Sliplane&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
    &lt;span class="c"&gt;&amp;lt;!-- CSS is omitted here --&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;Hello Sliplane&lt;span class="nt"&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That’s it: two files, one container, one page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Deploy the repo on Sliplane
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open &lt;strong&gt;&lt;a href="https://container.new" rel="noopener noreferrer"&gt;container.new&lt;/a&gt;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Select project&lt;/strong&gt; → &lt;strong&gt;Select server&lt;/strong&gt; → &lt;strong&gt;Add service&lt;/strong&gt; → &lt;strong&gt;Repository&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Choose your repo. In our example it's sliplane-mcp-demo. Noted that you may need to configure repo access for the first time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Add service&lt;/strong&gt; and then &lt;strong&gt;Deploy&lt;/strong&gt;. Wait until the service is running.&lt;/li&gt;
&lt;/ol&gt;



&lt;h3&gt;
  
  
  Step 3: List services in Cursor chat
&lt;/h3&gt;

&lt;p&gt;In Cursor, open chat and ask something like: “List my Sliplane services”. The model will use the MCP server to call the Sliplane API and show your services.&lt;/p&gt;



&lt;h3&gt;
  
  
  Step 4: Introduce a typo
&lt;/h3&gt;

&lt;p&gt;In your repo:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;In the &lt;strong&gt;Dockerfile&lt;/strong&gt;, change the line that references &lt;code&gt;index.html&lt;/code&gt; to &lt;strong&gt;&lt;code&gt;indexl.html&lt;/code&gt;&lt;/strong&gt; (typo).
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;&lt;span class="p"&gt;FROM nginx:alpine
&lt;/span&gt;&lt;span class="gd"&gt;- COPY index.html /usr/share/nginx/html/ 
&lt;/span&gt;&lt;span class="gi"&gt;+ COPY indexl.html /usr/share/nginx/html/  
&lt;/span&gt;&lt;span class="p"&gt;EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Commit and push the change.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The next build will &lt;strong&gt;fail&lt;/strong&gt; because the file doesn’t exist.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5: Fix in Cursor chat
&lt;/h3&gt;

&lt;p&gt;In Cursor chat, ask like: "Show me the logs for the service sliplane-mcp-demo.” The model will fetch the latest logs and report that the build failed. Then, in the same conversation, say: “Fix it.” The model should correct the Dockerfile back to &lt;code&gt;index.html&lt;/code&gt;. Again, commit and push your change. Checkout the log, you will find everything works now.&lt;/p&gt;






&lt;p&gt;Vibe hosting is exactly this: your services and deployments stay on Sliplane, and Cursor + the Sliplane MCP server give you a single place to check services, read logs, and iterate on fixes. The example above focused on listing services and debugging failed builds from logs, but that’s only the beginning. With the Sliplane MCP server, you can also:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Create new services&lt;/strong&gt;, e.g. “Add a new service from this repo to my project”.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deploy databases&lt;/strong&gt;, e.g. “Deploy a Postgres service”.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deploy AI workflow automation&lt;/strong&gt;, e.g "Deploy n8n to my project".&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inspect events, domains, volumes, and settings&lt;/strong&gt; without leaving Cursor.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;... and more. Enjoy and have fun with vibe hosting!&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>docker</category>
      <category>devops</category>
      <category>vibecoding</category>
    </item>
    <item>
      <title>5 Awesome Ways to Deploy Flowise</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Sat, 17 Jan 2026 13:38:14 +0000</pubDate>
      <link>https://dev.to/yulei-chen/5-awesome-ways-to-deploy-flowise-4882</link>
      <guid>https://dev.to/yulei-chen/5-awesome-ways-to-deploy-flowise-4882</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/FlowiseAI/Flowise" rel="noopener noreferrer"&gt;Flowise&lt;/a&gt; is a powerful open-source platform for building AI agents visually. Choosing the right deployment method depends on your needs for complexity, cost, and control. Here are five ways to deploy Flowise, from one-click solutions to enterprise setups.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick Comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Method&lt;/th&gt;
&lt;th&gt;Complexity&lt;/th&gt;
&lt;th&gt;Base Price (2026)&lt;/th&gt;
&lt;th&gt;Customizability&lt;/th&gt;
&lt;th&gt;Best For&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Sliplane&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⭐ Very Easy&lt;/td&gt;
&lt;td&gt;€9 per month per server&lt;/td&gt;
&lt;td&gt;⭐⭐⭐ Good&lt;/td&gt;
&lt;td&gt;Quick deployment, production-ready&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Hetzner VPS&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⭐⭐⭐ Moderate&lt;/td&gt;
&lt;td&gt;€3.49 per month for 2 vCPU&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐ Full&lt;/td&gt;
&lt;td&gt;Cost-conscious, full control&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Local Docker&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⭐⭐ Easy&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐ High&lt;/td&gt;
&lt;td&gt;Development, testing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Kubernetes&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐ Very Complex&lt;/td&gt;
&lt;td&gt;Variable&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐ Full&lt;/td&gt;
&lt;td&gt;Enterprise, large scale&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Flowise Cloud&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⭐ Very Easy&lt;/td&gt;
&lt;td&gt;Free for 2 flows, then $35 per month&lt;/td&gt;
&lt;td&gt;⭐⭐ Limited&lt;/td&gt;
&lt;td&gt;Zero maintenance&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  1. Sliplane: The Easy Production Way
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsb0g7eq7pskkqpdhlfd0.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsb0g7eq7pskkqpdhlfd0.webp" alt="Sliplane Flowise Deployment"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sliplane.io?utm_source=5-awesome-ways-to-deploy-flowise" rel="noopener noreferrer"&gt;Sliplane&lt;/a&gt; is a Container-as-a-Service platform that makes deploying Flowise simple. One-click deployment, automatic SSL, and zero server management.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Complexity:&lt;/strong&gt; ⭐ Very Easy - Deploy in seconds via &lt;a href="https://container.new/flowise" rel="noopener noreferrer"&gt;container.new/flowise&lt;/a&gt;. No Docker Compose or server config needed. For detailed instructions, see our &lt;a href="https://dev.to/blog/how-to-deploy-flowise#deploy-with-sliplane"&gt;guide to deploying Flowise with Sliplane&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base price:&lt;/strong&gt; €9/month - Pay per server, deploy unlimited containers. Run Flowise with databases, APIs, and workers on the same server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; ⭐⭐⭐ Good - Full control over environment variables, container config, resource limits, custom domains, and volume mounts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Production-ready deployment without DevOps overhead, running multiple services cost-effectively.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Hetzner VPS: The DIY Approach
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyz26mf3iyblldx6zjsz9.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyz26mf3iyblldx6zjsz9.webp" alt="Hetzner Cloud Dashboard"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Deploying Flowise on a &lt;a href="https://hetzner.cloud/?ref=mZziDsGU2VVp" rel="noopener noreferrer"&gt;Hetzner&lt;/a&gt; VPS gives you complete control at a low cost. You manage everything yourself, from server setup to security updates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Complexity:&lt;/strong&gt; ⭐⭐⭐ Moderate - Requires provisioning a server, installing Docker, setting up reverse proxy for SSL, and configuring backups. See our &lt;a href="https://dev.to/blog/self-hosting-flowise-on-a-hetzner-ubuntu-server"&gt;detailed guide&lt;/a&gt; for step-by-step instructions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base price:&lt;/strong&gt; Hetzner offers excellent VPS prices in Europe, starting from €3.49/month for 2 vCPU.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; ⭐⭐⭐⭐⭐ Full - Complete control over OS, software, networking, firewall, and monitoring. Run multiple services on one server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Cost-conscious developers who want full control and enjoy managing infrastructure.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Local Docker: Development &amp;amp; Testing
&lt;/h2&gt;

&lt;p&gt;Running Flowise locally with Docker is perfect for development, testing, and learning. It's free and requires minimal setup.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Complexity:&lt;/strong&gt; ⭐⭐ Easy - Install Docker Desktop, create a Docker Compose file, and run the container. See our &lt;a href="https://dev.to/blog/how-to-deploy-flowise#deploy-locally"&gt;guide&lt;/a&gt; for detailed instructions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base price:&lt;/strong&gt; Free - Uses your own hardware, no hosting fees.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; ⭐⭐⭐⭐ High - Modify Docker Compose, mount volumes, set environment variables, test different versions. Limited by local machine resources.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Development, testing, learning, and experimentation without public access.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Kubernetes: Enterprise Scale
&lt;/h2&gt;

&lt;p&gt;Deploying Flowise on Kubernetes offers unmatched scalability for large-scale deployments, but it's the most complex option. As we've written before, &lt;a href="https://dev.to/blog/kubernetes-isnt-for-you"&gt;Kubernetes isn't for everyone&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Complexity:&lt;/strong&gt; ⭐⭐⭐⭐⭐ Very Complex - Requires cluster setup, Pod/Service/Ingress configuration, persistent volumes, monitoring, and security policies. You'll also need Ingress controllers, SSL certificates, and more. See &lt;a href="https://dev.to/blog/docker-vs-kubernetes"&gt;Docker vs Kubernetes&lt;/a&gt; for when it makes sense.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base price:&lt;/strong&gt; Variable - Depends on cloud provider (AWS EKS, Google GKE, Azure AKS), cluster size, load balancers, and storage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; ⭐⭐⭐⭐⭐ Full - Auto-scaling, multi-region deployments, advanced networking, fine-grained resource management.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Enterprise deployments with dedicated DevOps teams, running hundreds of services, or specific scaling requirements.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Reality check&lt;/strong&gt;: Most teams don't need Kubernetes. It was built for Google-scale problems. If you're running a few services, simpler options like Sliplane or a VPS are usually better choices.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  5. Flowise Cloud: Zero Maintenance
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0qc0u1fqp5sdr9i3s92.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0qc0u1fqp5sdr9i3s92.webp" alt="Flowise Cloud"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://flowiseai.com/" rel="noopener noreferrer"&gt;Flowise Cloud&lt;/a&gt; is the official managed service where everything is handled for you. It's the easiest option but comes with higher costs and less customization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Complexity:&lt;/strong&gt; ⭐ Very Easy - Sign up and start building. No setup, configuration, or maintenance required.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base price:&lt;/strong&gt; Free tier includes 2 flows. Paid plans start from $35/month. Check &lt;a href="https://flowiseai.com/#pricing" rel="noopener noreferrer"&gt;Flowise pricing&lt;/a&gt; for current rates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; ⭐⭐ Limited - Standard configurations only, no server-level access, limited environment variable control. Can't modify infrastructure or install custom software.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Zero maintenance, official support, guaranteed uptime and SLAs, managed service preference.&lt;/p&gt;




&lt;h2&gt;
  
  
  Detailed Comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Sliplane&lt;/th&gt;
&lt;th&gt;Hetzner VPS&lt;/th&gt;
&lt;th&gt;Local Docker&lt;/th&gt;
&lt;th&gt;Kubernetes&lt;/th&gt;
&lt;th&gt;Flowise Cloud&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Setup Time&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;seconds&lt;/td&gt;
&lt;td&gt;hours&lt;/td&gt;
&lt;td&gt;minutes&lt;/td&gt;
&lt;td&gt;days/weeks&lt;/td&gt;
&lt;td&gt;seconds&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Base Price (2026)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;€9/month&lt;/td&gt;
&lt;td&gt;€3.49/month for 2 vCPU&lt;/td&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;td&gt;Variable&lt;/td&gt;
&lt;td&gt;Free for 2 flows, then $35+/month&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Complexity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Very Easy&lt;/td&gt;
&lt;td&gt;Moderate&lt;/td&gt;
&lt;td&gt;Easy&lt;/td&gt;
&lt;td&gt;Very Complex&lt;/td&gt;
&lt;td&gt;Very Easy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Maintenance&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;td&gt;Very High&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Customizability&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Good&lt;/td&gt;
&lt;td&gt;Full&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Full&lt;/td&gt;
&lt;td&gt;Limited&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Scalability&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Server limits&lt;/td&gt;
&lt;td&gt;Manual&lt;/td&gt;
&lt;td&gt;Local only&lt;/td&gt;
&lt;td&gt;Auto-scaling&lt;/td&gt;
&lt;td&gt;Managed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SSL/HTTPS&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Automatic&lt;/td&gt;
&lt;td&gt;Manual setup&lt;/td&gt;
&lt;td&gt;N/A&lt;/td&gt;
&lt;td&gt;Manual setup&lt;/td&gt;
&lt;td&gt;Automatic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Backups&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Automatic&lt;/td&gt;
&lt;td&gt;Manual setup&lt;/td&gt;
&lt;td&gt;Manual&lt;/td&gt;
&lt;td&gt;Manual setup&lt;/td&gt;
&lt;td&gt;Managed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Public Access&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes (with setup)&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Best For&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Production, quick deploy&lt;/td&gt;
&lt;td&gt;Cost-conscious, full control&lt;/td&gt;
&lt;td&gt;Development, testing&lt;/td&gt;
&lt;td&gt;Enterprise scale&lt;/td&gt;
&lt;td&gt;Zero maintenance&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Technical Skills&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Beginner&lt;/td&gt;
&lt;td&gt;Intermediate&lt;/td&gt;
&lt;td&gt;Beginner&lt;/td&gt;
&lt;td&gt;Expert&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Which Option Should You Choose?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Sliplane&lt;/strong&gt; - Best balance of simplicity, cost, and production-readiness. Perfect for startups and small teams.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hetzner VPS&lt;/strong&gt; - Lowest cost with full control. Great for cost-conscious developers who enjoy managing infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local Docker&lt;/strong&gt; - Free option for development, testing, and learning. No public access needed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Kubernetes&lt;/strong&gt; - Enterprise-scale infrastructure. Only consider if you have a DevOps team and simpler options can't meet your needs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Flowise Cloud&lt;/strong&gt; - Zero maintenance with official support. Premium pricing for managed service.&lt;/p&gt;

&lt;p&gt;For most users, &lt;strong&gt;Sliplane offers the sweet spot&lt;/strong&gt;: production-ready deployment in minutes with predictable pricing and enough flexibility.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sliplane.io?utm_source=5-awesome-ways-to-deploy-flowise" class="crayons-btn crayons-btn--primary" rel="noopener noreferrer"&gt;START YOUR FREE TRIAL NOW!&lt;/a&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I migrate between deployment methods?&lt;/strong&gt;&lt;br&gt;
A: Yes! Flowise data is stored in a database, so you can export and import workflows between different methods.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Which option is most cost-effective for multiple services?&lt;/strong&gt;&lt;br&gt;
A: Sliplane's server-based pricing (€9/month for unlimited containers) is usually the most cost-effective managed option. A Hetzner VPS (starting from €3.49/month) can be cheaper if you manage it yourself.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Do I need Kubernetes for production?&lt;/strong&gt;&lt;br&gt;
A: No. Most production deployments work fine with Sliplane or a VPS. Kubernetes is only necessary for auto-scaling across multiple regions or running hundreds of services.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: Can I start locally and deploy to production later?&lt;/strong&gt;&lt;br&gt;
A: Absolutely! Start with local Docker for development, then deploy to Sliplane or a VPS when ready. If you hit real scale, you can use Kubernetes. Docker Compose configuration is similar across environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What about security and backups?&lt;/strong&gt;&lt;br&gt;
A: Sliplane handles SSL, security updates, and backups automatically. With a VPS, you set these up yourself. Flowise Cloud includes managed backups and security.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>devops</category>
      <category>cloud</category>
      <category>ai</category>
    </item>
    <item>
      <title>Self-hosting Flowise on a Hetzner Ubuntu Server</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Fri, 16 Jan 2026 18:41:06 +0000</pubDate>
      <link>https://dev.to/yulei-chen/self-hosting-flowise-on-a-hetzner-ubuntu-server-4hg2</link>
      <guid>https://dev.to/yulei-chen/self-hosting-flowise-on-a-hetzner-ubuntu-server-4hg2</guid>
      <description>&lt;p&gt;Want to build AI agents using &lt;a href="https://github.com/FlowiseAI/Flowise" rel="noopener noreferrer"&gt;Flowise&lt;/a&gt; but prefer to fully control your infrastructure? By self-hosting Flowise on a Ubuntu server, you can cut down costs and manage your data yourself!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Looking for something simpler?&lt;/strong&gt; If you'd rather skip server management and deploy Flowise in just 1 minute for €9/month, check out our guide on &lt;a href="https://dev.to/blog/how-to-deploy-flowise"&gt;how to deploy Flowise&lt;/a&gt; using Sliplane.&lt;/p&gt;
&lt;/blockquote&gt;



&lt;p&gt;Follow along this easy-to-understand guide to learn how you can deploy your own Flowise instance using Docker and Caddy Web server for automatic HTTPS.&lt;/p&gt;

&lt;p&gt;For this post, we're using an affordable server from &lt;a href="https://hetzner.com/?ref=mZziDsGU2VVp" rel="noopener noreferrer"&gt;Hetzner&lt;/a&gt;. Hetzner is known to provide great service at an exceptional price/performance ratio, making it an excellent choice for hosting AI applications like Flowise. &lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;p&gt;Before we start, make sure you have a Hetzner Cloud account (or be ready to create one).&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Setup Your Hetzner Server
&lt;/h2&gt;

&lt;p&gt;If you don't have a Hetzner server yet, follow these steps to create one (the video tutorial is attached below):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the &lt;a href="https://console.hetzner.cloud/?ref=mZziDsGU2VVp" rel="noopener noreferrer"&gt;Hetzner Cloud Console&lt;/a&gt;, choose a project or create a new one, then navigate to &lt;strong&gt;Servers&lt;/strong&gt; → &lt;strong&gt;Add Server&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Follow Hetzner's guidelines to choose:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Server type&lt;/strong&gt;: Select a server type that fits your needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Location&lt;/strong&gt;: Choose a data center location closest to you or your users.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Image&lt;/strong&gt;: Select &lt;strong&gt;Ubuntu&lt;/strong&gt; (latest LTS version recommended).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Add SSH key&lt;/strong&gt;: Add your SSH public key for secure access. If you don't have an SSH key yet, you can generate one using &lt;code&gt;ssh-keygen&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ssh-keygen &lt;span class="nt"&gt;-t&lt;/span&gt; ed25519 &lt;span class="nt"&gt;-C&lt;/span&gt; &lt;span class="s2"&gt;"your_email@example.com"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click &lt;strong&gt;Create &amp;amp; Pay&lt;/strong&gt; to provision your server&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;



&lt;p&gt;Once your server is created, note down its IP address. You'll use this to connect via SSH in the next step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Update Your Server
&lt;/h2&gt;

&lt;p&gt;Open your terminal and log into your Ubuntu server via SSH:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ssh root@[your-IP-address]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and update the system to ensure it has the latest security patches and updates:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get upgrade &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once finished, your server is ready for installing the software.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Install and Configure UFW Firewall
&lt;/h2&gt;

&lt;p&gt;Only keep necessary ports open: SSH (22), HTTP (80), HTTPS (443).&lt;/p&gt;

&lt;p&gt;Install UFW and configure the firewall as follows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;ufw &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw allow 22    &lt;span class="c"&gt;# SSH&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw allow 80    &lt;span class="c"&gt;# HTTP&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw allow 443   &lt;span class="c"&gt;# HTTPS&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw &lt;span class="nb"&gt;enable&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check your firewall configuration:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;ufw status verbose
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Note: Docker can sometimes ignore UFW rules. To tackle this, verify extra settings as &lt;a href="https://stackoverflow.com/questions/30383845/what-is-the-best-practice-of-docker-ufw-under-ubuntu" rel="noopener noreferrer"&gt;explained here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Docker Installation
&lt;/h2&gt;

&lt;p&gt;Docker will be the container system running Flowise. Install Docker by running these commands:&lt;/p&gt;

&lt;p&gt;Setup dependencies and Docker's GPG key:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;ca-certificates curl gnupg

&lt;span class="nb"&gt;sudo install&lt;/span&gt; &lt;span class="nt"&gt;-m&lt;/span&gt; 0755 &lt;span class="nt"&gt;-d&lt;/span&gt; /etc/apt/keyrings
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://download.docker.com/linux/ubuntu/gpg &lt;span class="se"&gt;\&lt;/span&gt;
| &lt;span class="nb"&gt;sudo &lt;/span&gt;gpg &lt;span class="nt"&gt;--dearmor&lt;/span&gt; &lt;span class="nt"&gt;-o&lt;/span&gt; /etc/apt/keyrings/docker.gpg
&lt;span class="nb"&gt;sudo chmod &lt;/span&gt;a+r /etc/apt/keyrings/docker.gpg
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add Docker repository:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="s2"&gt;"deb [arch=&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;dpkg &lt;span class="nt"&gt;--print-architecture&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt; &lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;
signed-by=/etc/apt/keyrings/docker.gpg] &lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;
https://download.docker.com/linux/ubuntu &lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;
&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;.&lt;/span&gt; /etc/os-release &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;$VERSION_CODENAME&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt; stable"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
| &lt;span class="nb"&gt;sudo tee&lt;/span&gt; /etc/apt/sources.list.d/docker.list &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /dev/null

&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Install Docker Engine and compose-plugin:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;docker-ce docker-ce-cli &lt;span class="se"&gt;\&lt;/span&gt;
containerd.io docker-buildx-plugin docker-compose-plugin &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check installation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;docker run hello-world
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you see the "hello-world" message, Docker is ready.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: Installing Caddy for Automatic HTTPS
&lt;/h2&gt;

&lt;p&gt;Caddy simplifies HTTPS configuration since it handles SSL certificates automatically from Let's Encrypt.&lt;/p&gt;

&lt;p&gt;Install Caddy:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; debian-keyring debian-archive-keyring apt-transport-https curl

curl &lt;span class="nt"&gt;-1sLf&lt;/span&gt; &lt;span class="s1"&gt;'https://dl.cloudsmith.io/public/caddy/stable/gpg.key'&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
| &lt;span class="nb"&gt;sudo &lt;/span&gt;gpg &lt;span class="nt"&gt;--dearmor&lt;/span&gt; &lt;span class="nt"&gt;-o&lt;/span&gt; /usr/share/keyrings/caddy-stable-archive-keyring.gpg

curl &lt;span class="nt"&gt;-1sLf&lt;/span&gt; &lt;span class="s1"&gt;'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt'&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
| &lt;span class="nb"&gt;sudo tee&lt;/span&gt; /etc/apt/sources.list.d/caddy-stable.list

&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;caddy &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Before configuring Caddy, you need to point your domain to your server's IP address. If you haven't configured DNS yet, follow these steps:&lt;/p&gt;

&lt;h3&gt;
  
  
  Configure DNS for Your Domain
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Log into your domain registrar's dashboard (where you purchased your domain)&lt;/li&gt;
&lt;li&gt;Navigate to the DNS settings or DNS management section&lt;/li&gt;
&lt;li&gt;Add an &lt;strong&gt;A record&lt;/strong&gt; with the following settings:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Type&lt;/strong&gt;: &lt;code&gt;A&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Name&lt;/strong&gt;: &lt;code&gt;@&lt;/code&gt; (for root domain) or a subdomain like &lt;code&gt;flowise&lt;/code&gt; (for &lt;code&gt;flowise.yourdomain.com&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Value/Target&lt;/strong&gt;: Your Hetzner server's IPv4 address&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add an &lt;strong&gt;AAAA record&lt;/strong&gt; for IPv6 support:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Type&lt;/strong&gt;: &lt;code&gt;AAAA&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Name&lt;/strong&gt;: &lt;code&gt;@&lt;/code&gt; (for root domain) or the same subdomain you used for the A record&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Value/Target&lt;/strong&gt;: Your Hetzner server's IPv6 address&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: DNS changes can take a few minutes to several hours to propagate. You can check if your DNS is configured correctly using tools like &lt;code&gt;dig&lt;/code&gt; or online DNS checkers. Once the DNS record is active, you can proceed with Caddy configuration.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Configure Caddy
&lt;/h3&gt;

&lt;p&gt;Edit the Caddyfile configuration file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/caddy/Caddyfile
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Enter your domain and configure reverse proxy. Replace "yourdomain.com" with your actual domain name:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yourdomain.com {
    reverse_proxy localhost:3000
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If no domain yet, use this temporarily:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;:80 {
    reverse_proxy localhost:3000
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Restart Caddy to load the config:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl restart caddy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 6: Running Flowise with Docker Compose
&lt;/h2&gt;

&lt;p&gt;We're going to use Docker Compose for easier setup. First create a directory for Flowise and navigate to it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; ~/flowise
&lt;span class="nb"&gt;cd&lt;/span&gt; ~/flowise
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create &lt;code&gt;compose.yml&lt;/code&gt; with the following content:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;services&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;flowise&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;flowiseai/flowise:3.0.12&lt;/span&gt;
    &lt;span class="na"&gt;restart&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;always&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;3000:3000"&lt;/span&gt;
    &lt;span class="na"&gt;volumes&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;flowise_data:/root/.flowise&lt;/span&gt;
    &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;DATABASE_PATH=/root/.flowise&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;SECRETKEY_PATH=/root/.flowise&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;LOG_PATH=/root/.flowise/logs&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;BLOB_STORAGE_PATH=/root/.flowise/storage&lt;/span&gt;

&lt;span class="na"&gt;volumes&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;flowise_data&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This setup ensures:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your database persists across container restarts&lt;/li&gt;
&lt;li&gt;Secrets don't reset&lt;/li&gt;
&lt;li&gt;Logs and file uploads are kept between restarts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now deploy Flowise by running Docker compose:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;docker compose up &lt;span class="nt"&gt;-d&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Docker pulls the Flowise image and runs it in background mode using port 3000.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 7: Accessing Your Self-Hosted Flowise Instance
&lt;/h2&gt;

&lt;p&gt;Visit your domain in any web browser. Your Flowise instance should now load successfully at &lt;code&gt;https://yourdomain.com&lt;/code&gt;. Follow the setup steps in the interface to complete your initial setup.&lt;/p&gt;



&lt;h2&gt;
  
  
  Security Recommendations
&lt;/h2&gt;

&lt;p&gt;Public servers should always be secure. The following practises are recommended:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Regularly apply updates and security patches.&lt;/li&gt;
&lt;li&gt;Set strong passwords and control user access.&lt;/li&gt;
&lt;li&gt;Monitor server logs for suspicious activity.&lt;/li&gt;
&lt;li&gt;Install tools like Fail2ban for extra security.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Updating your Flowise Installation
&lt;/h2&gt;

&lt;p&gt;When you want to update your Flowise instance, first check the &lt;a href="https://hub.docker.com/r/flowiseai/flowise/tags" rel="noopener noreferrer"&gt;latest version on Docker Hub&lt;/a&gt;, then update the image version in your &lt;code&gt;compose.yml&lt;/code&gt; file and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;docker compose pull
&lt;span class="nb"&gt;sudo &lt;/span&gt;docker compose up &lt;span class="nt"&gt;-d&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Docker will download updated versions automatically and replace your current containers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cost Comparison with Other Providers
&lt;/h2&gt;

&lt;p&gt;Self-hosting Flowise typically results in lower cost compared to hosted services:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Provider&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;vCPU&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;RAM&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Disk&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Monthly Cost&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Render.com&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;2 GB&lt;/td&gt;
&lt;td&gt;40 GB&lt;/td&gt;
&lt;td&gt;~$35&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fly.io&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2 GB&lt;/td&gt;
&lt;td&gt;40 GB&lt;/td&gt;
&lt;td&gt;~$17–20&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Railway&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2 GB&lt;/td&gt;
&lt;td&gt;40 GB&lt;/td&gt;
&lt;td&gt;~$15–30&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sliplane.io&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2 GB&lt;/td&gt;
&lt;td&gt;40 GB&lt;/td&gt;
&lt;td&gt;~€9.50 flat&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Hetzner Cloud (self-hosted)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;2 GB&lt;/td&gt;
&lt;td&gt;40 GB&lt;/td&gt;
&lt;td&gt;~€5–10/month&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;You maintain complete control and avoid additional usage-based charges by self-hosting. But of course there is no free lunch and you're now responsible for managing your own server!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sliplane.io?utm_source=self-hosting-flowise-on-a-hetzner-ubuntu-server" class="crayons-btn crayons-btn--primary" rel="noopener noreferrer"&gt;Deploy Flowise in minutes with Sliplane now!&lt;/a&gt;
&lt;/p&gt;

</description>
      <category>ai</category>
      <category>devops</category>
      <category>mcp</category>
    </item>
    <item>
      <title>How to Deploy Flowise</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Fri, 09 Jan 2026 16:57:18 +0000</pubDate>
      <link>https://dev.to/yulei-chen/how-to-deploy-flowise-3nd1</link>
      <guid>https://dev.to/yulei-chen/how-to-deploy-flowise-3nd1</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/FlowiseAI/Flowise" rel="noopener noreferrer"&gt;Flowise&lt;/a&gt; is a powerful open-source platform that enables you to build AI agents visually. Depending on your infrastructure and usage requirements, Flowise can be deployed in multiple ways. This guide will introduce two ways to deploy Flowise:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Locally&lt;/strong&gt;, using Docker Compose&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;In the cloud&lt;/strong&gt;, using Sliplane (the easy / production-ready way)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to try Flowise on your machine, go local. If you need a public URL with less setup, skip to the cloud section.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deploy locally
&lt;/h2&gt;

&lt;p&gt;In this section, we’ll deploy Flowise locally with Docker Compose. We’ll provide a minimal, working compose file and walk through a few common Docker Compose commands. By the end, you’ll have a running local setup.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prerequisites
&lt;/h3&gt;

&lt;p&gt;Before we get started, make sure you have &lt;a href="https://www.docker.com/products/docker-desktop/" rel="noopener noreferrer"&gt;Docker Desktop&lt;/a&gt; installed and running.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Create the Docker Compose file
&lt;/h3&gt;

&lt;p&gt;Create a file named &lt;code&gt;compose.yml&lt;/code&gt;, then copy the following code into your file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;services&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;flowise&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;flowiseai/flowise:3.0.12&lt;/span&gt;
        &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;3000:3000&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is the minimum setup needed to get Flowise running.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Start the service
&lt;/h3&gt;

&lt;p&gt;Run the following command &lt;strong&gt;in the same directory&lt;/strong&gt; as your &lt;code&gt;compose.yml&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose up &lt;span class="nt"&gt;-d&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;-d&lt;/code&gt; indicates that the service is running in the background, so if you want to check if it's running:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose ps
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You should see the &lt;code&gt;flowise&lt;/code&gt; service marked as &lt;code&gt;Up&lt;/code&gt;, then you can open your browser and go to &lt;a href="http://localhost:3000" rel="noopener noreferrer"&gt;http://localhost:3000&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Logs can be checked with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose logs &lt;span class="nt"&gt;-f&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;-f&lt;/code&gt; flag streams the logs in real time, just like &lt;code&gt;tail -f&lt;/code&gt;, so you can watch new log output as it happens.&lt;/p&gt;

&lt;p&gt;To stop and remove the service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose down
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Further steps (recommended)
&lt;/h3&gt;

&lt;p&gt;By default, Flowise stores data inside the container. This means &lt;strong&gt;all data will be lost&lt;/strong&gt; if the container is removed. To persist data across deploys and restarts, mount a volume and set the required environment variables:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;services&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;flowise&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;flowiseai/flowise:3.0.12&lt;/span&gt;
        &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;3000:3000&lt;/span&gt;
        &lt;span class="na"&gt;volumes&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;~/.flowise:/root/.flowise&lt;/span&gt;
        &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;DATABASE_PATH=/root/.flowise&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;SECRETKEY_PATH=/root/.flowise&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;LOG_PATH=/root/.flowise/logs&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;BLOB_STORAGE_PATH=/root/.flowise/storage&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This setup ensures:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your database persists&lt;/li&gt;
&lt;li&gt;Secrets don’t reset&lt;/li&gt;
&lt;li&gt;Logs and file uploads are kept between restarts&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Deploy with Sliplane
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://sliplane.io/?utm_source=how-to-deploy-flowise" rel="noopener noreferrer"&gt;Sliplane&lt;/a&gt; is a fully managed Container-as-a-Service platform that makes hosting Docker containers ridiculously simple. &lt;/p&gt;

&lt;p&gt;Sliplane supports &lt;strong&gt;one-click deployment&lt;/strong&gt; for Flowise. All you need to do is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to &lt;a href="https://container.new/flowise" rel="noopener noreferrer"&gt;container.new/flowise&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Select a project&lt;/li&gt;
&lt;li&gt;Select a server&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Deploy&lt;/strong&gt;!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The deployment will start immediately and you’ll be redirected to your project page, where you can see the deployment status.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw200npc5ljtoen5b2vbr.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw200npc5ljtoen5b2vbr.webp" alt="Sliplane service deploy status"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once it changes to "Successful", you can visit the domain&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg89ygr8hle81glngbe8r.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg89ygr8hle81glngbe8r.webp" alt="Sliplane service domain"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and your Flowise is right there! 🎉&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sliplane.io?utm_source=how-to-deploy-flowise" class="crayons-btn crayons-btn--primary" rel="noopener noreferrer"&gt;Deploy Flowise in Seconds with Sliplane Now!&lt;/a&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Further steps
&lt;/h3&gt;

&lt;p&gt;From the Sliplane project settings, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F862re7mdheajr3dyh0u9.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F862re7mdheajr3dyh0u9.webp" alt="Sliplane service settings entrance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add, remove, or edit environment variables&lt;/li&gt;
&lt;li&gt;Add healthchecks&lt;/li&gt;
&lt;li&gt;View container logs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;... and more.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Q: Is Flowise free?&lt;/strong&gt;&lt;br&gt;
A: Flowise is open-source and free to self-host. If you self-host Flowise on Sliplane, there is no Flowise license cost.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is Sliplane pricing like?&lt;/strong&gt;&lt;br&gt;
A: Sliplane uses simple, server-based pricing. You pay for the server you run, and you can deploy unlimited containers on that server at no extra cost. The monthly cost of Sliplane is €9. You can try Sliplane for free for 2 days.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q: What is the difference between Flowise and n8n?&lt;/strong&gt;&lt;br&gt;
A: Flowise is AI-first and designed for building LLM-based apps like chatbots and agents, while n8n is a general-purpose automation tool focused on integrating services and orchestrating workflows. By the way, just like Flowise, n8n can also be deployed seamlessly on Sliplane. Check out &lt;a href="https://sliplane.io/n8n-hosting" rel="noopener noreferrer"&gt;here&lt;/a&gt; to deploy your n8n workflows with Sliplane preset in just 1 click.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>selfhost</category>
      <category>docker</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Fri, 09 Jan 2026 12:42:53 +0000</pubDate>
      <link>https://dev.to/yulei-chen/-4nmk</link>
      <guid>https://dev.to/yulei-chen/-4nmk</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/code42cate" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F461127%2F034233c4-ba6e-473c-8a8d-783831764a10.jpeg" alt="code42cate"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/code42cate/tech-stack-lessons-from-scaling-20x-in-a-year-1ekh" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Tech Stack Lessons from scaling 20x in a year&lt;/h2&gt;
      &lt;h3&gt;Jonas Scholz ・ Jan 9&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#docker&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devops&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#startup&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>webdev</category>
      <category>docker</category>
      <category>devops</category>
      <category>startup</category>
    </item>
    <item>
      <title>Data structures and algorithms</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Thu, 15 May 2025 17:24:59 +0000</pubDate>
      <link>https://dev.to/yulei-chen/data-structures-and-algorithms-27jd</link>
      <guid>https://dev.to/yulei-chen/data-structures-and-algorithms-27jd</guid>
      <description>&lt;p&gt;When I learn some stuff in computer science, e.g. lexers, I always have this kind of feeling that it's easy to build it in my mind but I don't know where to start when I'm about to implement it. &lt;/p&gt;

&lt;p&gt;I asked myself a series of questions, &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Why I can't implement it?", &lt;/li&gt;
&lt;li&gt;"Is there any certain way to think about it?", &lt;/li&gt;
&lt;li&gt;"How can I think in the way computers think when facing a problem?", &lt;/li&gt;
&lt;li&gt;"What's the input of a problem, and how to present the input?",&lt;/li&gt;
&lt;li&gt;"Ahh! Data structures are the understandable data source?", &lt;/li&gt;
&lt;li&gt;"Then how to deal with the logic and interaction between data structures?"&lt;/li&gt;
&lt;li&gt;"Algorithms!!???",&lt;/li&gt;
&lt;li&gt;"Jesus, why I realized this after almost 8 years from the first time I learned data structures and algorithms"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;See, this is another example of &lt;em&gt;THINK INSIDE&lt;/em&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Twilight</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Sun, 04 May 2025 18:02:34 +0000</pubDate>
      <link>https://dev.to/yulei-chen/twilight-1lng</link>
      <guid>https://dev.to/yulei-chen/twilight-1lng</guid>
      <description>&lt;p&gt;There’s a word in Chinese called “西晒“ which means the strong west-facing sunlight in the afternoon. The window of my room is directly facing west, so it has “西晒“ and it’s extremely hot in the summer afternoons. But after the “西晒“, here comes the stunning twilight—a sky fading from deep blue to orange-red, with a crescent moon hanging above—I’m obsessed with. So, don’t get upset by your current obstacle, because the next second you will probably see the twilight.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwixap9u6oiepg5nq6ys.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwixap9u6oiepg5nq6ys.jpeg" alt=" " width="768" height="1024"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>Digital minimalism</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Sat, 26 Apr 2025 19:42:10 +0000</pubDate>
      <link>https://dev.to/yulei-chen/digital-minimalism-jne</link>
      <guid>https://dev.to/yulei-chen/digital-minimalism-jne</guid>
      <description>&lt;p&gt;For a long period of time, I was used to buying stuff online. But after moving to Germany, I sort of get used to buying stuff offline. Online shopping is obviously more convenient, but offline shopping makes me feel ALIVE.&lt;/p&gt;

&lt;p&gt;Another thing I realized after I moved to Germany is that I can live without phone, because digital payment is not a must and paper menu is still common. &lt;/p&gt;

&lt;p&gt;It's high time to reduce screen time and practice digital minimalism now. I do the following things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make my phone dumb&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqduqzb60iafu4ws4092o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqduqzb60iafu4ws4092o.png" alt="Dumb phone" width="778" height="1124"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Buy a lovely notebook&lt;/li&gt;
&lt;li&gt;Keep the laptop in the bag in class&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Life is fragments</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Thu, 24 Apr 2025 16:22:24 +0000</pubDate>
      <link>https://dev.to/yulei-chen/life-is-fragments-3off</link>
      <guid>https://dev.to/yulei-chen/life-is-fragments-3off</guid>
      <description>&lt;p&gt;I used to learn all the things in a linear way. “You must read the first 2 chapters until you start the third chapter”, I always said to myself. However, it turned out I always gave it up in the second chapter, because my original curiosity can’t support me to finish the first 2 chapters.&lt;/p&gt;

&lt;p&gt;One day it came to me that I could directly read the third chapter! I can even skip, jump, repeat and go back, as long as I can connect the relationship between knowledge.&lt;/p&gt;

&lt;p&gt;Jeanette Winterson said in her book, &lt;em&gt;Why Be Happy When You Could Be Normal&lt;/em&gt;, that&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Life is layers, fluid, unfixed, fragments. I never could write a story with a beginning, a middle and an end in the usual way because it felt untrue to me. That is why I write as I do and how I write as I do. It isn’t really an ethos; it’s me.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
    </item>
    <item>
      <title>Mental model and intuition</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Tue, 22 Apr 2025 15:49:07 +0000</pubDate>
      <link>https://dev.to/yulei-chen/mental-model-and-intuition-28a2</link>
      <guid>https://dev.to/yulei-chen/mental-model-and-intuition-28a2</guid>
      <description>&lt;p&gt;I'm learning Python.&lt;/p&gt;

&lt;p&gt;The first thing I want to learn is to build the mental model. Naomi Ceder gives me the inspiration from her blog &lt;a href="https://www.naomiceder.tech/posts/mental_models/" rel="noopener noreferrer"&gt;Notes on Teaching Python — Mental Models&lt;/a&gt;. We’re standing one the shoulder of giants and I really appreciate it. With her words and my understanding, Python’s mental model is pretty similar to JavaScript’s. In Python world, there’re immutable and mutable values and we can use wires/labels to connect them with variables, and the counterparts in JavaScript are respectively primitive and object.&lt;/p&gt;

&lt;p&gt;Today, while I was reading &lt;a href="http://neuralnetworksanddeeplearning.com/chap1.html" rel="noopener noreferrer"&gt;Neural Networks and Deep Learning&lt;/a&gt; by Michael Nielsen, I felt another enlightening and charming wording as mental model is “neural networks intuition“ which just suddenly erased all the cloud in front of me.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The importance of mental models</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Mon, 21 Apr 2025 09:08:04 +0000</pubDate>
      <link>https://dev.to/yulei-chen/the-importance-of-mental-models-4l00</link>
      <guid>https://dev.to/yulei-chen/the-importance-of-mental-models-4l00</guid>
      <description>&lt;p&gt;I worked as a JavaScript developer for 3 years. However, I didn’t know what a mental model of JavaScript meant during the first 2 years until I read Dan Abramov’s book &lt;em&gt;Just JavaScript&lt;/em&gt;, where I realized how important it is to build a correct mental model.&lt;/p&gt;

&lt;p&gt;For example, how do you understand &lt;em&gt;variable&lt;/em&gt;? Consider the following mindless code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;one&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt;
&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;one&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;People with container/bucket model may say &lt;code&gt;b&lt;/code&gt;  is &lt;code&gt;{ one: 1 }&lt;/code&gt; , but people with wire/label model can give &lt;code&gt;{ one: 2 }&lt;/code&gt;  without any hesitation.&lt;/p&gt;

&lt;p&gt;Mental model is not about how something is implemented under the hood. It’s all about &lt;em&gt;thinking inside&lt;/em&gt;, which is why I didn’t say “people with &lt;em&gt;reference&lt;/em&gt; model”.&lt;/p&gt;

&lt;p&gt;Next blog I will share how I build my mental model as a Python beginner.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>I will write a tiny blog every day for 3 weeks</title>
      <dc:creator>Yulei Chen</dc:creator>
      <pubDate>Sun, 20 Apr 2025 18:09:30 +0000</pubDate>
      <link>https://dev.to/yulei-chen/i-will-write-a-tiny-blog-every-day-for-3-weeks-36kg</link>
      <guid>https://dev.to/yulei-chen/i-will-write-a-tiny-blog-every-day-for-3-weeks-36kg</guid>
      <description>&lt;p&gt;Inspired by &lt;a href="https://cbvivi.today/wo-yao-lian-xu-geng-xin-bo-ke-yi-bai-tian-9a50a40f" rel="noopener noreferrer"&gt;cbvivi’s blog&lt;/a&gt; which introduces &lt;em&gt;Tiny Experiments&lt;/em&gt;, I decide to start my first tiny experiment—write a tiny blog every day for 3 weeks, and this blog itself is the first one of them.&lt;/p&gt;

&lt;p&gt;Just as the name is, this is an experiment instead of a habit or a goal, in which I allow myself dislike it and never do it again after 3 weeks. Also, this is a TINY experiment, which means I take not much time to finish it.&lt;/p&gt;

&lt;p&gt;I will not use any LLM to help me correct my grammar mistakes or polish my tiny article. This experiment is all about done or failed, instead of being correct or perfect. &lt;/p&gt;

&lt;p&gt;Just do it.&lt;/p&gt;

</description>
      <category>writing</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
