volumes not working with Datapower and docker

219 Views Asked by At

I am using docker datapower image for local development. I am using this image https://hub.docker.com/layers/ibmcom/datapower/latest/images/sha256-35b1a3fcb57d7e036d60480a25e2709e517901f69fab5407d70ccd4b985c2725?context=explore

Datapower version: IDG.10.0.1.0 System: Docker for mac Docker version 19.03.13

I am running the container with the following config

docker run -it \
-v $PWD/config:/drouter/config \
-v $PWD/local:/drouter/local \
-e DATAPOWER_ACCEPT_LICENSE=true \
-e DATAPOWER_INTERACTIVE=true \
-p 9090:9090 \
-p 9022:22 \
-p 5554:5554 \
-p 8000-8010:8000-8010 \
ibmcom/datapower

when I create files in file management or save a DP object configuration I do not see the changes reflected in the directory on my machine

also I would expect to be able to create files on my host directory and see them reflected in /drouter/config + /drouter/local in the container as well as in the management GUI

the volume mounts don't seem to be working correctly or perhaps I misunderstand something about Datapower or Docker

I have tried mounting volumes in other docker containers under the same path and that works fine so I don't think its an issue with file sharing settings in docker.

2

There are 2 best solutions below

0
On

mounting the volumes like this fixed it for me

-v $PWD/config:/opt/ibm/datapower/drouter/config \
-v $PWD/local:/opt/ibm/datapower/drouter/local \

It seems the container is persisting configuration here instead. This is different than the instructions on dockerHub

0
On

The file system structure changed in version 10.0. There is some documentation in the IBM Knowledge Center showing the updated locations for config:, local:, etc., but the Dockerhub page is not updated to reflect that yet.