2.0.0-debian-9-r0 release

Update kafka to 2.0.0
This commit is contained in:
Bitnami Bot 2018-08-14 14:26:37 +00:00
parent 372c681450
commit 0ba00acf34
8 changed files with 185 additions and 3 deletions

View File

@ -0,0 +1,53 @@
FROM bitnami/minideb-extras:stretch-r106
LABEL maintainer "Bitnami <containers@bitnami.com>"
ENV BITNAMI_PKG_CHMOD="-R g+rwX" \
HOME="/"
# Install required system packages and dependencies
RUN install_packages libblkid1 libbsd0 libc6 libffi6 libgcc1 libglib2.0-0 libmount1 libpcre3 libselinux1 libstdc++6 libuuid1 libx11-6 libxau6 libxcb1 libxdmcp6 libxext6 zlib1g
RUN bitnami-pkg install java-1.8.181-1 --checksum 66bba4b4a2647f981339d306da796905c222057c4277a5ef045e079981a404f4
RUN bitnami-pkg unpack kafka-2.0.0-0 --checksum 0f0e51cca3ca7b4fa864ad3a7ab60655203675fb358d44be65e6422bb487316a
COPY rootfs /
ENV ALLOW_PLAINTEXT_LISTENER="no" \
BITNAMI_APP_NAME="kafka" \
BITNAMI_IMAGE_VERSION="2.0.0-debian-9-r0" \
KAFKA_ADVERTISED_LISTENERS="PLAINTEXT://:9092" \
KAFKA_BROKER_ID="-1" \
KAFKA_BROKER_PASSWORD="bitnami" \
KAFKA_BROKER_USER="user" \
KAFKA_CERTIFICATE_PASSWORD="" \
KAFKA_DELETE_TOPIC_ENABLE="false" \
KAFKA_HEAP_OPTS="-Xmx1024m -Xms1024m" \
KAFKA_INTER_BROKER_PASSWORD="bitnami" \
KAFKA_INTER_BROKER_USER="admin" \
KAFKA_LISTENERS="PLAINTEXT://:9092" \
KAFKA_LOGS_DIRS="/opt/bitnami/kafka/data" \
KAFKA_LOG_FLUSH_INTERVAL_MESSAGES="10000" \
KAFKA_LOG_FLUSH_INTERVAL_MS="1000" \
KAFKA_LOG_MESSAGE_FORMAT_VERSION="" \
KAFKA_LOG_RETENTION_BYTES="1073741824" \
KAFKA_LOG_RETENTION_CHECK_INTERVALS_MS="300000" \
KAFKA_LOG_RETENTION_HOURS="168" \
KAFKA_MAX_MESSAGE_BYTES="1000012" \
KAFKA_NUM_IO_THREADS="8" \
KAFKA_NUM_NETWORK_THREADS="3" \
KAFKA_NUM_PARTITIONS="1" \
KAFKA_NUM_RECOVERY_THREADS_PER_DATA_DIR="1" \
KAFKA_PORT_NUMBER="9092" \
KAFKA_SEGMENT_BYTES="1073741824" \
KAFKA_SOCKET_RECEIVE_BUFFER_BYTES="102400" \
KAFKA_SOCKET_REQUEST_MAX_BYTES="104857600" \
KAFKA_SOCKET_SEND_BUFFER_BYTES="102400" \
KAFKA_ZOOKEEPER_CONNECT="localhost:2181" \
KAFKA_ZOOKEEPER_CONNECT_TIMEOUT_MS="6000" \
KAFKA_ZOOKEEPER_PASSWORD="" \
KAFKA_ZOOKEEPER_USER="" \
PATH="/opt/bitnami/java/bin:/opt/bitnami/kafka/bin:$PATH"
EXPOSE 9092
USER 1001
ENTRYPOINT ["/app-entrypoint.sh"]
CMD ["/run.sh"]

View File

@ -0,0 +1,26 @@
version: '2'
services:
zookeeper:
image: 'bitnami/zookeeper:latest'
ports:
- '2181:2181'
volumes:
- 'zookeeper_data:/bitnami'
environment:
- ALLOW_ANONYMOUS_LOGIN=yes
kafka:
image: 'bitnami/kafka:2'
ports:
- '9092:9092'
volumes:
- 'kafka_data:/bitnami'
environment:
- KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
- ALLOW_PLAINTEXT_LISTENER=yes
volumes:
zookeeper_data:
driver: local
kafka_data:
driver: local

