OpenDevin the scaly way.
This project's goal is a catch-all solution to running this project along with its dependencies in docker.
This code is highly experimental. Please use at your own risk.
I decided to release it public at this time because the code is being worked on over at the OpenDevin/OpenDevin repository in this issue
Some of this command line utility code, including the docker entrypoint script and multistage builder / bash swarm / stack API may be useful to the contributors currently working on the project.
You'll need docker on your favorite flavor of Linux. Please verify your docker installation is completed by running the docker ps
command.
We advise choosing NOT to install docker from your package manager, as this tends to be out of date, and following the official installation instructions from docker's wiki instead, for your distro.
You should have GNU Bash 4.1 or greater installed.
- You know what to do:
git clone 'https://github.com/loopyd/DockerOpenDevin' ./ddod
cd ./ddod
Now you can run:
opendevin manager up
To install some useful core services to monitor your installation. These currently include:
- Docker Registry -- for locally managing your own container registry. This is required by the build process in the next step.
- Portainer -- for viewing locally running containers, volumes, images, services, and stacks, as well as getting into a shell via a web browser. This isn't required, but is highly recommended by us as an alternative over installing Docker Desktop, as our tool just uses the raw Docker Engine, where that is unessecary.
Next, you'll need to build the opendevin runtime. You can do so with the following command:
opendevin gen build
Once your build of the opendevin runtime image is successful, you can do:
opendevin gen up
To deploy the docker stack!
Open a web browser, and navigate to one of the following:
- Your frontend (nodejs/python) OpenDevin service is available at localhost:3001
- Your backend (fastapi) OpenDevin service is available at localhost:3000
An overlay network allows the two containers to communicate with each other! Voila! You're done.
You can pass the -h
or --help
flag to any command to see additional usage information. This can help you a bit when you get stuck or forget what actions have been made available to you.
You can pass the --debug
flag to enable printing extra output. This can help you diagnose problems, and you definitely should show --debug
output when contributing
This repository currently has 1 Maintainer
Hi, I'm DeityDragon, your friendly full stack developer. I've been working as a software consultant for the last 10 years. I started writing software when I was 6. I have many years of experience working with many different projects. Thank you so much for visiting my repository. If you like my work, RAWR! Give it a star!