I have Elasticsearch Docker working with Magento 2.4. No Issues.
#docker run --name=elasticsearch -p 127.0.0.1:9200:9200 -p 127.0.0.1:9300:9300 "elasticsearch:7.6.2"
If the docker is running correctly, You should get a output as below when you run "curl
http://localhost:9200/_cluster/health?pretty" as the M2 users.
-bash-4.2$ curl
http://localhost:9200/_cluster/health?pretty
{
"cluster_name" : "docker-cluster",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 1,
"number_of_data_nodes" : 1,
"active_primary_shards" : 20,
"active_shards" : 20,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 20,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 50.0
}
You might have to increase the vm.max_map_count=262144 to Elasticsearch Docker to start. Please check the Elasticsearch Docker log first.
You can check the log Plesk > Dockers > "Elasticsearch Docker" > Details. This will tell you exactly what is the issue is.
As Root,
#sysctl -w vm.max_map_count=262144