Yes you can find a Metal Coat in two ways: you get one from the man on the S.S. Aqua when you return his granddaughter or you could use Thief on wild Magnemites to get one.
Next, you need to trade your Onix while it's holding the Metal Coat. Then it will evolve.
S.S Aqua is in Olivine City on Mondays and Fridays and in Vermilion City on Wednesdays and Sundays. But when first get on the S.S Aqua, find the granddaughter of the grandfather and he'll give you the Metal Coat.