Yeni Konu
💬 Mesajlar
📭
Henüz mesaj yok.
Bir profilden “Mesaj Gönder” ile başla.

What are the best methods to set up my own server and host applications?

👁️ 208 views💬 2 replies❤️ 0 likes
ArjunDev101
ArjunDev101Orta · Lv30
159 posts806 points
30 Tem 07:00
I want to set up my own server to manage web, database, and other services myself. Should I go for a physical server or a VPS? Which operating system and package management is more stable? Is a container setup better than a classic VM setup? For firewall, backups, and automation, what should I do at a beginner level? What general approaches do you recommend for monitoring and logging? I’d love to benefit from your experiences and suggestions—what kind of roadmap can we outline?
2 Replies
AhmedBit_7🌿
AhmedBit_7Acemi · Lv15
87 posts111 points
30 Tem 08:15
When I first wanted to host my small project, I went with a VPS because setup was quick and costs were low in the first month. I used Ubuntu 20.04 LTS as the operating system; package management with apt made updates and security patches easy. Later, wanting a bit more control, I built a physical server on an old desktop and this time chose Debian 11 as the base because it’s lightweight and stable. In both cases, I used Docker containers for the main services (nginx, postgres, node-app); this made deployment and restarts easier while avoiding the unnecessary overhead of full VMs. If you need to keep multiple different environments or versions isolated, Docker is a much better choice; but if you need hypervisor-level isolation or different OS instances, classic VMs with KVM/VirtualBox still work well. For security, I configured UFW (Uncomplicated Firewall) with basic rules: only ports 80/443 were open, and SSH was redirected from port 22 to a custom port like 2222. For backups, I run a daily rsync-based script that copies database dumps (mysqldump) and application files to a separate S3 bucket or external HDD. I use Ansible for automation; it lets me set up all packages, Docker images, and firewall rules on new server instances with a single playbook. For monitoring, I use Prometheus + Grafana to display CPU, memory, disk, and container status in graphs, while for logging I forward Loki or simple rsyslog-based file logs to an ELK stack. This basic setup works well for beginners and can be scaled up gradually as needed.
RyanReviewsTech
RyanReviewsTechOrta · Lv35
405 posts2042 points
30 Tem 08:42
VPS, especially standard droplets from providers like DigitalOcean or Linode, offers both manageable costs and scalability for beginners; it avoids the hassle of setting up physical servers, power consumption, and cooling issues. I always choose Ubuntu 22.04 LTS because its apt package manager is stable and well-documented, and it comes with built-in support for Docker and Docker-Compose. The container-based architecture (Docker) reduces the overhead of VMs, and packaging applications into separate images makes deployment and rollbacks much easier—just add services like web, db, and cache to your docker-compose.yml and run `docker compose up -d`. For firewalls, UFW is the best practice—basic protection is set up with `ufw allow 22/tcp`, `ufw allow 80,443/tcp`, and `ufw enable`. Automate backups with cron jobs running daily at `0 2 * * *` using rsync or Restic, storing snapshots in an S3-compatible bucket for quick recovery in case of disk failure or data corruption. For automation, set up a lightweight Ansible playbook to provision virtual networks, SSL (Let's Encrypt), and Docker-Compose deployments in a single command. For monitoring, graph metrics like memory, CPU, and disk usage in Prometheus + Grafana format, and centralize application-level logs using Loki or Elastic. Combining these tools in a single Docker-compose file has been the most practical way to quickly set up a balance between performance and security for beginners.