Run Stubby4j - Option 1

Download the last version of stubby4j to your computer from http://central.maven.org/maven2/by/stub/stubby4j/6.0.1/stubby4j-6.0.1.jar, then go to the folder where you saved the jar and run the command.

java -jar stubby4j-6.0.1.jar -d path-to-yaml-config/config.yml

Or you can run it from any other place with

java -jar path-to-jar/stubby4j-6.0.1.jar -d path-to-yaml-config/config.yml

Run Stubby4j - Option 2

Another but similar option - instead of downloading temporarily include stubby4j as a dependency into your project.

Maven example

	<dependency>
	    <groupId>io.github.azagniotov</groupId>
	    <artifactId>stubby4j</artifactId>
	    <version>6.0.1</version>
	</dependency>

Then run mvn install in the root folder of your project. That will download the jar to your local Maven repository. After that do the same as you do in the option 1

Example for Windows

java -jar $HOMEPATH/.m2/repository/io/github/azagniotov/stubby4j/6.0.1/stubby4j-6.0.1.jar -d path-to-yaml-config/config.yml

Run Stubby4j - Option 3

Run stubby4j as a Docker container

Dockerfile example

FROM <any-image-that-includes-java>

RUN wget http://central.maven.org/maven2/io/github/azagniotov/stubby4j/6.0.1/stubby4j-6.0.1.jar -O /usr/local/stubby4j.jar

EXPOSE 8889 8882

CMD java -jar /usr/local/stubby4j.jar -d no.yaml --location "0.0.0.0" --watch

By default http://localhost:8882 is the stubs portal, http://localhost:8889 is the admin portal. They should be exposed externally.

The command for running a docker image

docker run -p 127.0.0.1:8889:8889 127.0.0.1:8882:8882 <your-image>

Configuration YAML file

When Stubby4j starts it requires you to specify the YAML configuration file (-d /usr/local/config.yml) where you have to describe the stubs that you want to create. Find more about confuguration yaml files here Endpoint configuration HOWTO

I personally prefer to configure stubby4j via Http. Usually I specify a non-existing file -d no.yml.

CMD java -jar /usr/local/stubby4j.jar -d no.yml -l 0.0.0.0

On startup stubby4j complains that it cannot find no.yml but proceeds with no configuration - that’s exactly what I need.

UPD: BTW, I created the pull request that allows to start Stubby4j without having to specify yaml configuration.

If you do everything well then you’ll get these available:

  • http://localhost:8882 - the stubs portal
  • http://localhost:8889 - the admin portal
  • http://localhost:8889/status - configured stubs and other useful info