Demo Resource Server

The demonstration resource server is a simple application which can be used in place of a real application while experimenting with IBM Application Gateway's capabilities.

When configured with IAG, this application:

  • Can respond to requests for any URL
  • Displays all received HTTP headers, including identity headers added by IAG
  • Displays the decoded version of any basic authentication header provided
  • Displays the claims within a JWT passed in the 'jwt' HTTP header

Refer to the Hello World topic for complete examples.

Hosted Version

A hosted version of the demo resource server is available at the following locations:

ProtocolHostPort
HTTPSresource-server.au-syd.mybluemix.net443
HTTPresource-server.au-syd.mybluemix.net80
resource_servers:
  - path:            /demo-https
    connection_type: ssl
    servers:
      - host: resource-server.au-syd.mybluemix.net
        port: 443
    ...
  - path:            /demo-http
    connection_type: tcp
    servers:
      - host: resource-server.au-syd.mybluemix.net
        port: 80
    ...

Docker Container

The IBM Application Gateway (IAG) image is available from IBM Cloud Container Registry: icr.io/ibmappgateway/ibm-application-gateway-demo-resource-server:23.04

See Software Downloads > Containers for more information.

Accessing the Image

To load the image from IBM Cloud Container Registry the 'docker pull' command should be used. The image name should be supplied with the pull command, along with a tag which corresponds to the image version number. For example:

docker pull icr.io/ibmappgateway/ibm-application-gateway-demo-resource-server:23.04

Ports

The demo resource server container will expose a single port which the server will listen for requests: HTTP 8000. By default the Docker environment will publish this port to random ports on the Docker host. If a specific port or Docker host IP address is required the '--publish' option should be used with the 'docker run' command.

Quick Start

To start the container in the foreground execute the command:

docker run --rm --name iag-demo-resource-server icr.io/ibmappgateway/ibm-application-gateway-demo-resource-server:23.04

However, a more complete command, which would specify a port, could be:

docker run --name iag-demo-resource-server \
    --detach \
    --publish 8080:8000 \
    icr.io/ibmappgateway/ibm-application-gateway-demo-resource-server:23.04
    
## Examine the request log file of the container.
docker logs -f iag-demo-resource-server

Supported Tags

TagPurpose
YY.MMA particular release, of the format: {year}.{month}. For example 23.04.
YY.MM.RA particular release, of the format: {year}.{month}.{revision} For example 23.04.0