kanidm/kanidmd/Dockerfile

66 lines
1.5 KiB
Docker
Raw Normal View History

ARG BASE_IMAGE=opensuse/tumbleweed:latest
FROM ${BASE_IMAGE} AS builder
LABEL mantainer william@blackhats.net.au
2020-08-06 08:05:33 +02:00
RUN zypper -vv ref && \
zypper install -y \
cargo \
rust \
gcc \
clang lld \
make automake autoconf \
libopenssl-devel pam-devel \
sccache && \
zypper clean -a
COPY . /usr/src/kanidm
WORKDIR /usr/src/kanidm/kanidmd
2018-12-27 06:22:03 +01:00
ARG SCCACHE_REDIS
RUN ln -s -f /usr/bin/clang /usr/bin/cc && \
ln -s -f /usr/bin/ld.lld /usr/bin/ld
2020-12-30 03:29:01 +01:00
RUN if [ "$(uname -m)" == "x86_64" ]; \
then export RUSTFLAGS='-Ctarget-cpu=haswell'; \
fi; \
if [ "$(uname -m)" == "aarch64" ]; \
then export RUSTFLAGS=''; \
fi; \
if [ "${SCCACHE_REDIS}" != "" ]; \
then export CC="/usr/bin/sccache /usr/bin/clang"; export RUSTC_WRAPPER=sccache; sccache --start-server; \
else export CC="/usr/bin/clang"; \
fi; \
echo $RUSTC_WRAPPER; \
2020-12-30 03:29:01 +01:00
echo $RUSTFLAGS; \
echo $CC; \
RUSTC_BOOTSTRAP=1 \
cargo build --features=concread/simd_support,libsqlite3-sys/bundled \
--release; \
if [ "${SCCACHE_REDIS}" != "" ]; \
then sccache -s; \
fi; \
echo $RUSTFLAGS; \
echo $CC; \
echo $RUSTC_WRAPPER;
2018-12-27 06:22:03 +01:00
FROM ${BASE_IMAGE}
LABEL mantainer william@blackhats.net.au
RUN zypper ref && \
zypper install -y \
timezone \
2020-08-06 08:05:33 +02:00
sqlite3 \
pam && \
zypper clean -a
COPY --from=builder /usr/src/kanidm/target/release/kanidmd /sbin/
2018-12-27 06:22:03 +01:00
EXPOSE 8443 3636
VOLUME /data
ENV RUST_BACKTRACE 1
CMD ["/sbin/kanidmd", "server", "-c", "/data/server.toml"]
2018-12-27 06:22:03 +01:00