View File

@ -0,0 +1,14 @@
#!/bin/bash -e
. /opt/bitnami/base/functions
. /opt/bitnami/base/helpers
print_welcome_page
if [[ "$1" == "nami" && "$2" == "start" ]] || [[ "$1" == "/run.sh" ]]; then
. /init.sh
nami_initialize kafka
info "Starting kafka... "
fi
exec tini -- "$@"

View File

@ -0,0 +1,23 @@
##
## @brief Helper function to show an error when KAFKA_LISTENERS does not configure a secure listener
## param $1 Input name
##
plaintext_listener_error() {
error "The $1 environment variable does not set a secure listener. Set the environment variable ALLOW_PLAINTEXT_LISTENER=yes to allow the container to be started with a plaintext listener. This is recommended only for development."
exit 1
}
##
## @brief Helper function to show a warning when the ALLOW_PLAINTEXT_LISTENER flag is enabled
##
plaintext_listener_enabled_warn() {
warn "You set the environment variable ALLOW_PLAINTEXT_LISTENER=${ALLOW_PLAINTEXT_LISTENER}. For safety reasons, do not use this flag in a production environment."
}
# Validate passwords
if [[ "$ALLOW_PLAINTEXT_LISTENER" =~ ^(yes|Yes|YES)$ ]]; then
plaintext_listener_enabled_warn
elif [[ ! "$KAFKA_LISTENERS" =~ SASL_SSL ]]; then
plaintext_listener_error KAFKA_LISTENERS
fi

View File

@ -0,0 +1,34 @@
{
"allowPlaintextListener": "{{$global.env.ALLOW_PLAINTEXT_LISTENER}}",
"kafkaAdvertisedListeners": "{{$global.env.KAFKA_ADVERTISED_LISTENERS}}",
"kafkaBrokerId": "{{$global.env.KAFKA_BROKER_ID}}",
"kafkaBrokerPassword": "{{$global.env.KAFKA_BROKER_PASSWORD}}",
"kafkaBrokerUser": "{{$global.env.KAFKA_BROKER_USER}}",
"kafkaCertificatePassword": "{{$global.env.KAFKA_CERTIFICATE_PASSWORD}}",
"kafkaDeleteTopicEnable": "{{$global.env.KAFKA_DELETE_TOPIC_ENABLE}}",
"kafkaHeapOpts": "{{$global.env.KAFKA_HEAP_OPTS}}",
"kafkaInterBrokerPassword": "{{$global.env.KAFKA_INTER_BROKER_PASSWORD}}",
"kafkaInterBrokerUser": "{{$global.env.KAFKA_INTER_BROKER_USER}}",
"kafkaListeners": "{{$global.env.KAFKA_LISTENERS}}",
"kafkaLogFlushIntervalMessages": "{{$global.env.KAFKA_LOG_FLUSH_INTERVAL_MESSAGES}}",
"kafkaLogFlushIntervalMs": "{{$global.env.KAFKA_LOG_FLUSH_INTERVAL_MS}}",
"kafkaLogMessageFormatVersion": "{{$global.env.KAFKA_LOG_MESSAGE_FORMAT_VERSION}}",
"kafkaLogRetentionBytes": "{{$global.env.KAFKA_LOG_RETENTION_BYTES}}",
"kafkaLogRetentionCheckIntervalMs": "{{$global.env.KAFKA_LOG_RETENTION_CHECK_INTERVALS_MS}}",
"kafkaLogRetentionHours": "{{$global.env.KAFKA_LOG_RETENTION_HOURS}}",
"kafkaLogSegmentBytes": "{{$global.env.KAFKA_SEGMENT_BYTES}}",
"kafkaLogsDirs": "{{$global.env.KAFKA_LOGS_DIRS}}",
"kafkaMaxMessageBytes": "{{$global.env.KAFKA_MAX_MESSAGE_BYTES}}",
"kafkaNumIoThreads": "{{$global.env.KAFKA_NUM_IO_THREADS}}",
"kafkaNumNetworkThreads": "{{$global.env.KAFKA_NUM_NETWORK_THREADS}}",
"kafkaNumPartitions": "{{$global.env.KAFKA_NUM_PARTITIONS}}",
"kafkaNumRecoveryThreadsPerDataDir": "{{$global.env.KAFKA_NUM_RECOVERY_THREADS_PER_DATA_DIR}}",
"kafkaPort": "{{$global.env.KAFKA_PORT_NUMBER}}",
"kafkaSocketReceiveBufferBytes": "{{$global.env.KAFKA_SOCKET_RECEIVE_BUFFER_BYTES}}",
"kafkaSocketRequestMaxBytes": "{{$global.env.KAFKA_SOCKET_REQUEST_MAX_BYTES}}",
"kafkaSocketSendBufferBytes": "{{$global.env.KAFKA_SOCKET_SEND_BUFFER_BYTES}}",
"kafkaZookeeperConnect": "{{$global.env.KAFKA_ZOOKEEPER_CONNECT}}",
"kafkaZookeeperConnectionTimeoutMs": "{{$global.env.KAFKA_ZOOKEEPER_CONNECT_TIMEOUT_MS}}",
"kafkaZookeeperPassword": "{{$global.env.KAFKA_ZOOKEEPER_PASSWORD}}",
"kafkaZookeeperUser": "{{$global.env.KAFKA_ZOOKEEPER_USER}}"
}

