Корректно: в городе Красноярске.
См. ответ на вопрос № 241191.
Правильно: в Москве и (в канцелярской речи) в городе Москве.
Это название в сочетании с родовым наименованием город не склоняется. Подробнее см. в «Письмовнике».
Верно: в городе Санкт-Петербурге.