HOUSTON -- As of two games ago, Jason Castro had never hit a homer off a left-hander.
Now Houston's left-handed hitting catcher has done it twice.
Dominguez put Houston on top 3-0 with a double in the second inning, and Castro hit a two-run shot to make it 5-2 in the seventh.
"Jason has definitely found his groove and understands exactly what it is he's doing," manager Bo Porter said of Castro, whose first 16 homers came against right-handers. "He's healthy, his legs are underneath him, and it's allowing him to put together an All-Star type season."
He has a career-high 10 home runs this season, the second-most among catchers in the American League.
"I'm feeling comfortable," Castro said. "There's some things I've been working on with some of my pitch recognition and things like that. So I think it's coming along. It's definitely a work in progress."
Alejandro De Aza tripled and scored in the sixth, and Dayan Viciedo tripled and scored in the seventh to cut the lead to 3-2. De Aza added a two-out, two-run homer off Jose Veras to make it 5-4 in the ninth before Alexei Ramirez grounded out to give Veras his 14th save.
Houston starter Dallas Keuchel (4-3) yielded four hits and two runs in 6 1/3 innings for the win. He continued a streak of solid starting pitching for the Astros, whose starters have gone 11-8 with a 3.03 ERA since May 15.
"The starting pitching has been tremendous," Porter said. "You look at this stretch in which we've played really good baseball ... it starts and ends with those guys on the mound."
Hector Santiago (2-5) allowed five hits and three runs with eight strikeouts in 5 1/3 innings.
The AL Central-worst White Sox have dropped four straight overall and 12 of their last 13 road games to fall 10 games under .500 (28-38) for the first time since May 7, 2011. They have had trouble scoring in this span and have been outscored 71-41.
"Offensively, we are not getting it done," Chicago's Adam Dunn said. "If I could sit here and put a finger on why (I would), but I can't. For once, I am speechless. I don't know why our offense is sputtering.
"We have the talent. We have everyone in place. We just aren't producing."
Chris Carter singled with one out in the second before Santiago issued consecutive walks to load the bases. Dominguez cleared the bases with a double which skidded down the left field line, just out of reach of a diving Jeff Keppinger to make it 3-0. He advanced to third on the throw home.
Brandon Barnes robbed Viciedo of a hit when he raced up Tal's Hill in center field and made an over-the-shoulder grab before falling and rolling into the wall to start the second inning.
The White Sox got their first hit the next batter when Dunn singled. But Keuchel retired the following nine hitters, with Chicago's next runner coming when Keppinger walked with one out in the fifth.
De Aza tripled to start the sixth inning, and Chicago cut the lead to 3-1 when he scored on a sacrifice fly by Ramirez.
Viciedo led off the seventh with a triple and scored on a one-out single by Keppinger that got Chicago within 3-2 and chased Keuchel.
He was replaced by Jose Cisnero who was greeted with a single by Gordon Beckham before pinch-hitter Conor Gillaspie walked to load the bases. Cisnero escaped the jam by striking out De Aza before Ramirez grounded out to end the inning.
Houston's game on Saturday night ended when Veras picked off Jordan Danks at second base. It was the first time in franchise history that a game was ended by an Astros pitcher picking off a runner, according to information provided by the team from the Elias Sports Bureau. ... The series wraps up on Monday when Houston's Bud Norris opposes Jose Quintana. Norris has a 2.28 ERA in eight starts at home this season. ... Houston OF Justin Maxwell, on the disabled list with a broken bone in his left hand, went 1 for 3 in a rehabilitation game with Triple-A Oklahoma City on Saturday. Porter said he doesn't have a timetable for his return to the Astros. ... White Sox OF Dewayne Wise, on the disabled list with a strained right hamstring, went 1 for 3 with a triple in a rehabilitation game with Triple-A Charlotte on Saturday. ... Astros' top prospect Jonathan Singleton, who finished a 50-game drug suspension late last month, has been promoted to Oklahoma City after hitting .263 with two homers and eight RBIs in 11 games for Double-A Corpus Christi.
Cards' Yadier Molina takes exception to quips by Cubs' Kris Bryant
Cardinals catcher Yadier Molina took exception to quips about St. Louis by Cubs star Kris Bryant and Ryan Dempster, saying only "stupid players and losers" make fun of other cities.
Buster's Buzz: Red Sox repeat? Four question marks facing the champs
From health to hangovers, Boston still must find a few answers in its quest for a second straight ring.
Yankees sign reliever who criticized Babe Ruth
Mike Golic finds it comical that the Yankees signed reliever Adam Ottavino who previously stated he would "strike out Babe Ruth every time."
Kris Bryant: 'Not good' that stars Bryce Harper, Manny Machado remain unsigned
Kris Bryant and Evan Longoria expressed frustration that several free agents, including stars Bryce Harper and Manny Machado, are still looking for jobs as February nears.
Red Sox manager Alex Cora may reconsider decision to visit White House
Red Sox manager Alex Cora, a Puerto Rico native who has been outspoken about its need for hurricane relief, indicated on Thursday that he may skip the World Series celebration at the White House over President Trump's policies toward the island.
Angels reach one-year deal with Cody Allen to be closer next season
The Los Angeles Angels have reached an agreement with relief pitcher Cody Allen on a one-year deal to be their closer next season, league sources told ESPN.