There is an open source project at www.openstreetmap.org , and I think this is the best choice in the long run. You can set data for the whole world or only the countries that you need on your server, there is an exact update of the data ... Or you can use maps from the main server, embed HTML, etc.
source
share