玩 AI 時， 經常需要自己編譯軟體。 很麻煩的是， AI 軟體經常有很長一串相依套件， 其中有些套件很難編譯。 以我最近在玩的影像處理為例， opencv 跟 boost 是兩個很常用到但編譯起來困難重重的套件。 還好找到 docker-cmake-opencv-boost 這個現成的 Dockerfile。 向作者求助兩次之後， 得到 迅速有效的回應。 我就直接拿原作者的 Dockerfile 來用：
製作並上傳了 ckhung/cvbstnpy 這個 docker image。
它的上一層 (parent image) 是 pathtrk/docker-python3-opencv， 再上一層是 python:3.5.3。 用 cat /etc/os-release 看到作業系統版本是 debian jessie。 但是請注意： python 相關套件請 不要用 apt-get 安裝， 而要用 pip 安裝。 因為 which python 看到的是 /usr/local/bin/python ， 最終指向 /usr/local/bin/python3.5 也就是說它並不是 apt-get 所安裝的執行檔。 至於 pip， 也可用 which pip 查詢， 看到的也是在同一個目錄下 (/usr/local/bin)， 是當初跟著 python:3.5 一起安裝的版本， 所以沒問題。
還有， 編譯時的 /usr/include 也應改成 /usr/local/include、 連結時的 /usr/lib 也應改成 /usr/local/lib 。
如果你想編譯的程式， 所用的 boost 版本 <= 1.62， 而且有用到 boost.numpy， 那麼必須照著 這個說明 小改一下原始碼。