TLDR: ainda não é possível 2018-11 ; use docker-compose down
oudocker-compose run --rm
Eu quero dar uma resposta atualizada para esta pergunta, porque é quase 3 anos depois. Isso poupará a outras pessoas alguma pesquisa.
Eu tive a mesma pergunta e aqui estão as soluções alternativas que encontrei (incluindo a da própria pergunta):
que faz o seguinte:
Interrompe contêineres e remove contêineres, redes, volumes e imagens criados por up.
Por padrão, as únicas coisas removidas são:
- Containers for services defined in the Compose file
- Networks defined in the networks section of the Compose file
- The default network, if one is used
Redes e volumes definidos como externos nunca são removidos.
Embora você não possa declara- docker-compose.yml
lo, você terá alguns aborrecimentos; especialmente com volumes e redes.
--rm - Remova o recipiente após a execução. Ignorado no modo desanexado.
Executa um comando único contra um serviço. Por exemplo, o comando a seguir inicia o serviço da web e executa o bash como seu comando.
docker-compose run web bash
[...] o comando passado por execução substitui o comando definido na
configuração do serviço .
[...] o comando não cria nenhuma das portas especificadas na configuração do serviço. Isso evita colisões de portas com portas já abertas. Se você quer portos do serviço a ser criado e mapeado para o anfitrião, especifique o --service-portas flag
-f, --force Não peça para confirmar a remoção