Run Multiple Apps on One Server
Appliku supports running multiple applications on the same server. Each application gets its own Docker containers and Nginx configuration, isolated from other applications.
How It Works
When you deploy multiple applications to the same server, Appliku:
- Builds and runs each application in its own set of Docker containers
- Generates a separate Nginx configuration for each application
- Routes traffic based on the domain name — each application must have its own domain
- Manages deployments independently for each application
Setting It Up
Step 1: Deploy Your First Application
Deploy your first application to a server as you normally would. Configure its domain in the Domains tab.
Step 2: Deploy Additional Applications
When creating a new application, select the same server. Appliku will deploy it alongside the existing application.
Step 3: Configure Domains
Each application must have a unique domain (or subdomain). Appliku uses the domain to route incoming requests to the correct application:
app1.example.comroutes to Application 1app2.example.comroutes to Application 2
Two applications cannot share the same domain. If you need path-based routing (e.g., /api goes to one app and / goes to another), consider using a custom Nginx configuration.
Resource Considerations
When running multiple applications on one server, keep these resources in mind:
RAM
Each application and its processes consume memory. Monitor your server's RAM usage:
- A typical Django application with Gunicorn uses 200-500 MB
- A Node.js application typically uses 100-300 MB
- Database processes (PostgreSQL, Redis) add to the total
CPU
Multiple applications share the server's CPU cores. If one application experiences high load, it can affect others on the same server.
Disk
Docker images and build artifacts accumulate over time. Appliku cleans up old images, but monitor disk usage if you deploy frequently.
Use the Server Monitoring feature in Appliku to track resource usage across all applications on a server. This helps you decide when to scale up or move applications to separate servers.
When to Use Separate Servers
Consider dedicated servers when:
- An application has high traffic or resource demands
- You need strict isolation for security or compliance
- One application's deployments should not risk affecting another
- You are running production and staging on the same infrastructure (keep them separate)
When Shared Servers Work Well
Shared servers are a good fit for:
- Low-traffic applications (blogs, internal tools, staging environments)
- Applications that complement each other (e.g., a web app and its API)
- Cost-conscious setups where individual servers per app are not justified