小编Chr*_*ine的帖子

如何在 Visual Studio Code Remote 中指定 dockerfile 阶段?

我有一个多阶段的 Dockerfile。我想配置 VS Code Remote 来构建 Dockerfile 的 dev 阶段,而不是 Dockerfile 中的最后一个阶段。

我很确定这个配置会出现在 .devcontainer.json 文件中。我已经通读了 .devcontainer.json 参考:https ://code.visualstudio.com/docs/remote/containers#_devcontainerjson-reference并尝试过runArgs,但这些是运行时参数,而不是构建参数。

我试过这个:

{
        "dockerFile": "Dockerfile",
        "extensions": ["ms-python.python"],
        "runArgs": [
                "--target",
                "dev"
        ]
}
Run Code Online (Sandbox Code Playgroud)

和:

{
        "dockerFile": "Dockerfile",
        "extensions": ["ms-python.python"],
        "buildArgs": [
                "--target",
                "dev"
        ]
}
Run Code Online (Sandbox Code Playgroud)

当我使用时runArgs,我得到了Failed: Starting the development container因为target不是一个docker run选项。当我尝试时buildArgs,该参数显然被忽略了,这是有道理的,因为它没有在文档中列出。

docker dockerfile visual-studio-code vscode-remote

5
推荐指数
0
解决办法
1146
查看次数

为什么在使用 dask 时 zarr 的性能比镶木地板好得多?

当我使用 dask 对 zarr 数据和 parquet 数据运行基本相同的计算时,基于 zarr 的计算明显更快。为什么?可能是因为我在创建镶木地板文件时做错了什么?

我在 jupyter notebook 中用虚假数据(见下文)复制了这个问题,以说明我所看到的行为类型。我很感激任何人对为什么基于 zarr 的计算比基于镶木地板的计算快几个数量级的见解。

我在现实生活中使用的数据是地球科学模型数据。特定的数据参数并不重要,但可以将每个参数视为具有纬度、经度和时间维度的数组。

要生成 zarr 文件,我只需写出我的参数及其维度的多维结构。

为了生成镶木地板,我首先将 3-D 参数数组“展平”为一个 1-D 数组,它成为我数据框中的单列。然后我添加纬度、经度和时间列,然后将数据框写为镶木地板。


此单元格具有其余代码所需的所有导入:

import pandas as pd
import numpy as np
import xarray as xr
import dask
import dask.array as da
import intake
from textwrap import dedent
Run Code Online (Sandbox Code Playgroud)

该单元生成假数据文件,总大小超过 3 GB:

def build_data(lat_resolution, lon_resolution, ntimes):
    """Build a fake geographical dataset with ntimes time steps and 
       resolution lat_resolution x lon_resolution"""
    lats = np.linspace(-90.0+lat_resolution/2,
                       90.0-lat_resolution/2,
                       np.round(180/lat_resolution))
    lons = np.linspace(-180.0+lon_resolution/2,
                       180-lon_resolution/2,
                       np.round(360/lon_resolution)) …
Run Code Online (Sandbox Code Playgroud)

python dask intake

5
推荐指数
1
解决办法
1166
查看次数