проблема
У меня очень медленный дисковый ввод-вывод в контейнере Docker. Я использую Boot2Docker, так что я на самом деле сейчас задаюсь вопросом, является ли проблема vboxsf?
тестирование
Первоначально я использовал этот сценарий, потому что я отлаживал веб-приложение, но, похоже, это сам диск для чтения.
- В докере: 1.6156311035156
- Host: 0.022423028945923
Я проверил скорость диска с dd и результаты в контейнере:
$ time sh -c "dd if=/dev/zero of=ddfile bs=8k count=25000 && sync"; rm ddfile
25000+0 records in
25000+0 records out
204800000 bytes (205 MB) copied, 4.23099 s, 48.4 MB/s
real 0m4.241s
user 0m0.000s
sys 0m2.110s
И на хосте:
$ time sh -c "dd if=/dev/zero of=ddfile bs=8k count=25000 && sync"; rm ddfile
25000+0 records in
25000+0 records out
204800000 bytes transferred in 0.482290 secs (424640750 bytes/sec)
sh -c "dd if=/dev/zero of=ddfile bs=8k count=25000 && sync"
0.01s user 0.30s system 48% cpu 0.650 total
Хост выводится в байтах, а контейнер - в мегабайтах, но при преобразовании этих чисел разница в скорости примерно в 10 раз превышает скорость.
Я использую Docker -v host/folder:container:/folder для монтирования кодовой базы в контейнер. Я не совсем уверен, куда идти отсюда. Существуют ли какие-либо известные проблемы с монтированием Docker? Или может быть еще одна проблема в игре?