File: Dockerfile

package info (click to toggle)
fort-validator 1.6.7-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,064 kB
  • sloc: ansic: 33,015; makefile: 239; sh: 47; javascript: 30; xml: 15
file content (40 lines) | stat: -rw-r--r-- 1,297 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#--- Alpine build container ---
FROM alpine:latest AS builder
ARG FORT_VERSION=1.6.7

# Install compiler and dependencies
RUN apk --update --no-cache add build-base autoconf automake pkgconfig jansson-dev check-dev \
    openssl-dev openssl bsd-compat-headers rsync wget curl-dev libxml2 libxml2-dev

# Download FORT source code
WORKDIR /root
RUN wget https://github.com/NICMx/FORT-validator/releases/download/${FORT_VERSION}/fort-${FORT_VERSION}.tar.gz
RUN tar -xf fort-${FORT_VERSION}.tar.gz

# Compile and install FORT
WORKDIR /root/fort-${FORT_VERSION}
RUN ./configure && make && make install


#--- FORT image ---
FROM alpine:latest

# Install dependencies
RUN apk --update --no-cache add openssl jansson rsync tini libxml2 libcurl rtrlib

# Install FORT
COPY --from=builder /usr/local/bin/fort /usr/local/bin/fort
COPY --from=builder /usr/local/share/man/man8/fort.8 /usr/local/share/man/man8/fort.8

# Create required directories
RUN mkdir -p /var/local/fort && mkdir -p /etc/fort/tal

# Create default configuration
RUN yes yes | fort --init-tals --tal /etc/fort/tal
RUN echo '{ "tal":"/etc/fort/tal", "local-repository":"/var/local/fort" }' > /etc/fort/fort.conf


# Run FORT via TINI
EXPOSE 323
ENTRYPOINT ["tini", "-g", "--", "fort"]
CMD ["--configuration-file", "/etc/fort/fort.conf"]