|
1 |
| -FROM jedisct1/base-dev-rust-nightly:94e884b63 |
2 |
| -MAINTAINER Frank Denis |
3 |
| -ENV SERIAL 1 |
4 |
| - |
5 |
| -ENV DEBIAN_FRONTEND noninteractive |
6 |
| - |
7 |
| -ENV BUILD_DEPS \ |
8 |
| - autoconf \ |
9 |
| - automake \ |
10 |
| - libtool \ |
11 |
| - file \ |
12 |
| - gcc \ |
13 |
| - g++ \ |
14 |
| - git \ |
15 |
| - libc-dev \ |
16 |
| - make \ |
17 |
| - pkg-config |
18 |
| - |
19 |
| -RUN set -x && \ |
20 |
| - apt-get install -y \ |
21 |
| - $BUILD_DEPS \ |
22 |
| - libsnappy-dev \ |
23 |
| - --no-install-recommends && \ |
24 |
| - apt-get clean && \ |
25 |
| - rm -fr /tmp/* /var/tmp/* |
26 |
| - |
27 |
| -ENV LIBRESSL_VERSION 2.7.0 |
28 |
| -ENV LIBRESSL_SHA256 50ce6d6f88dea73a3efca62b0a9e6ca75292bdee6c9293efd6a771cfdb28cdee |
29 |
| -ENV LIBRESSL_DOWNLOAD_URL https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-${LIBRESSL_VERSION}.tar.gz |
30 |
| - |
31 |
| -RUN set -x && \ |
32 |
| - mkdir -p /tmp/src && \ |
33 |
| - cd /tmp/src && \ |
34 |
| - curl -sSL $LIBRESSL_DOWNLOAD_URL -o libressl.tar.gz && \ |
35 |
| - echo "${LIBRESSL_SHA256} *libressl.tar.gz" | sha256sum -c - && \ |
36 |
| - tar xzf libressl.tar.gz && \ |
37 |
| - rm -f libressl.tar.gz && \ |
38 |
| - cd libressl-${LIBRESSL_VERSION} && \ |
39 |
| - ./configure --disable-shared --with-pic --disable-dependency-tracking --prefix=/opt/libressl && \ |
40 |
| - make check && make install && \ |
41 |
| - rm -fr /opt/libressl/share/man && \ |
42 |
| - echo /opt/libressl/lib > /etc/ld.so.conf.d/libressl.conf && ldconfig && \ |
43 |
| - rm -fr /tmp/* |
44 |
| - |
45 |
| -ENV OPENSSL_LIB_DIR=/opt/libressl/lib |
46 |
| -ENV OPENSSL_INCLUDE_DIR=/opt/libressl/include |
47 |
| - |
48 |
| -RUN set -x && \ |
49 |
| - cd /tmp && \ |
50 |
| - git clone https://github.com/jedisct1/flowgger.git && \ |
51 |
| - cd flowgger && \ |
52 |
| - cargo build --release --features='coroutines ecdh kafka' && \ |
53 |
| - mkdir -p /opt/flowgger/etc /opt/flowgger/bin && \ |
54 |
| - strip target/release/flowgger && \ |
55 |
| - mv target/release/flowgger /opt/flowgger/bin/ && \ |
56 |
| - rm -fr /tmp/flowgger |
57 |
| - |
58 |
| -COPY flowgger.sh /etc/service/flowgger/run |
59 |
| - |
60 |
| -EXPOSE 6514 |
61 |
| - |
62 |
| -ENTRYPOINT ["/sbin/my_init"] |
| 1 | +FROM rust:1.38 AS builder |
| 2 | + |
| 3 | +WORKDIR /flowgger |
| 4 | +COPY . . |
| 5 | + |
| 6 | +RUN apt-get update && \ |
| 7 | + apt-get install -y capnproto && \ |
| 8 | + cargo build --release && \ |
| 9 | + strip target/release/flowgger |
| 10 | + |
| 11 | + |
| 12 | +FROM debian:buster-slim |
| 13 | +LABEL maintainer="Frank Denis, Damian Czaja <trojan295@gmail.com>" |
| 14 | + |
| 15 | +WORKDIR /opt/flowgger |
| 16 | + |
| 17 | +RUN apt-get update && \ |
| 18 | + apt-get install -y libssl1.1 && \ |
| 19 | + rm -rf /var/lib/apt/lists/* |
| 20 | + |
| 21 | +COPY --from=builder /flowgger/target/release/flowgger /opt/flowgger/bin/flowgger |
| 22 | +COPY flowgger.toml /opt/flowgger/etc/flowgger.toml |
| 23 | +COPY docker/entrypoint.sh / |
| 24 | + |
| 25 | +ENTRYPOINT ["/entrypoint.sh"] |
| 26 | +CMD ["/opt/flowgger/etc/flowgger.toml"] |
0 commit comments