Mit*_*kov 5 python django gitlab docker docker-compose
Gitlab无法在构建时清理我的缓存。如何解决这个问题?
执行器:外壳
Fetching changes...
warning: failed to remove config/__pycache__/__init__.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/local.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/__init__.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/common.cpython-36.pyc
warning: failed to remove config/settings/__pycache__/test.cpython-36.pyc
warning: failed to remove docs/__pycache__/__init__.cpython-36.pyc
Run Code Online (Sandbox Code Playgroud)
幸运的是,我遇到了和你完全相同的问题(我认为)。
一点背景:
我使用 gitlab ci 来使用远程运行程序(shell)进行构建,该运行程序将构建 docker 映像,然后运行一些测试。
原因:
我通过传递 -v 标志来在容器内安装本地目录
docker run(例如,还有其他方法可以使用 compose yml 来执行此操作)。因为 docker 容器以 root 身份运行,所以生成的 __pycache__ 目录和文件由本地文件系统上的 root 拥有;这意味着 docker-runner 无权在下一个构建中删除它们。
解决方案:
删除挂载并复制文件。