Skip to content

Docker and Docker-Compose Refactor#80

Closed
1Solon wants to merge 3 commits into
mainfrom
feat-docker-refactor
Closed

Docker and Docker-Compose Refactor#80
1Solon wants to merge 3 commits into
mainfrom
feat-docker-refactor

Conversation

@1Solon

@1Solon 1Solon commented Sep 16, 2025

Copy link
Copy Markdown
Contributor

This PR refactors the existing Dockerfile with:

  • a multi-stage-build
  • layer caching
  • rootless containers

( Now you can add rootless container as another security buzzword! ;> )

Additionally, I've changed the docker-compose to take advantage of the above- and also included some volume configuration, in particular:

  volumes:
      # Persist app data between container restarts
      - app-data:/app
      # Mount saves and config for easy access/editing outside the container
      - ./saves:/app/saves:rw
      - ./UIMod/config:/app/UIMod/config:rw
      - ./UIMod/tls:/app/UIMod/tls:rw

Including the volume (and the mount overrides) allows us to maintain persistence between restarts, and also maintains performance (mounts are notorious for killing file i/o)

Changes

  • added Github CodeQL
  • (frontend) upd. dependencies and rm electron entirely
  • refactor: update Dockerfile and compose.yml with rootless containers and multi-stage build process

JacksonTheMaster and others added 3 commits September 15, 2025 03:41
Added Github CodeQL out of pure curiosity about the feature, might remove later
electron was leftover from steamserverui and is not needed in this repo
Copilot AI review requested due to automatic review settings September 16, 2025 16:42
@1Solon 1Solon added the enhancement New feature or request label Sep 16, 2025
@1Solon 1Solon self-assigned this Sep 16, 2025
@1Solon 1Solon added the enhancement New feature or request label Sep 16, 2025

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR refactors the Docker and Docker-Compose setup to improve security, performance, and maintainability. It introduces a multi-stage build process with layer caching optimization and implements rootless containers for enhanced security.

  • Removes Electron desktop application entirely and associated dependencies
  • Implements multi-stage Docker build with separate frontend and Go compilation stages
  • Adds GitHub CodeQL workflow for security analysis

Reviewed Changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
frontend/package.json Removes Electron dependencies and build scripts, bumps version to v5.6.4
frontend/main.cjs Complete removal of Electron main process file (458 lines deleted)
compose.yml Adds named volumes for data persistence and additional mount points for configuration
Dockerfile Refactored to multi-stage build with rootless user, separate frontend/Go build stages
.github/workflows/codeql.yml Adds GitHub CodeQL security analysis workflow for Go and JavaScript

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@1Solon

1Solon commented Sep 16, 2025

Copy link
Copy Markdown
Contributor Author

Whoops, I did EXACTLY what you told me not to, let me remake that :P

@1Solon 1Solon closed this Sep 16, 2025
@JacksonTheMaster JacksonTheMaster deleted the feat-docker-refactor branch September 18, 2025 00:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants