小编Rob*_*man的帖子

msys2和docker运行指定命令:在docker中运行之前在本地查找命令

在msys2中,任何时候我尝试执行一个docker run [image] [cmd]命令,这样我试图在docker容器中运行时会覆盖Dockerfile中指定的命令,它会在本地查找命令,如果它不存在则会失败.

例如,我的组织有一个docker镜像,其中python可执行文件位于,/usr/src/venv/bin/python而python不在$PATH.这不是我的本地python安装的地方,当我尝试运行时,docker run myimage /usr/src/venv/bin/python test.py我得到这个错误:OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"C:/msys64/usr/src/venv/bin/python\": stat C:/msys64/usr/src/venv/bin/python: no such file or directory"这个图像不是一个Windows图像,所以它不应该看着C:所以所以我必须得出结论它在本地寻找该命令而不是在容器内.

注意:我正在运行的$PATHdocker 是添加到msys2内部的Windows的Docker .

$ which docker
/c/Program Files/Docker/Docker/Resources/bin/docker.exe
Run Code Online (Sandbox Code Playgroud)

我使用过的一个解决方法是创建一个新的Dockerfile,它只有一行代表我想要的图像,另一个就是我想要的命令.然后我可以在docker run some-image不指定命令的情况下运行并且它可以工作

有没有什么方法可以在msys2中解决这个问题而不需要上面描述的烦人的解决方法?

docker msys2

10
推荐指数
1
解决办法
188
查看次数

在 Python 中覆盖 Azure Blob 的最佳方法

如果我尝试覆盖现有的 blob:

blob_client = BlobClient.from_connection_string(connection_string, container_name, blob_name)
blob_client.upload_blob('Some text')
Run Code Online (Sandbox Code Playgroud)

我得到一个ResourceExistsError.

我可以检查 blob 是否存在,将其删除,然后上传:

try:
    blob_client.get_blob_properties()
    blob_client.delete_blob()
except ResourceNotFoundError:
    pass
blob_client.upload_blob('Some text')
Run Code Online (Sandbox Code Playgroud)

考虑到 python azure blob 存储 API 可用的内容以及惯用的 python 样式,是否有更好的方法来覆盖现有 blob 的内容?我期望有某种覆盖参数可以在upload_blob方法中选择性地设置为 true ,但它似乎不存在。

python azure-blob-storage

6
推荐指数
1
解决办法
2793
查看次数

PyMySQL 是否得到很好的支持?它比 MySQLdb 慢吗?

我正在构建一个需要高速连接的 python3 应用程序。作为一个纯 python 库,PyMySQL 在连接和执行查询方面会比基于 C 的 MySQLdb 慢得多吗?

PyMySQL 是否能很好地支持 Python 的未来版本?

如果没有,有人可以提出可靠的替代方案吗?

python mysql-python pymysql

4
推荐指数
2
解决办法
5771
查看次数

我如何开始使用OpenSeadragon?

我想知道如何开始使用OpenSeadragon.我根据github上的存储库自述文件通过node.js安装它.然后我看着API,看起来你必须使用OpenSeadragon.Viewer函数.但就我而言.我只想使用OpenSeadragon创建一个带有一个深度缩放图像的简单页面.

canvas deepzoom seadragon node.js

3
推荐指数
1
解决办法
4054
查看次数