Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Docker Images

This folder contains the Dockerfile used to build our OAP Docker image. If you want to use the image, please check the user guide for OAP.

The web UI is no longer built from this repository — see the SkyWalking Horizon UI project, whose images are published to ghcr.io/apache/skywalking-horizon-ui.

Quickstart

You can use Makefile located at the root folder to build the OAP docker image with the current codebase.

make docker
# OR skip the tests
make docker SKIP_TEST=true

It not only contains the process of building a docker image but also includes all the required steps, for instance, init workspace, build artifact from scratch. It builds a single OAP image.

docker image ls | grep skywalking
skywalking/oap                                  latest              2a6084450b44        6 minutes ago       862MB

Building variables

There are some environment variables to control image building.

CONTEXT

The Docker build context path, under this path, there should be the distribution tar ball.

ls $CONTEXT
apache-skywalking-apm-bin.tar.gz

DIST

The distribution tar ball name, for example, apache-skywalking-apm-bin.tar.gz.

HUB

The hub of docker image. The default value is skywalking.

TAG

The tag of docker image. The default value is latest.

Running containers with docker-compose

We can start up backend cluster by docker-compose. There are two profiles with different storage options that you can choose, elasticsearch and banyandb.

To start up the backend cluster with elasticsearch as the storage, run the following command:

docker compose --profile elasticsearch up

To start up the backend cluster with banyandb as the storage, run the following command:

docker compose --profile banyandb up

docker/.env file contains some configurations that you can customize, such as the Docker image registry and tags.

After the services are up and running, you can send telemetry data to localhost:11800 and access the Horizon UI at http://localhost:8080 (default login admin / admin, configured in docker/horizon.yaml). The OAP admin host is exposed on localhost:17128 (UI templates, runtime-rule hot update, DSL debugging, status, inspect).