Родился 21 февраля 1920 года в селе Молчановка, ныне Ракитнянского района Киевской области, в семье рабочего. С 1932 года вместе с родителями жил в городе Макеевка Донецкой области. Окончил 10 классов и аэроклуб в 1938 году. Работал инструктором в аэроклубе. С 1940 года в рядах Красной Армии, в 1941 году окончил Тамбовскую военную авиационную школу пилотов.
С июля 1942 года в действующей армии. К середине апреля 1944 года командир эскадрильи 810-го штурмового авиационного полка (225-я штурмовая авиационная дивизия, 15-я Воздушная армия, 2-й Прибалтийский фронт) капитан В. И. Козловский совершил 103 успешных боевых вылета, нанеся врагу большой урон в живой силе и технике.
18 августа 1944 года за мужество и воинскую доблесть, проявленные в боях с врагами, удостоен звания Героя Советского Союза.
В 1953 году окончил Военно-Политическую академию. С 1960 года полковник В. И. Козловский — в запасе. Жил в Москве. Умер 4 января 1997 года. Похоронен на Троекуровском кладбище.
Награждён орденами: Ленина, Красного Знамени (трижды), Александра Невского, Отечественной войны 1-й степени (дважды), Красной Звезды; медалями.
На фронт Василий Козловский попал в июле 1942 года. Воевал как лётчик — штурмовик и командир различных подразделений.
…Август 1942 года. Немецкие танки рвутся к Воронежу. Город в огне пожарищ. Жители уходят на восток, подвергаясь постоянным атакам вражеской авиации. Севернее Воронежа, через Дон, немцы перебрасывают войска на левый берег. Авиационный штурмовой полк, в котором служил Козловский, получил приказ уничтожить переправу. Командир полка Кудряшов отобрал 4 экипажа и сам повёл их на выполнение задания.
Вражеская переправа была сильно защищена. Но, преодолев сопротивление истребителей противника, наши штурмовики нанесли удар по переправе и уничтожили её. Бой в воздухе продолжался. От точного удара Кудряшова один вражеский истребитель рухнул на землю. Два наших самолёта загорелись и упали на вражескую оборону. Осталось 2 советских штурмовика (самолёты Кудряшова и Козловского) против 11 истребителей врага.
10 «Мессеров» обрушились на машину командира. Пошёл в атаку и Козловский, через несколько секунд он зажёг ещё один самолёт противника. Но «Ил» командира, объятый пламенем, также рухнул на землю. Шквальный огонь вражеских истребителей со всех сторон обрушился на самолёт Козловского. Штурмовик загорелся. Нужно прыгать. Перевернув самолёт вверх колесами, лётчик выбирается из кабины. Затяжка с открытием парашюта помогает сбить пламя с одежды. Вскоре под ногами он ощутил землю.
…6 ноября 1942 года в канун 25-й годовщины Великой Октябрьской революции группе Козловского была поставлена задача — нанести удар по вражескому аэродрому в районе Курска. Расстояние не позволяло выполнить задачу со своего аэродрома. Приняли решение по выполнении задания совершить посадку за передним краем наших войск на любой пригодной площадке. На задание вылетело 12 штурмовиков и 12 истребителей прикрытия. С наступлением темноты группа провела более 60 атак на объекты противника. Уничтожены и повреждены около 100 самолётов, взорваны 2 склада с горючим и боеприпасами, 10 зенитных орудий.
В 1943 году в битве на Курской дуге эскадрилья Козловского отличилась в воздушных боях. Более 600 вылетов совершила она в те жаркие дни. Василий Иванович был неоднократно сбит в жарких воздушных боях. Не раз наши бойцы подбирали его в бессознательном состоянии, обгоревшего, израненного.
…Как-то в бою зенитный снаряд попал в правую плоскость самолёта. Крыло частично было разрушено, машину накренило вправо, и удержать её было почти невозможно. Василий Иванович сбросил бомбовой груз на цель и вдруг почувствовал ещё один удар в плоскость. Трудно было почти неуправляемый самолёт дотянуть до своей территории. К тому же на него набросились ещё 4 вражеских истребителя. Израненная машина, дымя, еле тянула. С трудом маневрируя, лётчик создавал условия для воздушного стрелка. Один немецкий самолёт был сбит. Второй, получив повреждение, проскочил вперед и попал под прицельный огонь командира.
Самолёт шёл со снижением, дымился мотор, а атаки врага следовали одна за другой. Осколком тяжело ранен стрелок, повреждён пулемёт. Длинная пулемётная очередь «Мессера» срезала хвостовое управление. Самолёт свалился в штопор и неумолимо помчался навстречу земле.
Козловский приказал стрелку покинуть машину. Но у того, парашют был разорван снарядом. Ему оставалось погибнуть вместе с самолётом. Тогда Василий Иванович решил сам покинуть самолёт. И тут он обнаружил, что осколком снаряда заклинило кабину, парашют не пролезал. Да и поздно уже было. Земля надвигалась. Самолёт вместе с экипажем врезался в землю.
Это был исключительный случай, когда обречённые на неминуемую гибель люди остаются живыми. При падении самолёт штопорил и, вращаясь, упал на крыло. Прямого удара не произошло. Инерционные силы смягчили удар. Пилота и стрелка выбросило далеко от самолёта. В бессознательном состоянии они были подобраны нашими солдатами. Около 4 часов Василий Иванович был без сознания, но молодой организм переборол смерть.
За образцовое выполнение боевых заданий командования, мужество, отвагу и геройство, проявленные в борьбе с немецко — фашистскими захватчиками, Указом Президиума Верховного Совета СССР от 19 августа 1944 года капитан Козловский Василий Иванович удостоен звания Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда» (№ 4392).
Всего за время войны он участвовал в 50 воздушных боях. Сбил лично и в составе группы 12 самолётов противника, 16 уничтожил при штурмовках на аэродромах. Кроме того им уничтожено свыше 4000 вражеских солдат, 530 автомашин, 98 зенитных пулемётов, 89 орудий, 30 минометов, 68 танков, 67 вагонов, 14 складов, 5 паровозов, пущено под откос 6 эшелонов с боевой техникой и живой силой противника.
После войны Василий Иванович до 1960 года продолжал службу в армии. В запас вышел в звании полковника. Работал в Государственном Комитете Совета Министров СССР по внешнеэкономическим связям.