Skip to content

Instantly share code, notes, and snippets.

@j-tim
j-tim / KafkaTopicConfiguration.java
Created April 10, 2020 12:08
Spring Kafka configuration example of passing specific Kafka topic configuration properties (in this case to configure compression)
import org.apache.kafka.clients.admin.NewTopic;
import org.apache.kafka.common.config.TopicConfig;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.config.TopicBuilder;
@Configuration
public class KafkaTopicConfiguration {
@Bean
@j-tim
j-tim / KafkaTopicConfiguration.java
Created April 10, 2020 12:07
Spring Kafka configuration example to programmatically create a Kafka compact topic
package io.stockgeeks.kafka.config;
import org.apache.kafka.clients.admin.NewTopic;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.config.TopicBuilder;
@Configuration
public class KafkaTopicConfiguration {
@j-tim
j-tim / KafkaTopicConfiguration.java
Last active August 17, 2020 19:20
Spring Kafka configuration example to programmatically create a Kafka topic
package io.stockgeeks.kafka.config;
import org.apache.kafka.clients.admin.NewTopic;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.config.TopicBuilder;
@Configuration
public class KafkaTopicConfiguration {
@j-tim
j-tim / KafkaConfiguration.java
Created April 1, 2020 13:38
Spring Kafka Configuration to demonstrate how to configure the ErrorHandlingDeserializer2
package io.stockgeeks.kafka.stock.tick.consumer.config;
import org.apache.kafka.clients.consumer.ConsumerConfig;
import org.apache.kafka.common.serialization.StringDeserializer;
import org.springframework.boot.autoconfigure.kafka.ConcurrentKafkaListenerContainerFactoryConfigurer;
import org.springframework.boot.autoconfigure.kafka.KafkaProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.config.ConcurrentKafkaListenerContainerFactory;
import org.springframework.kafka.core.ConsumerFactory;
spring:
kafka:
consumer:
key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer2
value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer2
properties:
spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer
spring.deserializer.value.delegate.class: io.confluent.kafka.serializers.KafkaAvroDeserializer
@j-tim
j-tim / pom.xml
Created January 27, 2020 21:32
Spring Boot 2.3.0 spring-boot-maven-plugin customize cloud native buildpacks builder
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@j-tim
j-tim / pom.xml
Created January 27, 2020 20:00
Spring Boot 2.3.0 spring-boot-maven-plugin customize image name configuration
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@j-tim
j-tim / application.yml
Created January 24, 2020 20:26
Customize Spring Boot info actuator
spring:
application:
name: "cloud-native-buildpack-example"
# Customize Spring Boot Info actuator
info:
java.vm.vendor: ${java.vm.vendor}
java.version: ${java.version}
application.encoding: @project.build.sourceEncoding@
application.name: ${spring.application.name}
@j-tim
j-tim / show-running-containers-docker.log
Created January 24, 2020 19:30
Show running containers in Docker
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b39e09fe68ce cloud-native-buildpacks-example:0.0.1-SNAPSHOT "/cnb/lifecycle/laun…" 2 seconds ago Up 1 second 0.0.0.0:8080->8080/tcp springbootcontainer
@j-tim
j-tim / show-docker-images.log
Last active January 24, 2020 19:19
Show build image using Docker
docker images | grep cloud-native
cloud-native-buildpacks-example 0.0.1-SNAPSHOT 2c7f20cd9123 4 seconds ago 226MB