The simplest way is still Masuda Method. Obtain a compatible Pokemon from a game played in a different language (so, obviously, a Ditto) and put it in the Daycare with a Pokemon you caught yourself. Continue hatching eggs until you get a Shiny. This becomes even more effective once you have completed the local Alolan Pokedex, unlocking the Shiny Charm, obtained at the GameFreak office in Heahea City on Akala Island.
Additionally, it is possible to abuse a change in the way the game determines Shininess. Sun/Moon plan out what are called "Shiny values" for eggs much farther in advance than previous games. This allows you to use the Time Machine method much more effectively. Long story short, you start by putting a Magikarp in with your Masuda Ditto, and then saving your game. You then breed and hatch several boxes of eggs at a time. When you get a Shiny, you count how many eggs it was since you saved your game, and then reset the game (close without saving). You then hatch all those same eggs again, but right before the game generates the egg that will be Shiny, you swap the Magikarp for the Pokemon specie you are actually trying to breed (in your case, Rockruff). This is why there are sooooooooooooo many Magikarps on Wonder Trade.
The alternative is to use SOS Battles. In addition to a better shot at high natural IVs and being the only way to obtain Hidden Abilities in Sun/Moon, long SOS Battles also increase the Shiny ratio as they continue on. Based on what I have read on the interwebs, after the 30th successful ally call, the Shiny ratio will be maxed out for the remainder of the SOS Battle.