I'm undersanding equipment can move from vessen to vehicle to warehouse, etc. There's really no perfect solution to this design. What I would do is create uniform ID system for all 3 tables (vessel, warehosue, vehicle). Then create EQUIPMENT_MOVE table that will contain 4 columns:
EQUIPMENT_ID
MOVED_FROM
MOVED_TO
MOVE_TYPE
Where MOVE_TYPE is 0 if you're moving from vehicle to vehicle, 1 if move is from vessel to warehouse and etc, I believe you should have 6 types total. MOVED_FROM and MOVED_TO columns will contain IDs of vessel, vehicle or warehouse (that's the reason we needed a uniform id system).
**************
A better solution, but this would only work if Vehicle, Warehosue and Vessel objects can be stored in the same table (i.e. they have the same attributes). Put them all into the same STORAGE table and add an extra column to that table OBJECT_TYPE which will distinguish vehicle, vessel warehosue recrods. Then you would still have EQUIPMENT_MOVE table but you no longer need MOVE_TYPE column.