opencode_cloud_core/docker/dockerfile.rs
1//! Embedded Dockerfile content
2//!
3//! This module contains the Dockerfile for building the opencode-cloud-sandbox
4//! container image, embedded at compile time for distribution with the CLI.
5//!
6//! Note: The image is named "opencode-cloud-sandbox" (not "opencode-cloud") to
7//! clearly indicate this is the sandboxed container environment that the
8//! opencode-cloud CLI deploys, not the CLI tool itself.
9
10/// The Dockerfile for building the opencode-cloud-sandbox container image
11pub const DOCKERFILE: &str = include_str!("Dockerfile");
12
13// =============================================================================
14// Docker Image Naming
15// =============================================================================
16//
17// Docker images follow the naming convention: [registry/]namespace/image[:tag]
18//
19// - Registry: The server hosting the image (e.g., ghcr.io, gcr.io, docker.io)
20// When omitted, Docker Hub (docker.io) is assumed.
21// - Namespace: Usually the username or organization (e.g., prizz)
22// - Image: The image name (e.g., opencode-cloud-sandbox)
23// - Tag: Version identifier (e.g., latest, v1.0.0). Defaults to "latest" if omitted.
24//
25// Examples:
26// ghcr.io/prizz/opencode-cloud-sandbox:latest - GitHub Container Registry
27// prizz/opencode-cloud-sandbox:latest - Docker Hub (registry omitted)
28// gcr.io/my-project/myapp:v1.0 - Google Container Registry
29//
30// We publish to both GHCR (primary) and Docker Hub for maximum accessibility.
31// =============================================================================
32
33/// Docker image name for GitHub Container Registry (primary registry)
34///
35/// Format: `ghcr.io/{github-username}/{image-name}`
36pub const IMAGE_NAME_GHCR: &str = "ghcr.io/prizz/opencode-cloud-sandbox";
37
38/// Docker image name for Docker Hub (secondary registry)
39///
40/// Format: `{dockerhub-username}/{image-name}` (registry prefix omitted for Docker Hub)
41pub const IMAGE_NAME_DOCKERHUB: &str = "prizz/opencode-cloud-sandbox";
42
43/// Default image tag
44pub const IMAGE_TAG_DEFAULT: &str = "latest";