API gateway user access denied when using docker-compose

Product/components used and version/fix level:

Hey there guys,
I’ve been trying to initialize these service using docker images.
I wrote a small compose file to make things simpler. However when I’m separately launching all these containers. they work just fine. I’m not sure what exactly is going wrong here. I’ll post the error below along with the docker compose file.

Docker Compose file:
version: ‘3.3’
services:
devportal-elastic:
image:elasticsearch:7.16.3
environment:
- discovery-type=single-node
volumes:
- es-vol:/usr/share/elasticsearch/data
networks:
- devportal-network
hostname: devportal-elastic
container_name: devportal-elastic

devportal-server:
image: softwareag/devportal:10.15.0.12
environment:
- SPRING_ELASTICSEARCH_REST_URIS=(http)://devportal-elastic:9200
networks:
- devportal-network
hostname: apigw
container_name: devportal-server
ports:
- 80:8083

apigw:
image: softwareag/apigateway-trial:10.15
hostname: apigw-host
container_name: apigw
environment:
- apigw_elasticsearch_hosts=(http://)devportal-elastic:9200
networks:
- devportal-network
ports:
- 5555:5555
- 9072:9072

networks:
devportal-network:

volumes:
es-vol:

Detailed explanation of the problem:

I’ve been looking around this error for a while now, perhaps there’s some sort of env I’ve got wrong.
In

Error messages / full error message screenshot / log file:

(tid=304) Access Denied. Authentication resolved to user “GatewayInternalTechnicalUser”. User is not defined in any of the available user stores.

Integration Server is working just fine, However it when I click on solutions → API gateway, for some odd reason the user isn’t authenticated there so the service denies access.
However all of this is not a problem when I separately live all these containers by docker run command the way it’s been documented on Docker hub.

Question related to a free trial, or to a production (customer) instance?

Hi Abdul,

might be some sort of a race condition during startup of the services?

You can try to put some delays in between of the different startups when possible or try to tweak the order in which they are started.

Regards,
Holger

Okay that may not be the problem coz I added a script that would wait on executing all the containers and go step by step.
to point out more about the problem.

I can access my IS, there when I check Packages → Management, it says WmAPIgateway partially loaded perhaps this would give you a better understanding?

Also there seems to be no associated pool alias in JDBC
if this gives some hint to help me reach the solution. That’d be highly appreciated.

Thank you.

Hi Abdul,

in this case you might want to shutdown and restart IS and monitor server.log for the reaseon why WmAPIgateway only gets partially loaded.

As the screenshot for JDBC pools is incomplete it is hard to detect if there are any settings missing here.

I have never worked with this part of the webMethods Suite, so I am not sure, if the APIGateway functions need to be assigned to a database pool or not. When it requires a database pool assigned, I am not sure if this will work with the embedded database or if this requires a real database.

See API Gateway Installation Guide and/or API Gateway Administrators Guide for further informations.

Regards,
Holger

I solved it.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.