Some checks failed
Tests / 🛃 Unit tests (push) Failing after 13s
Tests / 🗄 DB tests (push) Failing after 19s
Tests / 🐍 Lint python scripts (push) Failing after 1s
Tests / ⌨ Golang Lint (push) Failing after 1s
Tests / 📦 Packit config lint (push) Failing after 1s
Tests / 🔍 Check source preparation (push) Failing after 1s
Tests / 🔍 Check for valid snapshot urls (push) Failing after 1s
Tests / 🔍 Check for missing or unused runner repos (push) Failing after 1s
Tests / 🐚 Shellcheck (push) Failing after 1s
Tests / 📦 RPMlint (push) Failing after 1s
Tests / Gitlab CI trigger helper (push) Failing after 1s
Tests / 🎀 kube-linter (push) Failing after 1s
Tests / 🧹 cloud-cleaner-is-enabled (push) Successful in 3s
Tests / 🔍 Check spec file osbuild/images dependencies (push) Failing after 1s
42 lines
1.2 KiB
Docker
42 lines
1.2 KiB
Docker
# Debian Forge Composer Container
|
|
# Production-ready container for the Debian Forge Composer service
|
|
|
|
FROM debian:trixie-slim
|
|
|
|
# Install system dependencies
|
|
RUN apt-get update && apt-get install -y \
|
|
ca-certificates \
|
|
curl \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Create non-root user for security
|
|
RUN useradd -r -s /bin/false -u 1000 composer
|
|
|
|
# Set working directory
|
|
WORKDIR /app
|
|
|
|
# Copy the built binary
|
|
COPY composer /app/composer
|
|
|
|
# Set proper permissions
|
|
RUN chown composer:composer /app/composer && \
|
|
chmod +x /app/composer
|
|
|
|
# Switch to non-root user
|
|
USER composer
|
|
|
|
# Expose the default composer port
|
|
EXPOSE 8080
|
|
|
|
# Health check
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
|
|
CMD curl -f http://localhost:8080/health || exit 1
|
|
|
|
# Default command
|
|
CMD ["/app/composer", "--config", "/etc/osbuild-composer/osbuild-composer.toml"]
|
|
|
|
# Labels for container management
|
|
LABEL org.opencontainers.image.title="Debian Forge Composer"
|
|
LABEL org.opencontainers.image.description="Debian Forge Composer - OSBuild API server"
|
|
LABEL org.opencontainers.image.vendor="Debian Forge Team"
|
|
LABEL org.opencontainers.image.source="https://git.raines.xyz/particle-os/debian-forge-composer"
|