Docker
Some checks failed
CI / Typos (push) Successful in 32s
CI / Clippy (push) Successful in 1m26s
Docker / build-and-push (push) Failing after 1m55s
CI / Build and test (push) Failing after 2m42s
CI / Build and test (all features) (push) Has been cancelled

This commit is contained in:
2026-03-24 09:52:37 -07:00
parent 5b0953d250
commit 7ea8bbfe64
2 changed files with 67 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
name: Docker
on:
push:
branches: [main]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Log in to Gitea container registry
uses: docker/login-action@v3
with:
registry: git.betalupi.com
username: ${{ gitea.actor }}
password: ${{ secrets.DEPLOY_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: git.betalupi.com/${{ gitea.repository }}:latest
cache-from: type=registry,ref=git.betalupi.com/${{ gitea.repository }}:cache
cache-to: type=registry,ref=git.betalupi.com/${{ gitea.repository }}:cache,mode=max

37
Dockerfile Normal file
View File

@@ -0,0 +1,37 @@
FROM rust:1.91-bookworm AS base
#
# MARK: Build
#
FROM base AS build
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates wget unzip \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app/rust
COPY . .
RUN cargo build --release --workspace
RUN cargo test --release --workspace
#
# MARK: Release
#
FROM debian:bookworm@sha256:00cd074b40c4d99ff0c24540bdde0533ca3791edcdac0de36d6b9fb3260d89e2 AS deploy
WORKDIR /app
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
&& rm -rf /var/lib/apt/lists/*
COPY --from=build \
/app/rust/target/release/pile \
/app/bin/
ENV PATH="/app/bin:$PATH"
ENV RUST_BACKTRACE=full
ENTRYPOINT [""]