Olá, Rafael. Tudo bem?
Quando você usa docker run -it, o -i é uma contração da opção --interactive. É ela que fornece acesso ao STDIN (Standard Input = Entrada Padrão) do container e permite que você passe comandos para ele. Você consegue fazer o run sem o -t e ainda assim executar comandos, pois o que o -t vai fazer é te dar um prompt do terminal, mas é o modo interativo que te permite passar comandos e receber respostas. 
Você pode fazer o teste de executar o docker run -t ubuntu e vai até ter acesso ao prompt, mas não vai ter resposta para comandos que você executar (para sair, vai precisar fechar o terminal e parar o container manualmente com docker stop [ID_DO_CONTAINER]).
Quando você encerra o container que foi iniciado com -i ele mantém o acesso ao STDIN, por isso que você consegue executar de novo podendo passar comandos.
Então, para que você possa iniciar/reinicar um container e passar comandos à ele, você precisa usar pelo menos a opção -i. 
Espero ter ajudado. Se tiver alguma dúvida, é só dizer.