App Manager is designed to run in the Apex Cloud, your cloud or on your desktop using Docker Compose. In some cases, you may need to make small adjustments to the App Manager Docker image for it to work in your environment.
The example we encounter most often is issues with docker compose containers reaching the internet. Some environments use special internet proxies to control access to the internet. The local machine is configured to handle this but when app manager is run using Docker Desktop, an error like this is displayed:
unable to get local issuer certificate
If something like this happens, you need to extend the App Manager Docker image to include the appropriate certificates. In the directory that you download the docker compose yaml file, create a file named "Dockerfile" with this content:
FROM apexbpm/app-manager:18.0.13
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates
COPY ./*.crt /usr/local/share/ca-certificates/
RUN /usr/sbin/update-ca-certificates
WORKDIR /usr/src/app/loopback
CMD [ "npm", "start" ]
Copy the cert files into the same directory and then change your docker compose yaml file replacing the image line with the build line:
version: '3'
services:
web-based-adjustments-dave:
##image: 'apexbpm/app-manager:18.0.13'
build: .
volumes:
environment:
NODE_EXTRA_CA_CERTS: '/usr/local/share/ca-certificates/zscaler.crt'
Instead of running the standard image, the custom image will be built using the Dockerfile. You will also need to add a specific environment variable(s) to pick up the extra cert file(s):
NODE_EXTRA_CA_CERTS: '/usr/local/share/ca-certificates/<file name>.crt'