View File

@ -0,0 +1,30 @@
#!/bin/bash
. /opt/bitnami/base/functions
. /opt/bitnami/base/helpers
USER=kafka
KAFKA_HOME="/opt/bitnami/kafka"
START_COMMAND="${KAFKA_HOME}/bin/kafka-server-start.sh -daemon ${KAFKA_HOME}/config/server.properties && ps ax | grep -i 'java.*kafka' | grep -v grep | awk '{print \$1}' > ${KAFKA_HOME}/tmp/kafka.pid && tail -f ${KAFKA_HOME}/logs/server.log"
if [[ -z "$KAFKA_BROKER_ID" ]]; then
if [[ -n "$BROKER_ID_COMMAND" ]]; then
export KAFKA_BROKER_ID=$(eval $BROKER_ID_COMMAND)
else
# By default auto allocate broker ID
export KAFKA_BROKER_ID=-1
fi
fi
if [[ "$KAFKA_LISTENERS" =~ SASL ]]; then
export KAFKA_OPTS="-Djava.security.auth.login.config=${KAFKA_HOME}/conf/kafka_jaas.conf"
fi
# If container is started as `root` user
if [ $EUID -eq 0 ]; then
gosu ${USER} touch ${KAFKA_HOME}/logs/server.log
exec gosu ${USER} bash -c "${START_COMMAND}"
else
touch ${KAFKA_HOME}/logs/server.log
exec bash -c "${START_COMMAND}"
fi

View File

@ -45,8 +45,10 @@ services:
Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://docs.bitnami.com/containers/how-to/understand-rolling-tags-containers/).
* [`2-debian-9`, `2.0.0-debian-9-r0`, `2`, `2.0.0`, `2.0.0-r0`, `latest` (2/Dockerfile)](https://github.com/bitnami/bitnami-docker-kafka/blob/2.0.0-debian-9-r0/2/Dockerfile)
* [`1-ol-7`, `1.1.1-ol-7-r16` (1/ol-7/Dockerfile)](https://github.com/bitnami/bitnami-docker-kafka/blob/1.1.1-ol-7-r16/1/ol-7/Dockerfile)
* [`1-debian-9`, `1.1.1-debian-9-r10`, `1`, `1.1.1`, `1.1.1-r10`, `latest` (1/Dockerfile)](https://github.com/bitnami/bitnami-docker-kafka/blob/1.1.1-debian-9-r10/1/Dockerfile)
* [`1-debian-9`, `1.1.1-debian-9-r10`, `1`, `1.1.1`, `1.1.1-r10` (1/Dockerfile)](https://github.com/bitnami/bitnami-docker-kafka/blob/1.1.1-debian-9-r10/1/Dockerfile)
* [`2-ol-7`, `0.0.0-ol-7-r0` (2/ol-7/Dockerfile)](https://github.com/bitnami/bitnami-docker-kafka/blob/0.0.0-ol-7-r0/2/ol-7/Dockerfile)
Subscribe to project updates by watching the [bitnami/kafka GitHub repo](https://github.com/bitnami/bitnami-docker-kafka).

View File

@ -5,8 +5,8 @@ jobs:
docker:
- image: docker:17.06.0-ce-git
environment:
RELEASE_SERIES_LIST: "1"
LATEST_STABLE: "1"
RELEASE_SERIES_LIST: "1,2"
LATEST_STABLE: "2"
DISTRIBUTIONS_LIST: "debian-9,ol-7"
IMAGE_NAME: kafka
CHART_NAME: kafka