Add a skeleton test-compose.yaml for docker-compose parsing work

Two busybox services (a worker echoing a fixed reply, a server that relays
it) exercising the compose fields we intend to support: services/image/
command, container_name, environment/env_file, depends_on (condition only),
stop_grace_period, networks (internal/external), ports, and bind + named
volumes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gv3s5jckJKzh6JkMoi2Akz
This commit is contained in:
2026-09-07 08:58:46 +00:00
parent 174b6b4c29
commit 9f7af0e45a
7 changed files with 60 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
services:
test-worker:
image: busybox:latest
container_name: test-worker1
command: ["sh", "/scripts/listen.sh"]
environment:
- WORKER_GREETING=Hello from environment
env_file:
- ./worker/worker.env
networks:
- test-intern-net
volumes:
- ./worker:/scripts:ro
test-server:
image: busybox:latest
command: ["sh", "/scripts/listen.sh"]
depends_on:
test-worker:
condition: service_started
environment:
- SERVER_ROLE=proxy
env_file:
- ./server/server.env
stop_grace_period: 20s
networks:
- test-intern-net
- test-extern-net
- test-preexisting-net
ports:
- "18080:80"
volumes:
- ./server:/scripts:ro
- test-server-log:/var/log
networks:
test-intern-net:
internal: true
test-extern-net:
internal: false
test-preexisting-net:
external: true
volumes:
test-server-log:
+3
View File
@@ -0,0 +1,3 @@
#!/bin/sh
echo "$(date) request received" >> /var/log/test-server.log
nc test-worker1 80
+4
View File
@@ -0,0 +1,4 @@
#!/bin/sh
echo "SERVER_ROLE=$SERVER_ROLE"
echo "SERVER_ENV_FILE_VAR=$SERVER_ENV_FILE_VAR"
nc -lk -p 80 -e /scripts/handle.sh
+1
View File
@@ -0,0 +1 @@
SERVER_ENV_FILE_VAR=set-from-server-env-file
+2
View File
@@ -0,0 +1,2 @@
#!/bin/sh
echo "Hello from test-worker"
+4
View File
@@ -0,0 +1,4 @@
#!/bin/sh
echo "WORKER_GREETING=$WORKER_GREETING"
echo "WORKER_ENV_FILE_VAR=$WORKER_ENV_FILE_VAR"
nc -lk -p 80 -e /scripts/handle.sh
+1
View File
@@ -0,0 +1 @@
WORKER_ENV_FILE_VAR=set-from-worker-env-file