lablup / lablup/backend.ai

Support image's own entrypoint and published ports

Open
#2,672 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
15h 13m
Merged PRs (30d)
368

Description

As a follow-up to #2582 (#1684 and #758), let's support the container image's own entrypoint scripts and published ports natively.

- Image's own entrypoint\* Often they execute a service process (e.g., redis/postgres containers) or start other background processes as needed.
- Since we override the container entrypoint with `entrypoint.sh`, our entrypoint script should invoke them as a background task.

- Image's own published ports\* Since there is no service-port declaration, we could just assume that those are predefined "pre-open" service ports.
- Pre-open service ports do not have explicit initialization steps managed by Backend.AI kernel runner, but the manager just notifies and registers the TCP ports of the container to the App Proxy for external access.

JIRA Issue: BA-94

Contributor guide

Open the contributing guide

Research direction

Start by tracing the existing entrypoint.sh flow and the code that handles container image ports and App Proxy registration. Confirm how image entrypoints are currently overridden and how published ports are discovered; done means the image entrypoint can run as a background task and its published TCP ports are registered as pre-open service ports.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
backend, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.