Skip to main content

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

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.

note

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.

Setup Defaults

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*.yaml files define the container's default behavior, but you can override any config by mounting a custom config file at /app/app-config.local.yaml and 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.yaml plugin 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_PROFILE for quick GitHub, GitLab, or Azure DevOps integration
  • Custom Configuration: Mount custom app-config.local.yaml to 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