问题1:docker -v 与 onedrive 冲突
- 问题现象
在windows下docker用Ubuntu镜像生成容器,用-v映射到本地目录,如果这个目录也是onedrive包含的目录,那有可能导致onedrive一直卡在“正在更新文件”中
-
解决办法
- 停掉和删除容器
- 重设onedrive,键盘win+r,输入“%localappdata%\Microsoft\OneDrive\onedrive.exe /reset”
- 重启操作系统
-
这种方法但失去了在容器上操作文件后能直接同步到onedrive的功能,暂时用以下办法代替
- 目录copy一份到别的路径下,然后写一个脚本,按差异复制到onedrive目录
以下是同步脚本
set NOWDIR=%~dp0
cd %NOWDIR%
set SRC=...
set DST=...
xcopy "%SRC%\server" "%DST%\server" /s /h /d /y /exclude:uncopy.txt
以下是uncopy.txt文件
*.so
*.o
*.a
*.log
*.dSYM
.idea
*.iml
*.rock
*.rockspec
.DS_Store
*.pid
- 用系统的任务计划来执行脚本,把文件同步到onedrive下
问题2:docker -v映射目录后,容器中不生效
-
引起这个问题的原因是更新了操作系统的密码,解决办法如下
- 打开docker设置,在sharedrives栏,reset credentials...,然后选择shared的盘符,重新输入系统密码
- 重新生成容器
网友评论