因齐、宋两国不肯尊事楚国，请他攻打齐、宋两国。冬季，鲁僖公指挥楚国军队攻打齐国，占领了谷地。把齐桓公的儿子公子雍安置在谷地，易牙奉事公子雍作为鲁国的后援。楚国令尹子玉、司马子西领兵攻打宋国，包围缗地。引起了晋国对宋国的救援，在前632年，爆发了城濮之战。晋国大败楚国，成为中原霸主，齐国和鲁国参见践土之盟，都服从晋国的霸权。前612年秋季，齐懿公见晋国霸权衰落，派军队侵犯鲁国西部边境，所以季文子向晋国报告。冬，齐懿公发兵进攻鲁国西部边境，他认为诸侯不能救援。因为曹国曾经前来朝见过鲁国，因此攻打曹国，进入外