wish of those help In your datagen you've specified format=json - so you're producing JSON data to a Kafka topic. You've not provided your connector properties file, but since you say the connector does work if you use the Avro console producer then I guess you're using Avro deserialisation in the connector. Therefore, use Avro in datagen, or configure your connector to deserialise the data using json.
Kafka Connect Sink (GCS) only reading from latest offset, configure to read from earliest?
it should still fix some issue If you are running Kafka (and Zookeeper) on your host, then, no, you don't need Docker at all. You should not use localhost in any connection string from the container, rather use the external service names of the containers and remove network_mode from the configurations.