Skip to content

Docker-based development environments with VS Code in the browser. Create isolated containers for coding without local setup.

Notifications You must be signed in to change notification settings

ravi-ivar-7/Controlia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Controlia

A web app that creates Docker containers for development environments. You get VS Code in your browser.

What it does

  • Creates Docker containers with development tools
  • Runs VS Code server so you can code in your browser
  • Handles user login with Google/GitHub
  • Manages background jobs with Redis queues
  • Sends emails when things break
  • Lets you set CPU/memory limits on containers

Tech stack

Backend: Node.js, Express, MongoDB, Redis, Docker API, Socket.IO Frontend: React, Bootstrap

What you need

# Get the code
git clone https://github.com/ravi-ivar-7/Controlia.git
cd Controlia

# Install stuff
cd nodejs && npm install
cd ../react && npm install

# Set up environment
cd ../nodejs
cp .env.example .env
# Edit .env with your database URLs and secrets

# Start it
npm start  # in nodejs folder
npm start  # in react folder (new terminal)

Then go to http://localhost:3000

Environment setup

Edit nodejs/.env:

HTTP_PORT=3001
MONGODB_URL=mongodb://localhost:27017/controlia
REDIS_URL=redis://localhost:6379
SECRET_KEY=make-this-random
GOOGLE_CLIENT_ID=your-google-id
GITHUB_CLIENT_ID=your-github-id
DOCKER_SOCKET_PATH=/var/run/docker.sock

Problems you'll hit

  • Redis connection timeouts if you don't have Redis running
  • Docker permission errors if your user isn't in docker group
  • MongoDB connection fails if it's not running
  • Port 3000/3001 already in use

Files

About

Docker-based development environments with VS Code in the browser. Create isolated containers for coding without local setup.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published