createIndex=true doesn't create the index mapping in Elasticsearch using spring-data-elasticsearch
@Document(indexName = "profiles", shards=1, versionType = VersionType.INTERNAL, createIndex = true)
Setting the parameter createIndex = true
(which by the way is the default value) by itself does not do anything.
You need to have a Spring Data Elasticsearch repository with the entity class that has this annotation in your application, and the index must not yet exist.
The check if the index exists is done on repository bootstrapping and only if the index does not exist, it will be created and the mappings are written to the index.