Skip to content

Conversation

@walmir-silva
Copy link
Contributor

No description provided.

…ild/runtime logic

- Moved index.php and health.php into php/ folder with proper staging
- Adjusted Dockerfile to stage templates securely under /opt
- Updated docker-entrypoint.sh to publish/remove files at runtime based on DEMO_MODE and HEALTH_CHECK_INSTALL
- Cleaned up .gitignore, .env.example, Makefile, and docker-compose.example.yml accordingly
- Removed old app/public demo/health files
- Updated README.md with new instructions
- Replaces 'unzip' with 'p7zip' to resolve CVE-2008-0888.
- Removes 'tar' package to resolve CVE-2025-45582, as it is not required by the application at runtime.
…-nuke target

Implements an end-to-end Xdebug setup for the development environment,
allowing it to be conditionally compiled at build-time and enabled or
disabled at run-time. Also adds an interactive `docker-nuke` Make target
to fully clean the local Docker environment.

Dockerfile (dev):
- Compile Xdebug from source only when APP_ENV=development and
  XDEBUG_ENABLE=1 during build.
- Add required build deps (linux-headers, curl).
- Keep changes isolated to the dev stage.

php/xdebug.ini:
- Add a dedicated template for Xdebug settings.

docker-entrypoint.sh:
- Switch to log_info/log_warning helpers for clearer logs.
- Toggle Xdebug at runtime: check XDEBUG_ENABLE=1 and verify the module
  exists (php -m | grep xdebug) before applying the template.
- Log "-> Xdebug is active" when services start with Xdebug enabled.

scripts/process-configs.sh:
- Upgrade echo calls to log_info/log_error helpers.
- Export XDEBUG_VERSION by default.
- Point Xdebug config logic to the new xdebug.ini.template.

.env.example:
- Add XDEBUG_VERSION build argument.

build-from-env.sh:
- Pass --build-arg XDEBUG_VERSION to docker build.

Makefile:
- Add logs-dev target (inferred).
- Add docker-nuke target to remove all containers, images, volumes,
  networks, and caches with an explicit YES confirmation.
Docker Hub Integration:
- Fix hub-check display bug showing 'ag' instead of tag names (printf vs echo -n)
- Simplify dev tagging: remove versioned tags (dev-X.Y.Z), keep only 'dev'
- Fix bump-patch/bump-minor/bump-major dollar sign escaping (\$\$)
- Improve hub-check with checkmark indicators (✓/✗)

Build System:
- Fix PHP_CORE_EXTENSIONS and PHP_PECL_EXTENSIONS quoting in Makefile
- Secure .env parsing in build-from-env.sh to prevent command execution
- Add proper escaping for build args with spaces

Redis Integration:
- Override REDIS_HOST to 127.0.0.1 for standalone containers (make run/run-dev)
- Add smart DNS fallback in health.php for docker-compose vs standalone
- Document REDIS_HOST behavior in .env comments

Dockerfile Fixes:
- Fix OPcache validation check (Zend extension vs regular extension)
- Add util-linux runtime dependency for UUID extension
- Fix SC1075 shellcheck error (else if -> elif)
- Improve extension loading verification with proper OPcache check

The stack now properly handles both standalone (make run) and
docker-compose deployment modes, with automatic Redis host resolution
and improved developer experience.
- Update README.md with improved structure and v1.5.0 changelog
  * Add comprehensive Makefile documentation (3 specialized files)
  * Expand health check system details
  * Improve Docker Compose section with profiles
  * Add security features section
  * Update all version references to 1.5.0
  * Fix component versions (PHP 8.4.13, Redis 7.2.11, Alpine 3.21)

- Update IMAGE_USAGE_GUIDE.md with corrections and improvements
  * Fix version references from 1.2.1 to 1.5.0
  * Remove references to supervisorctl (not used)
  * Document REDIS_HOST behavior (127.0.0.1 vs service name)
  * Add Redis troubleshooting section for standalone/compose modes
  * Expand Kubernetes section with HPA
  * Add Docker Swarm high availability examples
  * Improve troubleshooting section with practical solutions

- Update DOCKER_HUB.md for Docker Hub publication
  * Update to v1.5.0 with complete feature list
  * Add dev tag documentation
  * Remove non-existent 'stable' tag
  * Document three specialized Makefiles
  * Add comprehensive configuration examples
  * Expand security and testing sections
  * Include version history and changelog

- Remove DOCKER_HUB_OVERVIEW.md (consolidated into DOCKER_HUB.md)

These documentation updates prepare the project for the v1.5.0 release,
providing comprehensive guides for end users, developers, and maintainers.
@walmir-silva walmir-silva merged commit 2e1a548 into main Oct 24, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants