1. You only need a full team of about 20 players
2. Soccer is the easiest sport for everyone to play. All you need is a field and a ball and be someone who is mobile enough to run
3. There are few rules in soccer so everyone can understand and it's a sport people can ref themselves
Add it all up and a 5 year old can practice on his own or with friends in a backyard or a neighbourhood field. That's why every country has soccer players.
On the other hand, hockey is the complete opposite. You need sticks, pads, arenas, zambonis to fix the ice, and lots of referees to govern the game and break up fights. And in order to be a good hockey player it takes a lot of time to learn to skate, shoot and you can only practice when you get access to ice time.
There's over 200 countries in the world. I bet half of them don't even have an ice arena. Here's the top 15 in the world. Now you know why Canada has so many great hockey players coming from any province or small town.
https://www.statista.com/statistics/282353/countries-by-number-of-ice-hockey-rinks/