From e0f07603cb713349b702b8e2289db0c9f3cea033 Mon Sep 17 00:00:00 2001 From: jwgcurrie Date: Sun, 17 May 2026 16:01:51 +0100 Subject: [PATCH] pulls latest images by default --- Dockerfile | 2 +- docker-compose.dev.yml | 10 +++++----- docker-compose.yml | 19 +++++++------------ 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/Dockerfile b/Dockerfile index 54f46b8..509b43f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Stage 1: Get the library -FROM jwgcurrie/pepper-box:01-26-latest AS bridge-source +FROM ghcr.io/action-prediction-lab/pepper-box:latest AS bridge-source # Stage 2: Build the Wizard FROM python:3.9-slim diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 9461fb3..f0efd48 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -15,7 +15,7 @@ services: pepper-robot-env: - image: pepper-box:latest + image: ghcr.io/action-prediction-lab/pepper-box:latest devices: - /dev/dri:/dev/dri # GPU render nodes (AMD/Intel/NVIDIA via mesa) volumes: @@ -33,7 +33,7 @@ services: command: [ "/home/pepperdev/entrypoint.sh" ] proprioception-service: - image: pepper-box:latest + image: ghcr.io/action-prediction-lab/pepper-box:latest network_mode: host volumes: - ./robot.env:/home/pepperdev/py3-naoqi-bridge/robot.env @@ -47,7 +47,7 @@ services: restart: on-failure audio-publisher-service: - image: pepper-box:latest + image: ghcr.io/action-prediction-lab/pepper-box:latest network_mode: host volumes: - ./robot.env:/home/pepperdev/py3-naoqi-bridge/robot.env @@ -62,7 +62,7 @@ services: - pepper-robot-env dualshock-publisher: - image: jwgcurrie/dualshock_publisher:latest + image: ghcr.io/action-prediction-lab/dualshock-zmq:latest privileged: true volumes: - /dev/input:/dev/input @@ -72,7 +72,7 @@ services: perception-service: profiles: [ gpu ] # opt-in via `--profile gpu` (requires NVIDIA runtime) build: ../PepperPerception - image: pepper-perception:latest + image: ghcr.io/action-prediction-lab/pepper-perception:latest shm_size: '2gb' command: [ "python", "-m", "perception_service.main", "--backend", "combined" ] ports: diff --git a/docker-compose.yml b/docker-compose.yml index d2f5e93..893944b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,22 +1,17 @@ -# MVP stack for PepperWizard → physical Pepper robot. +# Basic stack for PepperWizard → Pepper robot. # -# This compose does NOT require sibling checkouts of PepperBox or -# PepperPerception. `pepper-robot-env` uses the published NAOqi-bridge image -# and bind-mounts the user-supplied pynaoqi SDK from $HOME/.pepperbox; that -# directos, proprry is populated by running `./setup.sh` once. Tracking and -# proprioception services are optional and live in `docker-compose.dev.yml`, -# enable them with: +# Tracking and proprioception services are optional and live in `docker-compose.dev.yml`, enable them with: # # docker compose -f docker-compose.yml -f docker-compose.dev.yml up # # First-run setup: -# ./setup.sh # one-time, fetches pynaoqi +# ./setup.sh # cp robot.env.example robot.env && $EDITOR robot.env # docker compose up services: pepper-robot-env: - image: jwgcurrie/pepper-box:01-26-latest + image: ghcr.io/action-prediction-lab/pepper-box:latest network_mode: host volumes: - ./robot.env:/home/pepperdev/py3-naoqi-bridge/robot.env @@ -29,8 +24,8 @@ services: restart: on-failure pepper-wizard: + image: ghcr.io/action-prediction-lab/pepper-wizard:latest build: . - image: pepper-wizard:latest env_file: - robot.env environment: @@ -51,10 +46,10 @@ services: restart: on-failure stt-service: + image: ghcr.io/action-prediction-lab/pepper-stt:latest build: context: . dockerfile: stt-service/Dockerfile - image: pepper-stt:latest network_mode: host volumes: - ./stt-service:/app @@ -67,7 +62,7 @@ services: - HF_HOME=/opt/whisper-cache healthcheck: # Round-trips a real ZMQ ping so pepper-wizard only starts after STT - # is answering on :5562 (and the Whisper model is loaded). + # is answering on :5562 (and Whisper model is loaded). test: ["CMD", "python", "-c", "import sys, zmq; ctx=zmq.Context.instance(); s=ctx.socket(zmq.REQ); s.setsockopt(zmq.RCVTIMEO,2000); s.setsockopt(zmq.SNDTIMEO,2000); s.setsockopt(zmq.LINGER,0); s.connect('tcp://localhost:5562'); s.send_json({'action':'ping'}); sys.exit(0 if s.recv_json().get('status')=='ok' else 1)"] interval: 2s timeout: 3s