Dzieje się tak, ponieważ dodałeś $table->integer('user_id'); do pliku migracji. Musisz dodać unsignedInteger zamiast integer , ponieważ oryginalny id kolumna users tabela jest unsigned (i obie kolumny muszą być dokładnie takie same).
[EDYTUJ]
Od Laravel 5.8, id typ kolumny domyślnych users tabela nie jest już integer . Jest to teraz bigInteger .