1
- FROM debian:buster-slim
1
+ FROM docker.io/ debian:buster-slim
2
2
LABEL maintainer="ryanwclark (github.com/ryanwclark)"
3
3
4
4
# ## Set defaults
5
5
ARG FLUENTBIT_VERSION
6
6
ARG S6_OVERLAY_VERSION
7
7
ARG ZABBIX_VERSION
8
- ARG GO_VERSION=1.17
8
+ ARG GO_VERSION=1.16.8
9
9
10
- ENV FLUENTBIT_VERSION=${FLUENTBIT_VERSION:-"1.8.5 " } \
10
+ ENV FLUENTBIT_VERSION=${FLUENTBIT_VERSION:-"1.8.7 " } \
11
11
S6_OVERLAY_VERSION=${S6_OVERLAY_VERSION:-"v2.2.0.3" } \
12
- ZABBIX_VERSION=${ZABBIX_VERSION:-"5.4.2 " } \
12
+ ZABBIX_VERSION=${ZABBIX_VERSION:-"5.4.4 " } \
13
13
CONTAINER_ENABLE_SCHEDULING=TRUE \
14
14
CONTAINER_ENABLE_MESSAGING=TRUE \
15
15
CONTAINER_ENABLE_MONITORING=TRUE \
16
16
DEBUG_MODE=FALSE \
17
17
TIMEZONE=Etc/GMT \
18
- DEBIAN_FRONTEND=noninteractive \
19
- ZABBIX_HOSTNAME=debian
18
+ DEBIAN_FRONTEND=noninteractive
20
19
21
20
RUN debArch=$(dpkg --print-architecture) && \
22
21
case "$debArch" in \
23
- amd64) fluentbit='true' ; FLUENTBIT_BUILD_DEPS="bison cmake flex libssl-dev libsasl2-dev libsystemd-dev zlib1g-dev " ;; \
22
+ amd64) fluentbit='true' ; FLUENTBIT_BUILD_DEPS="bison cmake flex libssl-dev libsasl2-dev libsystemd-dev pkg-config zlib1g-dev " ;; \
24
23
*) : ;; \
25
24
esac; \
26
25
set -ex && \
@@ -36,13 +35,15 @@ RUN debArch=$(dpkg --print-architecture) && \
36
35
pkg-config \
37
36
libpcre3-dev \
38
37
libssl-dev \
38
+ upx-ucl \
39
39
zlib1g-dev \
40
40
' && \
41
41
apt-get install -y --no-install-recommends \
42
42
apt-transport-https \
43
43
apt-utils \
44
44
aptitude \
45
45
bash \
46
+ busybox-static \
46
47
ca-certificates \
47
48
curl \
48
49
dirmngr \
@@ -62,6 +63,10 @@ RUN debArch=$(dpkg --print-architecture) && \
62
63
${ZABBIX_BUILD_DEPS} ${FLUENTBIT_BUILD_DEPS} \
63
64
&& \
64
65
\
66
+ rm -rf /usr/bin/crontab && \
67
+ rm -rf /usr/sbin/cron && \
68
+ ln -s /bin/busybox /usr/sbin/crontab && \
69
+ ln -s /bin/busybox /usr/sbin/crond && \
65
70
mkdir -p /usr/local/go && \
66
71
echo "Downloading Go ${GO_VERSION}..." && \
67
72
curl -sSL https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz | tar xvfz - --strip 1 -C /usr/local/go && \
@@ -114,49 +119,75 @@ RUN debArch=$(dpkg --print-architecture) && \
114
119
cp src/go/bin/zabbix_agent2 /usr/sbin/zabbix_agent2 && \
115
120
strip /usr/sbin/zabbix_agentd && \
116
121
strip /usr/sbin/zabbix_sender && \
122
+ if [ "$debArch" = "amd64" ] && [ "$no_upx" != "true" ]; then upx /usr/sbin/zabbix_agentd ; fi ; \
123
+ if [ "$debArch" = "amd64" ] && [ "$no_upx" != "true" ]; then upx /usr/sbin/zabbix_agent2 ; fi ; \
124
+ if [ "$debArch" = "amd64" ] && [ "$no_upx" != "true" ]; then upx /usr/sbin/zabbix_sender ; fi ; \
117
125
mkdir -p /etc/zabbix/zabbix_agentd.conf.d && \
118
126
mkdir -p /var/log/zabbix && \
119
127
chown -R zabbix:root /var/log/zabbix && \
120
128
chown --quiet -R zabbix:root /etc/zabbix && \
121
129
rm -rf /usr/src/zabbix && \
122
130
\
123
- # ## Fluentbit compilation
131
+ # ## Fluentbit compilation
124
132
mkdir -p /usr/src/fluentbit && \
125
133
curl -sSL https://github.com/fluent/fluent-bit/archive/v${FLUENTBIT_VERSION}.tar.gz | tar xfz - --strip 1 -C /usr/src/fluentbit && \
126
134
cd /usr/src/fluentbit && \
127
135
cmake \
128
136
-DCMAKE_INSTALL_PREFIX=/usr \
129
137
-DCMAKE_INSTALL_LIBDIR=lib \
130
138
-DCMAKE_BUILD_TYPE=None \
131
- -DFLB_JEMALLOC=Yes \
132
- -DFLB_RELEASE=Yes \
133
- -DFLB_SIGNV4=Yes \
139
+ -DFLB_AWS=No \
134
140
-DFLB_BACKTRACE=No \
135
- -DFLB_HTTP_SERVER=Yes \
141
+ -DFLB_DEBUG=No \
136
142
-DFLB_EXAMPLES=No \
143
+ -DFLB_FILTER_AWS=No \
144
+ -DFLB_FILTER_KUBERNETES=No \
145
+ -DFLB_HTTP_SERVER=Yes \
146
+ -DFLB_IN_COLLECTD=No \
147
+ -DFLB_IN_CPU=No \
148
+ -DFLB_IN_DOCKER=No \
149
+ -DFLB_IN_DOCKER_EVENTS=No \
150
+ -DFLB_IN_KMSG=No \
151
+ -DFLB_IN_MEM=No \
152
+ -DFLB_IN_MQTT=No \
153
+ -DFLB_IN_NETIF=No \
137
154
-DFLB_IN_SERIAL=No \
138
155
-DFLB_IN_SYSTEMD=No \
156
+ -DFLB_IN_TCP=No \
157
+ -DFLB_IN_THERMAL=No \
139
158
-DFLB_IN_WINLOG=No \
140
159
-DFLB_IN_WINSTAT=No \
141
- -DFLB=FLB_IN_KMSG=No \
142
- -DFLB_IN_SYSTEMD =No \
160
+ -DFLB_JEMALLOC=Yes \
161
+ -DFLB_LUAJIT =No \
143
162
-DFLB_OUT_AZURE=No \
144
163
-DFLB_OUT_AZURE_BLOB=No \
145
164
-DFLB_OUT_BIGQUERY=No \
146
- -DFLB_OUT_DATADOG=No \
165
+ -DFLB_OUT_CALYPTIA=No \
166
+ -DFLB_OUT_CLOUDWATCH_LOGS=No \
147
167
-DFLB_OUT_COUNTER=No \
168
+ -DFLB_OUT_DATADOG=No \
169
+ -DFLB_OUT_GELF=No \
148
170
-DFLB_OUT_INFLUXDB=No \
149
- -DFLB_OUT_NRLOGS=No \
150
- -DFLB_OUT_LOGDNA=No \
151
171
-DFLB_OUT_KAFKA=No \
152
172
-DFLB_OUT_KAFKA_REST=No \
153
173
-DFLB_OUT_KINESIS_FIREHOSE=No \
154
174
-DFLB_OUT_KINESIS_STREAMS=No \
175
+ -DFLB_OUT_LOGDNA=No \
176
+ -DFLB_OUT_NATS=No \
177
+ -DFLB_OUT_NRLOGS=No \
155
178
-DFLB_OUT_PGSQL=No \
179
+ -DFLB_OUT_S3=No \
156
180
-DFLB_OUT_SLACK=No \
157
181
-DFLB_OUT_SPLUNK=No \
182
+ -DFLB_OUT_STACKDRIVER=No \
183
+ -DFLB_OUT_TCP=No \
184
+ -DFLB_OUT_TD=No \
185
+ -DFLB_RELEASE=Yes \
186
+ -DFLB_SHARED_LIB=Off \
187
+ -DFLB_SIGNV4=No \
188
+ -DFLB_SMALL=No \
158
189
. && \
159
- if [ "$debArch" = "amd64" ] ; then make -j"$(nproc)" ; make install ; mv /usr/etc/fluent-bit /etc/fluent-bit ; strip /usr/bin/fluent-bit ; if [ "$debArch" = "amd64" ] && [ "$no_upx" != "true " ]; then upx /usr/bin/fluent-bit ; fi ; fi ; \
190
+ if [ "$debArch" = "amd64" ] ; then make -j"$(nproc)" ; make install ; mv /usr/etc/fluent-bit /etc/fluent-bit ; strip /usr/bin/fluent-bit ; if [ "$debArch" = "amd64" ] && [ "$no_upx" != "true" ]; then upx /usr/bin/fluent-bit ; fi ; fi ; \
160
191
\
161
192
# ## S6 installation
162
193
debArch=$(dpkg --print-architecture) && \
@@ -168,7 +199,7 @@ RUN debArch=$(dpkg --print-architecture) && \
168
199
ppc64le) s6Arch='ppc64le' ;; \
169
200
*) echo >&2 "Error: unsupported architecture ($debArch)" ; exit 1 ;; \
170
201
esac; \
171
- curl -sSLk https://github.com/just-containers/s6-overlay/releases/download/${S6_OVERLAY_VERSION}/s6-overlay-${s6Arch}.tar.gz | tar xvfz - --strip 0 -C / && \
202
+ curl -sSLk https://github.com/just-containers/s6-overlay/releases/download/${S6_OVERLAY_VERSION}/s6-overlay-${s6Arch}.tar.gz | tar xfz - --strip 0 -C / && \
172
203
\
173
204
# ## Cleanup
174
205
mkdir -p /assets/cron && \
@@ -180,7 +211,7 @@ RUN debArch=$(dpkg --print-architecture) && \
180
211
rm -rf /usr/src/* && \
181
212
rm -rf /root/go && \
182
213
rm -rf /root/.cache && \
183
- rm -rf /var/lib/apt/lists/* /root/.gnupg /var/log/* /etc/logrotate.d
214
+ rm -rf /var/lib/apt/lists/* /root/.gnupg /var/log/* /etc/logrotate.d/*
184
215
185
216
# ## Networking configuration
186
217
EXPOSE 10050/TCP
0 commit comments