Skip to content

Conversation

@ronibhakta1
Copy link
Collaborator

@ronibhakta1 ronibhakta1 commented Jun 25, 2025

Closes #76
This pull request introduces Readium LCP and LSD server functionality to the project, with significant updates to the Docker configuration, environment setup, and database schema. It adds support for encryption, license management, and status tracking, along with scripts for configuration generation and authentication setup.

Docker and Service Configuration:

  • Updated compose.yaml to include three new services (lcpserver, lsdserver, and lcpencrypt) for handling Readium LCP and LSD functionality. These services are configured with appropriate volumes, environment variables, and dependencies.
  • Added a new Dockerfile for building the Readium LCP server binaries (lcpencrypt, lcpserver, and lsdserver) and preparing the runtime environment.

Environment and Configuration Management:

  • Extended docker/configure.sh to include environment variables for LCP and LSD server configuration, such as host, port, authentication credentials, and database details. [1] [2]
  • Added scripts to generate LCP/LSD configuration files (generate_lcp_configs.sh) and Apache htpasswd files for server authentication (generate_htpasswd.sh). [1] [2]
  • Created a utility script (refresh_configs.sh) to regenerate environment and configuration files for seamless updates.

Database Schema:

  • Added SQL scripts to set up the lcp database and create tables for LCP server (content, license) and LSD server (license_status, event). These tables manage content encryption, licenses, and license status tracking. [1] [2] [3]

Supporting Files:

  • Included test certificates and private keys (cert-edrlab-test.pem, privkey-edrlab-test.pem) for the LCP server. [1] [2]
  • Added .gitkeep files to ensure empty directories (readium/tmp, readium/readium-lcp-server) are tracked by Git for Docker builds.

Integration:

  • Updated run.sh to execute the new configuration and authentication scripts during setup.
  • Readium-lcp-server setup is done
  • Supports the postgres db inside the lenny
  • Complete working readium-lcp-server with lcpserver,lsdserver & lcpcrypt
  • Dynamic configure file generator for readium-lcp-server

@ronibhakta1 ronibhakta1 force-pushed the lenny-lcp-server-v1 branch from 1cb8bfb to 1f32676 Compare June 25, 2025 19:28
…script to directly generate configurations and htpasswd
…ove environment variable loading, and enhance configuration generation scripts
…okshelf volume, switch storage mode to filesystem, and enhance testing documentation
…in Docker Compose and update LCP Testing Guide to use environment variable for LCP server authentication
…oded credentials with actual values for LCP and LSD server authentication
@ronibhakta1 ronibhakta1 force-pushed the lenny-lcp-server-v1 branch from 776afe3 to 870ac12 Compare July 14, 2025 20:03
@ronibhakta1 ronibhakta1 self-assigned this Aug 20, 2025
@ronibhakta1 ronibhakta1 added bug Something isn't working enhancement New feature or request help wanted Extra attention is needed labels Aug 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request help wanted Extra attention is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

LCP Server Integration for lenny

1 participant