Skip to content

[OGUI-1586] ILG Docker Compose support - #2710

Draft
Houwie7000 wants to merge 25 commits into
devfrom
feature/Houwie7000/OGUI-1586/docker-compose-ILG
Draft

[OGUI-1586] ILG Docker Compose support#2710
Houwie7000 wants to merge 25 commits into
devfrom
feature/Houwie7000/OGUI-1586/docker-compose-ILG

Conversation

@Houwie7000

Copy link
Copy Markdown
Contributor

I have JIRA issue created

  • branch and/or PR name(s) includes JIRA ID
  • issue has "Fix version" assigned
  • issue "Status" is set to "In review"
  • PR labels are selected
  • FLP integration tests were ran successful

ILG Docker Compose support added:

  1. npm run docker:dev (will run the ILG with Nodemon, a development database, the ILG simulator and phpMyAdmin).
  2. npm run docker:test (will run the ILG npm run test command inside a Docker container and print the live log output).
  3. npm run docker:simul (will run an ILG simulator with the port open so that whenever you run the ILG it will have live mode available).
  4. npm run docker:cleanup (REMOVES all containers created with the above commands and their data).

@isaachilly isaachilly self-assigned this Aug 7, 2026
@isaachilly
isaachilly marked this pull request as draft August 7, 2026 17:00
Adds NODE_ENV to docker-compose for simulator.
It is best to run node directly when possible to allow signals to pass.
Track connected clients and close them when the simulator shuts down.

Previously, if the simulator was closed before the application, it would hang for a period due to orphaned client connections. Now the server explicitly destroys all connected clients during shutdown, ensuring clean termination whether the simulator runs standalone or in conjunction with the app.
Only the test suite drives a browser, moving the `apk add chromium` takes development from 1.45GB to 430MB.

Also corrects the download-skip variable. Pup 25 reads only `PUPPETEER_SKIP_DOWNLOAD`.

`freetype` is already a transitive dependency of `chromium`
Split package*.json up to allow better caching.
Rewrite README to reflect changes.

Copy `package.json` and `package-lock.json` by name so a missing file fails the build.

Remove an unused `COPY` from simulator, move copy comment.
`npm run docker:test` did not start a second stack, it recreated the running dev container which is not useful when constantly rerunning tests while developing.

Set the name in each override file and rewrite the `docker:cleanup` command to run down per project.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants