Patrick Cleavelin 2023-07-29 13:36:03 -05:00
parent 182de458ee
commit 575c2fa6d0
3 changed files with 55 additions and 19 deletions

View File

@ -5,22 +5,27 @@ steps:
# - apk add --no-cache git nix --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing
# - nix build --extra-experimental-features nix-command --extra-experimental-features flakes .#default
build-docker-image:
image: alpine:edge
commands:
- apk add --no-cache git nix --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing
- echo "system-features = nixos-test benchmark big-parallel uid-range kvm" > /etc/nix/nix.conf
- nix build --extra-experimental-features nix-command --extra-experimental-features flakes .#docker
# build-docker-image:
# image: alpine:edge
# commands:
# - apk add --no-cache git nix --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing
# - echo "system-features = nixos-test benchmark big-parallel uid-range kvm" > /etc/nix/nix.conf
# - nix build --extra-experimental-features nix-command --extra-experimental-features flakes .#docker
publish-image:
when:
event: [tag, deployment]
environment: prod
image: git.spacegirl.nl/patrick/plugin-artifact
settings:
tag: $CI_COMMIT_TAG
user: patrick
password:
from_secret: forgejo_token
repo: $CI_REPO
image_tar: result
build-docker-image:
image: docker
commands:
- docker build --rm -t .
# publish-image:
# when:
# event: [tag, deployment]
# environment: prod
# image: git.spacegirl.nl/patrick/plugin-artifact
# settings:
# tag: $CI_COMMIT_TAG
# user: patrick
# password:
# from_secret: forgejo_token
# repo: $CI_REPO
# image_tar: result

31
Dockerfile Normal file
View File

@ -0,0 +1,31 @@
FROM rust-1.73.0-slim AS builder
RUN USER=root cargo new --bin memejoin-docker
WORKDIR ./memejoin-docker
COPY ./Cargo.toml ./Cargo.toml
RUN cargo build --release
RUN rm src/*.rs
ADD . ./
RUN rm ./target/release/deps/memejoin-docker
RUN cargo build --release
FROM debian:buster-slim
ARG APP=/usr/src/app
RUN apt update \
&& apt install -y ca-certificates cmake gcc libopus libssl openssl pkg-config \
&& rm -rf /var/lib/apt/lists/*
EXPOSE 8100
RUN groupadd $APP_USER && useradd -g $APP_USER $APP_USER && mkdir -p ${APP}
COPY --from=builder /memejoin-docker/target/release/memejoin-docker ${APP}/memejoin-docker
RUN chown -R $APP_USER:$APP_USER ${APP}
USER $APP_USER
WORKDIR ${APP}
CMD ["./memejoin-docker"]

View File

@ -1 +1 @@
nightly
nightly-2023-07-27