-
Install docker, install docker compose (note: it is
docker compose, notdocker-compose). Make sure your linux user has the right permission to execute the docker and docker compose command. Installcurl, e.g.sudo apt install -y curl. -
Run
sudo chmod 666 /var/run/docker.socksince we need to mount docker socket to the container. This is only needed for mac and linux users. -
Execute the following command:
Instruction for Mac and Linux users
# you should have docker and docker compose installed, and 30+ GB of free disk space # as a reference, we used Amazon EC2 t3.2xlarge instances for baselines # Mac users must have host networking enabled sudo chmod 666 /var/run/docker.sock curl -fsSL https://github.com/TheAgentCompany/the-agent-company-backup-data/releases/download/setup-script-20241208/setup.sh | sh
Instruction for Windows users
# you should have docker and docker compose installed, and 30+ GB of free disk space # you must have host networking enabled curl -fsSL -o setup.bat https://github.com/TheAgentCompany/the-agent-company-backup-data/releases/download/setup-script-20241208/setup.bat && setup.bat
The script will automatically do the following things:
- Check your local docker and docker compose version.
- Pull server images. Note: you need at least 30GB available storage space.
- Start all servers and wait until they are all up and running.
-
Infra setup is finished when you see output:
Checking if api-server is running on port 2999... api-server is running on port 2999! Starting health checks... rocketchat is ready! owncloud is ready! gitlab is ready! plane is ready! All services are up and running!
Depending on your server's resources and network bandwidth, this might take from a few minutes to up to 30 minutes at first run.
Now you should be able to visit the services in your browser. Check out the servers/README.md for more details if you'd like to poke around the services. Otherwise, ready to start evaluation? Please refer to the EVALUATION DOC for more details.
Occasionally, you might see some service stuck in a not ready state. Server issue is usually not too concerning from evaluation correctness perspective, as task images all contain health check logic in their initialization scripts. They do need human intervention to recover at times. Please find common issues and troubleshooting guide below.
For reference, once all services are up and running, docker ps should show something like this:
API-server container is the controller of all services. You might see Checking if api-server is running on port 2999... logs
for a while (from a few minutes to 10+ minutes, depending on your server's resources) since it needs to launch all other services.
If you are using Macbook or Windows, you might see api-server waiting to launch indefinitely. In your Docker Desktop, ensure
Settings > Resources > Network > Enable host networking is enabled.
On Windows, you may not see Use kernel networking for UDP option. Please ignore it, and make sure you have Enable host networking ticked.
After enabling host networking, please stop and delete all running containers and restart Docker. Then you can run the setup script again.
We have seen cases where plane services fail to start due to some internal errors. In this case, you can stop and remove all the containers and run the setup script again. If the issue persists, please create a GitHub issue.
Many machines in China may face connectivity issues when trying to access GitHub or download Docker images due to network restrictions, requiring a VPN. If you're experiencing problems deploying the application, please verify the following:
- Check if you can successfully download the Docker image
- If you're stuck at the plane launch process, inside the
api-servercontainer (usingdocker exec -it [container name or id] /bin/bash) and verify connectivity by running:
wget https://raw.githubusercontent.com/TheAgentCompany/plane/refs/heads/stable/deploy/selfhost/docker-compose.yml
If this command fails or gets blocked, you might need to configure a VPN or proxy to establish the necessary connections for deployment.
If you are using Macbook M1, you might see RocketChat never ready due to failure of
bitnami/mongodb container, a component of RocketChat services. This is a known issue
with bitnami mongodb, and a workaround is to select QEMU (Legacy) or Docker VMM (BETA) as virtual machine option in Docker Desktop as follows: