Modern container ships travel at about 25 knots (unless they're doing fuel-saving slow cruise at 12 knots). http://www.sea-distances.org/ tells me that a 25-knot ship going from Hong Kong to Marseilles via the Suez Canal takes 13 days 7 hours to get there.
In practice, of course, there's loading and unloading on both ends (figure 2 days) and you're not traveling through the Suez at 25 knots; the traffic there goes at 8 knots according to https://en.wikipedia.org/wiki/Suez_Canal#Navigation. That said, the Suez transit takes 11-16 hours according to that link, so maybe add half a day to the estimate.
The upshot is that a 16-18 day travel time is not unreasonable there. I was a bit surprised it's that short, but being able to maintain 25 knots around the clock eats up distance faster than one expects.
Of course if you go from Shanghai instead of Hong Kong, you need to add a day and a half or so. And if you go to Brest instead of Marseilles, add two more days.
But the huge mistake you're making is that a container vessel will make additional stops and it does not connect every possible port to every other possible port. If you have uncommon combinations, the container will usually be moved from one vessel to another. This adds additional time (days).
Hong Kong -> Fos Sur Mer is like 31+ days.