# WSL常用語法 Windows Subsystem for Linux (Ubuntu) ## 語法 docker start ``` $ sudo service docker restart $ service docker status ``` ``` $ docker image list 下載Docker映像 $ docker pull image_name:tag 建立容器: docker run -it image_name /bin/bash -it:啟動後自動進入 container 的 終端機。 --rm:退出 container 後自動刪除,小心使用。 docker exec -it container_id /bin/bash docker rm container_id ``` ## 共享 Windows 與 WSL 的檔案系統 WSL的 /mnt/ 即為 Windows 的磁碟槽資料夾,如: ``` WSL資料夾路徑: /mnt/c/ Windows資料夾: C:\ ``` docker cp (複製語法 尚未使用) ``` $ docker cp local_file.txt container_id:/path/in/container ``` ### 執行 docker deepstream 設定鏡像資料夾 ``` 新增資料夾將用作鏡像資料夾 windows c:\deepstream\ 複製SONYCAudioClassifier到該目錄下 c:\deepstream\SONYCAudioClassifier\ ``` docker start ``` $ sudo service docker restart $ service docker status ``` 啟動docker 已修改鏡像資料夾 ``` $ sudo docker run -it --rm --net=host --runtime nvidia -e DISPLAY=$DISPLAY -w /mnt/c/deepstream -v /mnt/c/deepstream:/tmp/deepstream nvcr.io/nvidia/deepstream:6.2-samples ``` 啟動docker (官網範例) ``` $ docker run --gpus "device=0" -it --rm -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -e CUDA_CACHE_DISABLE=0 nvcr.io/nvidia/deepstream:6.2-samples ``` 執行官網範例 ds_audio_sonyc_test_config ``` $ cd /opt/nvidia/deepstream/deepstream/sources/apps/sample_apps/deepstream-audio/configs $ deepstream-audio -c ds_audio_sonyc_test_config.txt Runtime commands: h: Print this help q: Quit p: Pause r: Resume ``` 錯誤訊息: ``` WARNING: ../nvdsinfer/nvdsinfer_model_builder.cpp:1487 Deserialize engine failed because file path: /opt/nvidia/deepstream/deepstream-6.2/sources/apps/sample_apps/deepstream-audio/configs/../../../../../samples/models/SONYC_Audio_Classifier/sonyc_audio_classify.onnx_b2_gpu0_fp32.engine open error WARNING: [TRT]: onnx2trt_utils.cpp:377: Your ONNX model has been generated with INT64 weights, while TensorRT does not natively support INT64. Attempting to cast down to INT32. ``` 執行廠商範例 c:\deepstream\SONYCAudioClassifier\ ``` $ cd /tmp/deepstream/SONYCAudioClassifier/ $ deepstream-audio -c ds_audio_sonyc_test_config.txt ``` 在docker內複製docker內資料夾(-r) 到 鏡像資料夾 /tmp/deepstream/ds/ 在docker裡面不用加docker, container_id: 複製全部deepstream資料夾 ``` cd /opt/ cp -r /opt/ /tmp/deepstream/ds/ ```