TLDR: Vẫn chưa thể 2018-11 ; sử dụng docker-compose down
hoặcdocker-compose run --rm
Tôi muốn đưa ra một câu trả lời cập nhật cho câu hỏi này vì gần 3 năm sau. Điều này sẽ tiết kiệm cho người khác một số tìm kiếm.
Tôi đã có cùng một câu hỏi và đây là cách giải quyết mà tôi tìm thấy (bao gồm cả câu hỏi từ chính câu hỏi):
mà làm như sau:
Dừng các container và loại bỏ các container, mạng, khối lượng và hình ảnh được tạo bởi.
Theo mặc định, những thứ duy nhất bị xóa là:
- 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
Mạng và khối lượng được xác định là bên ngoài không bao giờ được gỡ bỏ.
Mặc dù bạn không thể khai báo nó trong docker-compose.yml
đó sẽ an toàn cho bạn một số rắc rối; đặc biệt là với khối lượng và mạng.
--rm - Hủy bỏ container sau khi chạy. Bỏ qua trong chế độ tách ra.
Chạy lệnh một lần đối với dịch vụ. Ví dụ: lệnh sau khởi động dịch vụ web và chạy bash như lệnh của nó.
docker-compose run web bash
[...] Lệnh được truyền bằng cách chạy ghi đè lệnh được xác định trong
cấu hình dịch vụ .
[...] Lệnh không tạo bất kỳ cổng nào được chỉ định trong cấu hình dịch vụ. Điều này ngăn chặn va chạm cổng với các cổng đã mở. Nếu bạn muốn các cổng của dịch vụ được tạo và ánh xạ tới máy chủ, hãy chỉ định cờ --service-port
-f, --force Đừng yêu cầu xác nhận xóa