Just like a rainbow created as sunlight goes through raindrops, rainbows can form in clouds. And, these rainbows don't need rain!
When rainbows, or at least opalescent areas, appear in clouds, there's something interesting happening.
Figure 1: Ed Erbeck shot this on Jan. 31, 2012. Notice the rainbow effect in the small cloud in the upper middle of the image.
High, thin clouds are made of ice crystals that are shaped like dinner plates. When the sunlight hits them, then exits out the side of the ice plates, it is bent and separated into all the colors of the rainbow.
Figure 2: Illustration of sunlight hitting a plate-shaped ice crystal. The process separates sunlight into the colors of the rainbow.