配置参考¶
文件¶
Anaconda Repository.yaml
从以下位置加载带有扩展名的配置文件
:
/etc/binstar/
/etc/anaconda-server/
$PREFIX/etc/anaconda-server
注意:$PREFIX
是安装存储库的位置。
文件按顺序从这些目录加载,后面的文件覆盖前面的文件。文件按字母顺序从每个目录加载。
如果使用ANACONDA_SERVER_CONFIG
配置文件的路径设置环境变量,则在已列出的三个之后加载此文件。它的设置会覆盖早期文件中的任何冲突设置。
每个配置设置变量都可以使用命令或通过编辑配置文件来设置其值
。anaconda-server-config --set
示例:要将名为 VALUE_ONE 的值设置为 50,请将其添加到配置文件中:
VALUE_ONE: 50
或者,您可以使用以下命令将名为 VALUE_ONE 的值设置为 50:
anaconda-server-config --set VALUE_ONE 50
记录¶
服务器日志文件的位置$PREFIX/etc/supervisord.conf
由stdout_logfile
位于 [program:anaconda-server] 部分的配置条目在 supervisord 配置文件中定义。
日志的高级配置需要在服务器的 config.yaml 上设置一个 LOGGING 键。它使用 Python 的日志模块配置结构。
用户名¶
USER_REGEX ¶
定义允许的用户名的正则表达式。
例如,此设置指定用户名仅包含小写字母、句点、加号和减号字符(.
、+
和-
):
USER_REGEX: '^[a-z.+-]+$'
注意:为默认值USER_REGEX
就是^[a-z0-9_][a-z0-9_-]+$
其转换为:至少一个字母数字字符或下划线,随后的零个或多个字母数字,划线或下划线字符。
注意:将单引号字符的任何额外实例转义'
为\'
. 不要使用斜杠和与号字符/
和&
,它们在 URL 中具有特殊含义。
注意:如果 USER_REGEX 更改并重新启动服务器,与新 USER_REGEX 不匹配的现有用户名不会导致错误。
数据库¶
Repository 使用 MongoDB 作为数据库后端。
MONGO_URL ¶
一个MongoDB的连接URI用于连接到MongoDB的数据库服务器。它可用于配置主机名和端口,以及数据库身份验证。
例如:
MONGO_URL: mongodb://anaconda-server:Pa55w0rd@mongodb.serv/
MONGO_DBNAME ¶
Repository 存储其数据的 MongoDB 数据库。
MONGO_REPLICA_SET ¶
建立到数据库服务器的连接后,MongoDB 副本集Repository 连接到的名称 。
文件存储¶
Repository 可以提供来自本地文件系统或来自 Amazon Web Services Simple Storage Service:AWS S3 的包内容。
keyname_full_path ¶
设置此选项后,Repository 按完整路径存储文件,而不仅仅是按哈希值。这样,用户Bob上传的 tensorflow 文件将存储在<fs_storage_root>/Bob/tensorflow/osx-64/tensorflow-1.1.0-np112py36_0.tar.bz2-594ac56e7e042600648defdb
.
注意:存储路径并不总是包含当前文件所有者及其用户名。这是因为当您重命名用户或将文件传输给其他用户时,存储上的文件位置不会更改。
fs_storage_root ¶
如果配置为使用文件系统存储,则为 Repository 存储所有上传包的目录的绝对路径。
PACKAGE_BUCKET_ID ¶
如果配置为使用 AWS S3 存储,则为 Repository 存储上传包的 AWS S3 存储桶的名称。
您可以<bucket>
在http://<bucket>.s3.amazonaws.com
URL 中使用来标识存储桶的名称。
S3_REGION_NAME ¶
存储桶所在的 S3 区域。可以在Amazon AWS 文档 中找到可用区域 。
S3_SERVER_SIDE_ENCRYPTION ¶
可以将此变量设置为为存储在 S3 存储桶中的包AES256
启用
服务器端加密。
笔记本¶
MAX_IPYNB_SIZE ¶
指定将笔记本上传到服务器时允许的最大大小。默认值为 25 MB。这个变量可以在
config.yaml
.
网络服务器¶
子域¶
如果设置为true
,Repositoryconda
从单独的子域提供包。默认为false
.
例如:
SERVER_NAME: anaconda.srv:8080
subdomains: true
允许访问 .conda 包http://conda.anaconda.srv:8080/
。
USER_CONTENT_DOMAIN ¶
作为跨站点脚本 (XSS) 保护,可以从单独的域名提供笔记本内容。如果配置了此选项,Repository 仅提供来自该域的渲染笔记本。
请参阅保护用户创建的内容。
ssl_options ¶
Repository 可以使用用户提供的 SSL 证书通过 HTTPS 提供内容。
例如:
ssl_options:
certfile: /etc/anaconda-server/server.crt
keyfile: /etc/anaconda-server/server.key
PREFERRED_URL_SCHEME: https
ssl_version ¶
一个整数,指定 Pythonssl
模块定义的 SSL 协议版本:
PROTOCOL_SSLv2 = 0
PROTOCOL_SSLv23 = 2
PROTOCOL_SSLv3 = 1
PROTOCOL_TLS = 2
PROTOCOL_TLSv1 = 3
PROTOCOL_TLSv1_1 = 4
PROTOCOL_TLSv1_2 = 5
默认值为5
(TLS v1.2)。
PREFERRED_URL_SCHEME ¶
用于生成 URL 的首选方案。https
如果配置了 HTTPS,则将此设置
为。
认证¶
LDAP ¶
用于配置 LDAP 身份验证和组同步的选项。
例如:
LDAP:
# Replace with company LDAP server
URI: 'ldap://<ldap.company.com>'
# Replace <uid=%(username)s,ou=People,dc=company,dc=com> with your company specific LDAP Bind/Base DN
# Bind directly to this Base DN.
BIND_DN: '<uid=%(username)s,ou=People,dc=company,dc=com>'
# password of the user specified in the BIND_DN
BIND_AUTH: abc123456
USER_SEARCH:
base: cn=Users,dc=example,dc=com
filter: sAMAccountName=%(username)s
# Map LDAP keys into application specific keys
KEY_MAP:
name: 'cn'
company: 'o'
location: 'l'
email: 'mail'
OPTIONS:
OPT_NETWORK_TIMEOUT: 60
OPT_TIMEOUT: 60
注意:要将 LDAP 与 SSL 结合使用,请设置USER_REGEX
和account_names_filter
选项:
account_names_filter: false
USER_REGEX: ^[a-z0-9_][a-z0-9_-.]+$
LDAP:
[configuration continues as above with URI, BIND_DN, and so on]
电子邮件¶
Repository 可以配置为出于各种原因发送电子邮件,包括重置忘记的用户名和密码。可以使用 SMTP 协议或通过 Amazon Web Services Simple Email Service (AWS SES) 发送电子邮件。
SMTP_PASSWORD ¶
在尝试发送电子邮件之前对 SMTP 服务器进行身份验证的密码。
USE_SES ¶
如果设置为true
,Repository 会使用 AWS SES 发送电子邮件。要向 AWS 进行身份验证,服务器应配置
适当的 IAM 角色,或具有在Boto 配置文件中指定的凭证。
ALLOW_DUPLICATED_EMAILS ¶
如果设置为true
,Repository 允许不同的用户共享相同的电子邮件或辅助电子邮件。默认为false
.
require_email_validation ¶
如果设置为true
,Repository 会通过电子邮件向新用户发送一个唯一令牌,以在允许他们登录之前验证他们的电子邮件地址。
高级¶
头像方法¶
用于生成用户头像 URL 的方法。有效的选择是:
- 'gravatar' 使用 gravatar.com 服务
- 'default' 显示预定义的静态图标
- 'static' 使用自定义静态 URL
头像_GRAVATAR_URL ¶
Gravatar 兼容服务的 URL。默认值:
https://www.gravatar.com/
。此 URL 用作构建有效 Gravatar URL 的前缀。
AVATAR_STATIC_URL ¶
AVATAR_METHOD
设置为时使用的静态 URL static
。默认为空字符串。
CONSTRUCTOR_TIMEOUT ¶
constructor
构建安装程序、包裹和管理包时调用的超时时间(以秒为单位)。默认为 60 秒。
CONSTRUCTOR_TOKEN_TIMEOUT ¶
为了在构建安装程序时提供对私有包的访问,创建了一个临时令牌。它必须在调用期间有效,constructor
并且在调用完成后应该很快到期。
CONSTRUCTOR_TOKEN_TIMEOUT
以秒为单位设置令牌的有效生命周期。默认为 60 秒。该值应大于或等于CONSTRUCTOR_TIMEOUT
。
CONSTRUCTOR_ALLOWED_OPTIONS ¶
constructor
允许包含在安装程序构造表单中的选项名称列表。默认为[]
(不允许有任何选项)。
PARCELS_ROOT ¶
生成 Cloudera 宗地的前缀。默认为/opt/cloudera/parcels
.
PARCEL_DISTRO_SUFFIXES ¶
为其生成 Cloudera 宗地的分布。默认为
.['el5', 'el6', 'el7', 'lucid', 'precise', 'trusty', 'wheezy',
'jessie', 'squeeze', 'sles11', 'sles12']
例如,如果您只想支持 Ubuntu:
PARCEL_DISTRO_SUFFIXES:
- lucid
- precise
- trusty
DEFAULT_CHANNELS ¶
随捆绑的 Anaconda 发行版安装的环境从中提取软件包的存储库帐户
。默认为.['anaconda', 'r-channel']
例如,要添加一个附加custom
帐户:
DEFAULT_CHANNELS:
- anaconda
- r-channel
- custom
构造函数_TMPDIR ¶
当constructor
构建一个安装它存储此临时目录中的配置。默认为None
,它告诉constructor
使用 Python 的tempfile.mkdtemp
.
CONDA_CACHE_SIZE ¶
repodata.json
请求缓存的最大大小(以字节为单位)。设置
0
为禁用repodata.json
缓存。默认值:1 Gb。当达到最大大小时,缓存中最近最少使用的 10 个条目将被逐出。
记住_COOKIE_ENABLED ¶
设置是否使用记住我的cookie 来保持会话活动。如果设置为 true,则REMEMBER_COOKIE_DURATION
设置相关,如果设置为 false,PERMANENT_SESSION_LIFETIME
则相关。默认为true
.
PERMANENT_SESSION_LIFETIME ¶
一个整数,用于设置会话将持续多少分钟。仅在REMEMBER_COOKIE_ENABLED
为 false时使用
。默认值为 44640(31 天)。
记住_COOKIE_DURATION ¶
一个整数,用于设置使用“记住我” cookie时会话将持续
多少分钟。仅在为真时使用。默认值为 525600(365 天)。REMEMBER_COOKIE_ENABLED
超级用户_ORG_ADMIN ¶
是否应自动授予超级用户对组织的管理权限。默认为false
。
NEXT_URL_WHITELIST ¶
由于存在“next”请求参数而在重定向请求时标记为安全的主机名列表。它主要用于 Anaconda Enterprise Notebooks 单点登录设置。默认值为 [](没有外部重定向是安全的)。
NEXT_URL_WHITELIST_REGEXP ¶
由于存在“next”请求参数,重定向请求时匹配标记为安全的主机名的正则表达式。它主要用于 Anaconda Enterprise Notebooks 单点登录设置。默认值为 '(?!)' ,它不匹配任何内容,因此只允许本地重定向。