Hourly DevOps/Linux: Walkthrough to Deploy Docker WebRTC Apps on VPS

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Gig

SALARY

Please state your hourly rate

HOURS PER WEEK

TBD

DATE UPDATED

Sep 19, 2026

JOB OVERVIEW

I am looking for an experienced DevOps / Linux Administrator to do a 1-on-1 live screen-share session (via Zoom or Google Meet) to guide me step-by-step through setting up two open-source Docker applications on my Hostinger Linux VPS.

I want to perform the terminal steps myself on my screen while you explain what we are doing, answer my questions, and help troubleshoot any issues that pop up in real time.

Scope of Work (What We Will Set Up Together):

1. DNS & Subdomains: Point two subdomains (e.g., ---------- and ---------- ) to my Hostinger VPS IP address.

2. Docker App Deployment:
- Deploy msitarzewski/openstudio (OpenStudio podcast studio) in its Docker container.
- Deploy miroslavpejic85/mirotalksfu (MiroTalk SFU video call room) in its Docker container.

3. Reverse Proxy & SSL: Configure Nginx/Caddy to handle reverse proxy routing and Let’s Encrypt HTTPS certificates for both subdomains.

4. WebRTC NAT Traversal: Ensure ports are correctly mapped and set up a shared STUN/TURN server (Coturn) so WebRTC connections work seamlessly for external guests.

5. Testing & Q&A: Test local multi-track recording, verify HTTPS webcam permissions, and show me how to check logs and clean up server files.

Requirements:

- Must speak fluent English and be comfortable communicating clearly during a live video call.
- Deep experience with Linux (Ubuntu/Debian), Docker, Docker Compose, Nginx/Caddy, Certbot SSL, and WebRTC/Coturn setups.
- Patient, teaching-oriented mindset—you will be coaching me while I type and run the commands, not doing it in secret on your own terminal.

Engagement Details:

- Format: Hourly screen-share consultation.
- Estimated Time: 2 – 4 hours total (can be done in 1 or 2 sessions).
- Hourly Rate: Depends on your DevOps experience and clear spoken communication skills in English.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0011
Controller Execution Time ( Jobseekers / Job )  0.0163
Total Execution Time  0.0183
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,486,968 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Hourly-DevOpsLinux-Walkthrough-to-Deploy-Docker-WebRTC-Apps-on-VPS-1734195
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0084 seconds)  (Hide)
0.0005   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1734195
 LIMIT 1 
0.0008   SELECT *
FROM `employers`
WHERE `employer_id` = 602209
 LIMIT 1 
0.0007   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1734195
AND `misc`.`id` IS NULL 
0.0005   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-09-27',ej.date_added) duration_days, DATEDIFF('2026-09-27',e.rebill_date) duration_rebill, ej.*, e.deactivate FROM employers e, employer_jobs ej WHERE e.employer_id = ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id = '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-09-27',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1734195' 
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1734195 
0.0007   UPDATE employer_jobs SET hit_counts = '***Sep-19-2026=193***Sep-20-2026=103***Sep-21-2026=36***Sep-22-2026=20***Sep-23-2026=30***Sep-24-2026=15***Sep-25-2026=9***Sep-26-2026=12***Sep-27-2026=2' WHERE job_id= '1734195'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Sep-2026=418' WHERE job_id= '1734195'  
0.0006   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1734195' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1734195 
0.0020   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '602209'
AND `date_added` >= '2022-06-08' 
0.0004   select * from teasers 
0.0004   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)