Jason Williams (Progress Software) asked a question.
Using the Container Image for PAS for OpenEdge 11.7 with EFK Stack Logging (Sample App)
Requirements:
- Docker environment
- Docker Compose
- A valid progress.cfg file
- Container Image for PASOE with EFK Stack Logging (available from Docker Hub)
Use the Container Image
- Download the pasoe-basic.zip (the zip file attached to this document).
- Change to the sample application folder:
- cd /pasoe-basic/
- Update the value for `serviceURI` in `webui/grid.js` to point to your Docker host.
- Create a copy of the sports2000 database and start the database server (broker):
- prodb sports sports2000
- proserve sports -S 20000
- Copy your valid `progress.cfg` file into the conf directory and rename it to progress.cfg.pasoe. This will overwrite the placeholder progress.cfg.pasoe file in that directory.
- Update the DBSERVER environment variable in the docker-compose.yaml file to point to the machine running the database server.
- Notes:
- You can also configure the following variables in the docker-compose.yaml file:
- EFK_LOGGING: This enviroment variable determines whether the container uses the EFK Stack for log management. You can use a volume to externalize the logs if desired.
- APP_NAME: The logical name of the application. Changes to this value will be seen in the Elasticsearch indices.
- INSTANCE_NAME: The name of the pasoe instance for the container. This variable is defined in the docker-compose.yaml for runtime needs and in the Dockerfile for build time when the PASOE instance is created.
- EFK_LOGGING: This enviroment variable determines whether the container uses the EFK Stack for log management. You can use a volume to externalize the logs if desired.
- Build the custom container image for the sample application:
- docker login
- This allows access to the PASOE container image in Docker Hub:
- store/progresssoftware/pasoe:11.7.5
- docker-compose build
- See [suggestions in the wiki](https://community.progress.com/community_groups/openedge_deployment/w/openedgedeployment/3280.docker-container-for-pasoe-faq) if you are having issues.
- Increase virtual memory settings to run Elasticsearch:
- sudo sysctl -w vm.max_map_count=262144
- See the following link for additional info:
- Start the services
- docker-compose up -d
- Check that the PAS for OpenEdge instance starts:
- docker-compose exec sports tail -f /oelogs/catalina.out
- Check that Elasticsearch starts:
- docker-compose logs -f elasticsearch
- Access the PAS for OpenEdge instance via a web browser:
- https://<docker-host-machine>:8811/
- https://<docker-host-machine>:8811/Sports/
- https://<docker-host-machine>:8811/Sports/static/SportsService.json
- https://<docker-host-machine>:8811/Sports/rest/SportsService/Customer
- Note: By default, the PAS for OpenEdge instance will use HTTPS with a test certificate. You will need to accept access with this certificate.
- Access the web ui service via a web browser:
- Access Elasticsearch to check on available logs:
- Access Kibana to show the logs:
- http://<docker-host-machine>:5601
- Notes:
- Select Management/Index Management to see the indices in Elasticsearch
- Select Management/Index Pattern to create an index for Kibana:
- Create index for pasoe_agent_log
- Specify @timestamp to filter data by time
- Select Discover to see entries for the pasoe_agent_log index
- Specify @timestamp to filter data by time
- Create index for pasoe_agent_log