OpenCue is an open source render management system for visual effects and animation production, hosted by the Academy Software Foundation.
Cuebot is the OpenCue server. It stores jobs, layers, and frames in PostgreSQL, schedules frames onto render hosts running RQD, and serves the gRPC API used by CueGUI, OpenCueWeb, the REST Gateway, PyCue, and the command-line tools.
#opencue on the ASWF Slack| Tag | Description |
|---|---|
latest | Most recent OpenCue release |
<version> (for example 1.37.0) | A specific release. Pin this in production |
Release notes: https://github.com/AcademySoftwareFoundation/OpenCue/releases
Cuebot needs a PostgreSQL database with the OpenCue schema applied.
1. Start PostgreSQL
docker network create opencue
docker run -d --name opencue-db --network opencue \
-e POSTGRES_USER=cuebot \
-e POSTGRES_PASSWORD=cuebot_password \
-e POSTGRES_DB=cuebot \
postgres:16
2. Apply the schema
Cuebot does not migrate the database itself. Apply the Flyway migrations from the source tree (cuebot/src/main/resources/conf/ddl/postgres/migrations) for the release you're running:
git clone --branch v1.37.0 --depth 1 https://github.com/AcademySoftwareFoundation/OpenCue.git
docker run --rm --network opencue \
-v "$PWD/OpenCue/cuebot/src/main/resources/conf/ddl/postgres/migrations:/flyway/sql" \
flyway/flyway \
-url=jdbc:postgresql://opencue-db/cuebot -user=cuebot -password=cuebot_password migrate
3. Start Cuebot
docker run -d --name cuebot --network opencue \
-p 8443:8443 -p 8080:8080 \
-e CUE_FRAME_LOG_DIR=/shots/logs \
opencue/cuebot \
--datasource.cue-data-source.jdbc-url=jdbc:postgresql://opencue-db/cuebot \
--datasource.cue-data-source.username=cuebot \
--datasource.cue-data-source.password=cuebot_password
Point RQD hosts and clients at <cuebot-host>:8443.
For a complete local farm (database, Cuebot, RQD, OpenCueWeb, REST Gateway, and optional monitoring), use the docker-compose.yml sandbox in the repository. See the deployment guide.
Any Cuebot property can be passed as a --key=value argument after the image name. This overrides the defaults in opencue.properties.
| Setting | Default | Purpose |
|---|---|---|
--datasource.cue-data-source.jdbc-url | — | PostgreSQL JDBC URL (required) |
--datasource.cue-data-source.username / .password | — | Database credentials (required) |
--log.frame-log-root.default_os or env CUE_FRAME_LOG_DIR | /shots | Root path where RQD writes frame logs, as seen by the render hosts |
--metrics.prometheus.collector=true | false | Expose Prometheus metrics at :8080/metrics |
env CUEBOT_GRPC_CUE_PORT | 8443 | gRPC port for clients and RQD reports |
env CUEBOT_GRPC_RQD_SERVER_PORT | 8444 | Port Cuebot uses to reach RQD on render hosts |
8443/tcp | gRPC API (clients, RQD host reports) |
8080/tcp | HTTP: Spring Boot endpoints and Prometheus /metrics |
/opt/opencue/logs | Cuebot log volume |
The image includes a healthcheck that calls the gRPC GetSystemStats method on port 8443.
Back up the database, apply the new release's migrations, then replace the container. Check the release notes for migrations that should be built out-of-band on large tables (for example, CREATE INDEX CONCURRENTLY).
Apache License 2.0. See LICENSE.
Content type
Image
Digest
sha256:3b046a90c…
Size
385.3 MB
Last updated
9 days ago
docker pull opencue/cuebot