2017-10-13 18:58:14 +00:00
|
|
|
FROM alpine
|
|
|
|
|
|
|
|
# Include dist
|
|
|
|
ADD dist/ /root/dist/
|
|
|
|
|
|
|
|
# Setup env and apt
|
2018-05-16 14:57:52 +00:00
|
|
|
RUN apk -U --no-cache add \
|
|
|
|
bash \
|
|
|
|
curl \
|
|
|
|
git \
|
|
|
|
libc6-compat \
|
|
|
|
libzmq \
|
|
|
|
openjdk8-jre \
|
|
|
|
wget && \
|
2017-10-13 18:58:14 +00:00
|
|
|
|
|
|
|
# Get and install packages
|
2018-05-04 16:29:55 +00:00
|
|
|
git clone --depth=1 https://github.com/dtag-dev-sec/listbot /etc/listbot && \
|
2017-10-13 18:58:14 +00:00
|
|
|
cd /root/dist/ && \
|
|
|
|
mkdir -p /usr/share/logstash/ && \
|
2018-07-31 14:31:49 +00:00
|
|
|
wget https://artifacts.elastic.co/downloads/logstash/logstash-6.3.2.tar.gz && \
|
2017-10-13 18:58:14 +00:00
|
|
|
wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-ASN.tar.gz && \
|
2018-07-31 14:31:49 +00:00
|
|
|
tar xvfz logstash-6.3.2.tar.gz --strip-components=1 -C /usr/share/logstash/ && \
|
2017-10-13 18:58:14 +00:00
|
|
|
/usr/share/logstash/bin/logstash-plugin install logstash-filter-translate && \
|
|
|
|
/usr/share/logstash/bin/logstash-plugin install logstash-output-syslog && \
|
2018-04-18 15:21:32 +00:00
|
|
|
tar xvfz GeoLite2-ASN.tar.gz --strip-components=1 -C /usr/share/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-filter-geoip-5.0.3-java/vendor/ && \
|
2017-10-13 18:58:14 +00:00
|
|
|
|
|
|
|
# Add and move files
|
|
|
|
cd /root/dist/ && \
|
|
|
|
cp update.sh /usr/bin/ && \
|
|
|
|
chmod u+x /usr/bin/update.sh && \
|
|
|
|
mkdir -p /etc/logstash/conf.d && \
|
|
|
|
cp logstash.conf /etc/logstash/conf.d/ && \
|
2018-07-31 14:31:49 +00:00
|
|
|
cp elasticsearch-template-es6x.json /usr/share/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-output-elasticsearch-9.2.0-java/lib/logstash/outputs/elasticsearch/ && \
|
2017-10-13 18:58:14 +00:00
|
|
|
|
2018-03-31 15:18:28 +00:00
|
|
|
# Setup user, groups and configs
|
|
|
|
addgroup -g 2000 logstash && \
|
|
|
|
adduser -S -H -s /bin/bash -u 2000 -D -g 2000 logstash && \
|
|
|
|
chown -R logstash:logstash /usr/share/logstash && \
|
|
|
|
chown -R logstash:logstash /etc/listbot && \
|
|
|
|
chmod 755 /usr/bin/update.sh && \
|
|
|
|
|
2017-10-13 18:58:14 +00:00
|
|
|
# Clean up
|
2018-03-31 15:18:28 +00:00
|
|
|
apk del --purge wget && \
|
2018-05-04 16:29:55 +00:00
|
|
|
rm -rf /root/* && \
|
|
|
|
rm -rf /var/cache/apk/*
|
2017-10-13 18:58:14 +00:00
|
|
|
|
|
|
|
# Healthcheck
|
|
|
|
HEALTHCHECK --retries=10 CMD curl -s -XGET 'http://127.0.0.1:9600'
|
|
|
|
|
2017-10-23 11:02:04 +00:00
|
|
|
# Start logstash
|
2018-04-18 15:21:32 +00:00
|
|
|
#USER logstash:logstash
|
2018-05-07 10:17:33 +00:00
|
|
|
CMD update.sh && exec /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf
|