Skip to content

Conversation

@John-Ferrel
Copy link

Problem

The current Docker healthcheck in docker-compose.yml uses curl to check the /api/v2/heartbeat endpoint, but the runner stage doesn't have curl installed. This causes healthcheck failures when using the official Docker setup.

Solution

Add curl installation to the runner stage in Dockerfile to support healthcheck functionality.

Changes

  • Modified rust/Dockerfile to install curl in the runner stage
  • This ensures healthcheck commands work as expected in docker-compose

Impact

  • Minimal: Only adds curl to existing apt-get install command
  • Backward Compatible: No breaking changes
  • Useful: Fixes a real usability issue that many users encounter

Testing

The healthcheck command curl -f http://localhost:8000/api/v2/heartbeat now works correctly in containers built from this Dockerfile.

Related Issues

This resolves the healthcheck failure issue described in various community discussions.

- Install curl in runner stage to support healthcheck functionality
- Fixes healthcheck failure in docker-compose
- Minimal change with significant impact on usability
@github-actions
Copy link

Reviewer Checklist

Please leverage this checklist to ensure your code review is thorough before approving

Testing, Bugs, Errors, Logs, Documentation

  • Can you think of any use case in which the code does not behave as intended? Have they been tested?
  • Can you think of any inputs or external events that could break the code? Is user input validated and safe? Have they been tested?
  • If appropriate, are there adequate property based tests?
  • If appropriate, are there adequate unit tests?
  • Should any logging, debugging, tracing information be added or removed?
  • Are error messages user-friendly?
  • Have all documentation changes needed been made?
  • Have all non-obvious changes been commented?

System Compatibility

  • Are there any potential impacts on other parts of the system or backward compatibility?
  • Does this change intersect with any items on our roadmap, and if so, is there a plan for fitting them together?

Quality

  • Is this code of a unexpectedly high quality (Readability, Modularity, Intuitiveness)

@propel-code-bot
Copy link
Contributor

Add curl to runner stage for Docker healthcheck

Installs curl in the runner stage of rust/Dockerfile so the container passes the /api/v2/heartbeat healthcheck defined in docker-compose.yml. Only one line was modified, making the Docker image health-check compatible without affecting runtime behavior.

Key Changes

• Updated rust/Dockerfile RUN apt-get install line to include curl

Affected Areas

rust/Dockerfile (runner stage)

This summary was automatically generated by @propel-code-bot

FROM debian:stable-slim AS runner

RUN apt-get update && apt-get install -y dumb-init libssl-dev ca-certificates && rm -rf /var/lib/apt/lists/*
RUN apt-get update && apt-get install -y dumb-init libssl-dev ca-certificates curl && rm -rf /var/lib/apt/lists/*
Copy link
Contributor

Choose a reason for hiding this comment

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

Recommended

[Performance] To minimize the final image size, it's a good practice to add the --no-install-recommends flag to your apt-get install command. This prevents the installation of extra packages that are not strict dependencies, resulting in a leaner image.

Context for Agents
To minimize the final image size, it's a good practice to add the `--no-install-recommends` flag to your `apt-get install` command. This prevents the installation of extra packages that are not strict dependencies, resulting in a leaner image.

File: rust/Dockerfile
Line: 63

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