Repository navigation
Releases: flaticols/container-compose
Release list
v0.1.0
Added
- Service names resolve between containers (#19). Apple
containerhas no service DNS, so each service container now mounts a generated/etc/hostslisting every project container on a shared network by service name, container name andnetworks.<net>.aliases. Files live under~/.local/state/container-compose/<project>/hosts/and are refreshed onupandstart, removed ondown. host.docker.internal/gateway.docker.internal(#20) resolve to the network gateway, which is the Mac. Reaches listeners bound to0.0.0.0. For listeners bound to127.0.0.1(kubectl port-forward default) register Apple's redirect once:sudo container system dns create host.docker.internal --localhost 203.0.113.113; when that domain exists the hosts entry is skipped so DNS answers.extra_hostsis applied, incl. thehost-gatewaykeyword. Previously warned as unsupported.depends_on.required: false(#18). An optional dependency joins only when its own profile is active, so--profile uino longer drags in alocal-db-gated service. Needs ComposeKit 0.0.5.up --remove-orphans/down --remove-orphans(#17). Removes containers carrying the project label whose service is no longer in the file, stopped ones included.upwarns about them otherwise.up -d(#16) accepted. Containers always ran detached.
Fixed
configno longer lists optional dependencies thatupwould skip.
Notes
- Hosts files are rewritten in place and padded to 4 KiB. The guest bind mount pins the inode, and virtiofs caches the size for about a second, so a peer that starts after you shows up roughly a second later.
- Known, not fixed: global flags before the subcommand (
container compose -f x down) parse asupwith servicedown. Put flags after the subcommand. - Depends on ComposeKit v0.0.5.
Full Changelog: v0.0.9...v0.1.0
v0.0.9
v0.0.9
vv0.0.9-beta1
Adopt async subprocess orchestration (#15)
v0.0.8
Add logs --tail, kill, exec --workdir/--user/--env, up --wait (#11)
v0.0.7
Add 'container-compose update' self-update command (#10)
v0.0.6
release: draft -> attach .pkg -> publish (immutable-releases compatib…
v0.0.5
Architecture release: container-compose now owns the container runtime layer.
Changes
- The translation + orchestration layer (previously consumed from ComposeKit's
ComposeKitContainerproduct) now lives in this repo as theContainerComposeKittarget —ContainerTranslator,ContainerRunner,Orchestrator,HealthChecker. ComposeKit is now a pure, runtime-agnostic Compose parser. - Bumps ComposeKit to 0.0.3, which brings parser fixes: container-port-only
ports(e.g."80") are skipped with a warning (container can't auto-assign a host port), and IPv6host_ipin long-form ports is bracketed. - Runtime behavior is otherwise unchanged; this is primarily an internal re-architecture.
Still in active development (pre-1.0). The attached .pkg is unsigned unless Developer ID signing secrets are configured (Gatekeeper will warn).
Full changelog: v0.0.3...v0.0.5
v0.0.3
What's new
Fractional CPU limits now work. Adopts ComposeKit 0.0.2, which ceils a fractional Compose cpus (e.g. 0.5, or deploy.resources.limits.cpus) to an integer before container run --cpus — previously this failed with "invalid value for '--cpus'". (#6, flaticols/ComposeKit#8)
Examples. New examples/ directory — four runnable projects on lightweight images:
quickstart— nginx + static bind mounthealthcheck—depends_on: service_healthygatingprofiles— profile-gated debug sidecarfull-stack— Caddy proxy, segmented frontend/backend networks, health gating, named volume,.envinterpolation, resource limits
Docs. The site now links ComposeKit and the Apple Container JetBrains plugin → https://flaticols.github.io/container-compose/
Install
Download container-compose-0.0.3.pkg below — Developer ID signed, notarized, and stapled. Or build from source: make && sudo make install.
Full changelog: v0.0.2...v0.0.3
v0.0.2
container-compose 0.0.2 Corrects the CLI version (v0.0.1 shipped a binary reporting 0.1.0). The version is now stamped from the git tag at build time and verified in CI.
v0.0.1
container-compose 0.0.1 First tagged release. Adopts ComposeKit 0.0.1 and adds the exec/pull/stop/ start/restart lifecycle commands plus --profile. Ships a signed, notarized, and stapled .pkg via the release workflow.