This is a photograph of a man whom I suspect is Stephen Caldwell Roach, born in Cornwall-on-Hudson, NY, 1839 https://www.familysearch.org/ark:/61903/1:1:K9RF-YGM The photo is from an older relative on that side of the family. He lived most of his life in Brooklyn, NY https://www.familysearch.org/ark:/61903/3:1:S3HY-67B3-J9W?i=14&cc=1325221 and I suspect the photo was taken there. His occupation is listed as Ship Keeper in the 1900 US Census (above). He did serve in the Navy during the Civil War, but this uniform looks to me like a policeman's. Does anybody have an idea what the uniform is? Is it a 'Shipkeeper's' uniform?
If you go to this link you will see a similarity in uniform. https://i.pinimg.com/originals/b9/68/38/b96838746844625ca49087413ab61bd3.jpg
The link is for New York City police about 1900. My guess is that your photo may be from that era or just before.