Bump map on a curved surface
The problem here is the texture coordinates/projection of the image, you are currently projecting the image in a single direction onto your mesh. You can think of projection working very much like a film projector here. By selecting 'Box' rather than 'Flat' as David suggested, blender will instead project from 6 different directions (as if a cube was surrounding the object, with the texture on each face). This works reasonably well for simple objects, but can still have problems around the where the corners of box that the image is being projected from are. 

To improve on the box projection, you need to do what is called UV unwrapping, which essentially creates a flattened version of the surface of your object which can then be used to map 2d details to the surface of your object. You can find a basic overview here