askomics/virtuoso!Docker Build 。
bashdocker pull askomics/virtuoso
bash# 克隆仓库 git clone [***] cd docker-virtuoso # 构建镜像 docker build -t virtuoso .
bashdocker run --name my-virtuoso \ -p 8890:8890 -p 1111:1111 \ -e DBA_PASSWORD=myDbaPassword \ -e SPARQL_UPDATE=true \ -e DEFAULT_GRAPH=[***] \ -v /my/path/to/the/virtuoso/db:/data \ -d askomics/virtuoso
可通过DBA_PASSWORD环境变量在容器启动时设置dba用户密码。若未设置,将使用默认密码。
通过将SPARQL_UPDATE环境变量设为true,可授予SPARQL端点的SPARQL_UPDATE权限。
virtuoso.ini中的所有属性可通过环境变量配置。环境变量需以VIRT_为前缀,格式为VIRT_$SECTION_$KEY,其中$SECTION(节)和$KEY(键)区分大小写,需与virtuoso.ini中一致(采用驼峰命名)。例如,Database节下的ErrorLogFile属性应配置为VIRT_Database_ErrorLogFile=error.log。
virtuoso.ini文件将在每次容器启动时重新生成。
进入Virtuoso容器,打开ISQL并执行dump_nquads过程。导出文件将保存至/my/path/to/the/virtuoso/db/dumps。
bashdocker exec -it my-virtuoso sh isql-v -U dba -P $DBA_PASSWORD SQL> dump_nquads ('dumps', 1, ***, 1);
更多信息参见:[***]
将四元组文件(.nq,支持压缩)放入/my/path/to/the/virtuoso/db/dumps,进入容器,打开ISQL,注册并运行加载命令。
bashdocker exec -it my-virtuoso sh isql-v -U dba -P $DBA_PASSWORD SQL> ld_dir('dumps', '*.nq', '[***] SQL> rdf_loader_run();
通过查询验证加载状态(ll_state为2表示加载完成):
sqlselect * from DB.DBA.load_list;
更多信息参见:[***]
默认情况下,容器首次启动时,Virtuoso数据库目录(/my/path/to/the/virtuoso/db/toLoad)下toLoad文件夹中的所有数据将自动加载。默认图由DEFAULT_GRAPH环境变量设置,默认为http://localhost:8890/DAV。
通过ISQL接口执行以下命令创建Virtuoso备份:
bashdocker exec -i my-virtuoso mkdir -p backups docker exec -i my-virtuoso isql-v <<EOF exec('checkpoint'); backup_context_clear(); backup_online('backup_',30000,0,vector('backups')); exit; EOF
停止运行中的容器,使用新容器恢复数据库:
bashdocker run --rm -it -v path-to-your-database:/data askomics/virtuoso virtuoso-t +restore-backup backups/backup_ +configfile /data/virtuoso.ini
备份恢复完成后,新容器将退出,可重启原数据库容器。
也可通过环境变量自动恢复/data/backups目录下的备份,无需单独运行容器:
bashdocker run --name my-virtuoso \ -p 8890:8890 \ -p 1111:1111 \ -e DBA_PASSWORD=dba \ -e SPARQL_UPDATE=true \ -e BACKUP_PREFIX=backup_ \ -v path-to-your-database:/data \ -d askomics/virtuoso
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务