title: How to escape colon when add device to docker container?
body: <ol>
  <li><p>This is ok to add device which by serial id:</p>
  
  <pre><code>docker run -it --rm --device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A101A9A7-if00-port0 -v /dev:/dev ubuntu /bin/bash
  </code></pre></li>
  <li><p>This is not ok to add device which by serial path:</p>
  
  <pre><code>docker run -it --rm --device /dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0 -v /dev:/dev ubuntu /bin/bash
  </code></pre>
  
  <p>It reports error:</p>
  
  <blockquote>
    <p>invalid argument "/dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0" for "--device" flag: bad format for path: /dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0<br />
    See 'docker run --help'.</p>
  </blockquote>
  
  <p>Same error if do escape string for <code>:</code> as next:</p>
  
  <pre><code>docker run -it --rm --device /dev/serial/by-path/pci-0000\:00\:14.0-usb-0\:8\:1.0-port0 -v /dev:/dev ubuntu /bin/bash
  </code></pre></li>
  </ol>
  
  <p>As I know, for <code>bind mount</code>, we now could use something like <code>--mount type=bind,source=/colon:path/test,destination=/data</code> to handle it, see <a href="https://stackoverflow.com/questions/44938108/unable-to-map-docker-volume-with-colon">this</a>.</p>
  
  <p>So my question is: for <code>--device</code>, what could I do?</p>