---
# System prepended metadata

title: Docker Doc

---

# Docker Doc
### 使用准备

1. 下载[docker desktop](https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe)并安装
2. 设置"启用或关闭 Windows 功能"，subsystem勾上
3. 打开Windows power shell输入以下指令：
```
wsl --set-default-version 2
wsl --install -d Ubuntu-18.04
```
4. 打开docker desktop -> setting -> resources -> WSL integration -> Ubuntu-18.04(20.04)
5. 从ftp下载镜像文件(.tar)
6. 在wsl Ubuntu-18.04中加载tar镜像文件`sudo docker load < "images.tar"`
7. 使用`docker images`命令获取镜像ID 
8. 查看本机host的wsl地址
9. 以后台方式启动服务：
```
docker run --gpus all -p 10233:10233/udp -p 8888:8888/udp --name pose_server 'arg1' python tag_pip.py 'arg2'
```
> 其中arg1为镜像ID，arg2为服务输出的IP地址，默认为8888端口
> **例子：**`docker run -it --gpus all -p 10233:10233/udp -p 8888:8888/udp --name pose_server 30c7bd8c5ea5 python tag_pip.py 172.22.192.1`

此时连接好硬件并运行Unity场景即可。
**Unity demo package在docker镜像同目录下**


### 待解决问题
- [ ] 看tag初始化头部旋转不为0
- [ ] 硬件可能存在无法接收数据的问题
- [ ] Tag太小导致正确率和可视角度都远不如预研版
- [ ] 算法没有经过tensorrt加速（若要使用tensorrt，镜像大小可能高达30GB并有部署失败的概率）


### 参考资料和相关代码：
* [算法源码](https://gitlab.com/xim-share/human-pose/imu_pose)
* [Unity源码](https://gitlab.com/xim-share/human-pose/IMU_Unity)