Yes you do. Only citizens of the US are allowed to get a visa upon arrival. Unless your country is exempted, you will need a visa before visiting Canada.
How can I get visa?
You need your unexpired green card (permanent resident card) and unexpired passport from your country of citizenship to visit Canada. You do not need Canadian visa to enter Canada.
No. My wife is a US permanent resident. You just need your green card to go to China. US citizens need ID AND Passport.
Thanks! Your answer is awaiting moderation.