Run with Docker
Run DevPortal with Docker
This guide explains how to run the VeeCode DevPortal using standard Docker commands. This is useful for quick testing, local development, or if you prefer not to use the VKDR CLI.
Prerequisites
- Docker Engine installed and running.
- Docker Compose installed and running.
- You can alternatively use Docker Desktop for Windows/Mac/Linux.
- Other options like Podman, OrbStack, Rancher Desktop, or Colima will probably work as well with some minor adjustments.
Quick Start (Docker Run)
You can simply run the following command to start a DevPortal instance locally:
# check for latest release
docker run --rm --name devportal -d -p 7007:7007 veecode/devportal:latest
This will start a DevPortal instance running on http://localhost:7007.
The default behavior enables "guest" authentication as an admin user. The default catalog will be populated with a built-in catalog for demo purposes.
You can stop this container with:
docker stop devportal
Quick Start (Docker Compose)
Alternatively, you can use docker compose to start a DevPortal instance locally with exactky the same result:.
Create a docker-compose.yml file:
services:
devportal:
image: veecode/devportal:latest
ports:
- "7007:7007"
Run it with:
docker compose up -d
Stop it with:
docker compose down
What you get
The DevPortal instance will be running on http://localhost:7007, with very limited functionality but still a good starting point.
Points to notice:
- "Guest" authentication enabled as an admin user ("user:default/admin", "group:default/admins", "role:default/admin" with all permissions granted).
- The catalog will be populated with a built-in catalog for demo purposes (folder "/app/examples" inside the containers).
- The bundled
app-config*.yamlfiles define the container's default behavior, but you can override any config by mounting a custom config file at/app/app-config.local.yamland providing just the changes you need. - There are many plugins already bundled in the container image, ready to be enabled. You can mount the
/app/dynamic-plugins.yamlplugin file to enable those you want to use.
We will talk more about these subjects later on, but understand there are many possible ways to extend and configure DevPortal container without rebuilding it (or making a derived image).
Next Steps
Now that you have DevPortal running, you can customize it:
- Quick Setup with Profiles: Use
VEECODE_PROFILEfor quick GitHub, GitLab, or Azure DevOps integration - Custom Configuration: Mount custom
app-config.local.yamlto configure integrations, authentication, and more - Dynamic Plugins: Enable, disable, and configure plugins using
dynamic-plugins.yaml - Custom Catalog: Add your own components, APIs, and resources to the catalog