It's a kind of faint joke. It's a creative variation on a series of euphemisms for "Holy Christ!" "Holy Christ," when used to express surprise or astonishment, considered "bad language" because it is profane. (Ir breaks one of Ten Commandments). So, people start to say "Holy Christ" and, realize they are about to say something bad, and quickly substitute another word for it. Some traditional "minced" expressions are "Holy cow!" and "Holy smokes!" For no reason I know of, when I was a kid people said "Holy moley!" "Moley" isn't a word, but it rhymes with "Holy."
So, "Holy cannoli!" is an unusual version. Like "Holy moley!" it rhymes, but it has the advantage of being a real word.
Because of the large number of Italian-Americans in the United States, and the popularity of Italian (or at least Italian-American) cuisine, cannoli has become familiar in the United States.