A strong undersea earthquake has hit eastern Indonesia, triggering a small tsunami and some panic but no casualties or major damage.

The 7.1-magnitude quake occurred west of Halmahera island, four hours' flight from the capital Jakarta. The quake was strongly felt in several cities in eastern Indonesia, sending many people running from homes and other buildings, officials and residents said.

The world's largest archipelago, Indonesia is prone to earthquakes due to its location on the Pacific Ring of Fire faultlines.