在 GitHub 上编辑
阿里云 OSS
首先需要在阿里云上设置 OSS 存储。然后使用 S3 风格的 URL 指向 OSS 存储,并配置 endpoint:
$ dvc remote add -d myremote oss://mybucket/path
$ dvc remote modify myremote oss_endpoint endpoint
要设置密钥 ID、密钥密钥和 endpoint(或其他任何 OSS 参数),请使用 dvc remote modify
,如下所示。使用 --local
选项可避免将你的密钥提交到 Git 中:
$ dvc remote modify --local myremote oss_key_id 'mykey'
$ dvc remote modify --local myremote oss_key_secret 'mysecret'
使用 Docker 测试你的 OSS 存储
启动一个运行 OSS 模拟器的容器,并设置环境变量,例如:
$ git clone https://github.com/nanaya-tachibana/oss-emulator.git
$ docker image build -t oss:1.0 oss-emulator
$ docker run --detach -p 8880:8880 --name oss-emulator oss:1.0
$ export OSS_BUCKET='mybucket'
$ export OSS_ENDPOINT='endpoint'
$ export OSS_ACCESS_KEY_ID='mykey'
$ export OSS_ACCESS_KEY_SECRET='mysecret'
在未提供密钥 ID 和密钥密钥时使用默认值,这将对公共读取存储桶和公共存储桶提供读取访问权限。
配置参数
如果以下参数包含敏感用户信息,请使用 --local
选项添加,以确保它们被写入 Git 忽略的配置文件中。
-
url
- 远程位置,格式为oss://<bucket>/<object>
:$ dvc remote modify myremote url oss://mybucket/path
-
oss_endpoint
- 用于访问远程容器的 OSS endpoint 值。$ dvc remote modify myremote oss_endpoint endpoint
-
oss_key_id
- 访问远程存储的 OSS 密钥 ID。$ dvc remote modify --local myremote oss_key_id 'mykey'
-
oss_key_secret
- 用于授权访问远程存储的 OSS 密钥。$ dvc remote modify --local myremote oss_key_secret 'mysecret'
环境变量
也可以通过环境变量来配置 OSS 远程存储。如果上述参数均未设置,则会尝试使用环境变量。可用的环境变量如下所示:
$ export OSS_ACCESS_KEY_ID='mykey'
$ export OSS_ACCESS_KEY_SECRET='mysecret'
$ export OSS_ENDPOINT='endpoint'