How to Use Hetzner Dedicated for Code Review
A practical guide to using Hetzner Dedicated for code review: workflow, tips, and when to use something else.
Why Use Hetzner Dedicated for Code Review?
Code review platforms demand consistent performance, reliable uptime, and predictable costs. When you're running self-hosted review tools like GitLab, Gerrit, or Phabricator, virtual machines can introduce performance variability that slows down developer workflows. Hetzner's dedicated servers eliminate the "noisy neighbor" problem while delivering exceptional value.
You get full hardware isolation starting at just €39/month for an Intel Xeon E3-1230 with 32GB RAM and 2TB storage. This price point makes dedicated infrastructure accessible for teams that previously couldn't justify the cost. The servers ship with IPMI remote management, allowing you to troubleshoot issues without datacenter visits.
For European teams, Hetzner's German datacenters provide GDPR compliance out of the box and low latency across the EU. The company's reputation for reliability means your code review infrastructure stays online when developers need it most.
However, Hetzner's network focuses on European connectivity. If your development team spans multiple continents, you'll face higher latency from Asia-Pacific or Americas regions.
Getting Started with Hetzner Dedicated
Before ordering your server, you'll need to plan your code review architecture. Most teams start with a single server running their review platform, database, and Git repositories. As usage grows, you can separate these components across multiple dedicated servers.
Visit the Hetzner Robot panel at robot.your-server.de to browse available servers. The EX44 (Intel Xeon E-2136, 64GB RAM, 2x512GB NVMe) at €64/month offers excellent performance for code review workloads. For larger teams, consider the EX101 (AMD EPYC 7502P, 128GB RAM, 2x1TB NVMe) at €119/month.
During ordering, select your preferred datacenter location. Falkenstein (FSN1) and Nuremberg (NBG1) provide the best connectivity within Germany. Helsinki (HEL1) serves Nordic teams well, while Ashburn (ASH) covers North American requirements.
Choose Ubuntu 22.04 LTS or Debian 12 as your base operating system. These provide long-term stability for code review infrastructure. Avoid bleeding-edge distributions that might introduce compatibility issues with your review platform.
Configure your SSH key during the provisioning process. Hetzner disables password authentication by default, which improves security but requires proper key management.
Step-by-Step Setup
Once your server provisions (typically within 24 hours), you'll receive root credentials via email. Log in immediately to secure the system:
ssh root@your-server-ip
apt update && apt upgrade -y
ufw enable
ufw allow ssh
ufw allow 80
ufw allow 443
Install Docker and Docker Compose for containerized deployments. This approach simplifies updates and provides better isolation:
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
apt install docker-compose-plugin
Create a dedicated user for your code review application:
useradd -m -s /bin/bash coderev
usermod -aG docker coderev
mkdir /opt/coderev
chown coderev:coderev /opt/coderev
For GitLab installation, create a docker-compose.yml file in /opt/coderev:
version: '3.8'
services:
gitlab:
image: 'gitlab/gitlab-ee:latest'
hostname: 'your-domain.com'
ports:
- '80:80'
- '443:443'
- '22:22'
volumes:
- '/opt/coderev/config:/etc/gitlab'
- '/opt/coderev/logs:/var/log/gitlab'
- '/opt/coderev/data:/var/opt/gitlab'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://your-domain.com'
gitlab_rails['gitlab_shell_ssh_port'] = 22
Launch GitLab with:
su - coderev
cd /opt/coderev
docker compose up -d
GitLab requires significant memory during startup. Monitor resource usage with htop and be patient during the initial boot process, which can take 10-15 minutes.
Configure your DNS to point to the server's IP address. Hetzner provides reverse DNS management through the Robot panel, which helps with email deliverability for notification systems.
Set up SSL certificates using Let's Encrypt. GitLab's built-in ACME integration handles this automatically when you specify an HTTPS external_url.
Configure automatic backups to Hetzner's Storage Box service or an external provider. Code review data represents critical intellectual property that requires protection:
# Install restic for incremental backups
apt install restic
restic init --repo sftp:your-storage-box:/backups/gitlab
Create a backup script that runs via cron:
#!/bin/bash
docker compose exec gitlab gitlab-backup create
restic backup /opt/coderev/data/backups --repo sftp:your-storage-box:/backups/gitlab
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --repo sftp:your-storage-box:/backups/gitlab
Tips and Best Practices
Monitor your server's performance using built-in tools. Code review platforms can be resource-intensive, especially during peak usage hours. Install monitoring tools early:
apt install htop iotop nethogs
docker run -d --name=netdata --restart=always -p 19999:19999 netdata/netdata
Configure GitLab's built-in monitoring stack (Prometheus, Grafana) to track application-level metrics. This helps identify bottlenecks before they impact developer productivity.
Optimize your database configuration based on available RAM. GitLab uses PostgreSQL by default, which benefits from proper tuning:
# Add to gitlab.rb
postgresql['shared_preload_libraries'] = 'pg_stat_statements'
postgresql['shared_buffers'] = "4GB"
postgresql['effective_cache_size'] = "12GB"
postgresql['work_mem'] = "16MB"
Set up log rotation to prevent disk space issues. Code review platforms generate substantial logs, especially with verbose debugging enabled:
# Configure in /etc/logrotate.d/gitlab
/opt/coderev/logs/*.log {
daily
missingok
rotate 7
compress
notifempty
create 644 git git
}
Implement proper access controls from day one. Configure LDAP or SAML integration if your organization uses centralized authentication. This prevents credential sprawl and simplifies user management.
Consider using Hetzner's Load Balancer service if you plan to scale horizontally. While a single dedicated server handles most team sizes, high-availability setups require proper load distribution.
Take advantage of Hetzner's rescue system for maintenance tasks. You can boot into a rescue environment to perform filesystem repairs or major system updates without physical access.
When Hetzner Dedicated Isn't the Right Fit
Hetzner's European focus creates limitations for global teams. If you have significant development activity in Asia-Pacific, consider providers with better regional coverage. Network latency above 200ms impacts code review workflows noticeably.
The lack of managed services means you're responsible for all maintenance tasks. Teams without dedicated infrastructure expertise might prefer cloud platforms with managed database and monitoring services.
Compliance requirements beyond GDPR might necessitate other providers. While Hetzner offers German data protection, specific industry regulations (HIPAA, SOX) may require certified platforms.
Budget-conscious startups might initially prefer cloud virtual machines for their flexibility. However, calculate long-term costs carefully – dedicated servers often provide better value as usage scales.
Single-server deployments create availability risks. If uptime requirements exceed 99.9%, you'll need to architect redundancy across multiple servers or consider cloud alternatives with built-in high availability.
Conclusion
Hetzner dedicated servers provide exceptional value for code review infrastructure, especially for European teams. The combination of bare-metal performance, predictable pricing, and GDPR compliance addresses common pain points with cloud-based solutions.
Starting at €39/month, you can deploy production-ready code review infrastructure that scales with your team. The hardware isolation eliminates performance variability while full root access enables complete customization.
Success depends on proper planning and ongoing maintenance. Factor in backup strategies, monitoring setup, and security hardening from the beginning. The investment in operational excellence pays dividends in developer productivity and system reliability.
For teams with global distribution or complex compliance requirements, carefully evaluate network latency and regulatory implications before committing to Hetzner's European infrastructure.
Compare Hetzner Dedicated with alternatives on HostingSpotter.
Tools mentioned in this article
Hetzner Dedicated
Bare-metal dedicated servers from €39 in Germany
Share this article
Stay in the loop
Get weekly updates on the best web hosts, renewal-pricing alerts, and deal drops.
No spam. Unsubscribe anytime.