本文主要介绍如何使用镜像市场中的免费镜像,通过docker-compose 快速启动一个 Cromwell server。
Cromwell server 的启动需要以下组件配合:
实际上 Cromwell 除了发布 jar 包,也会发布对应的 docker 镜像,我们可以考虑使用 docker-compose来简化以上步骤。docker-compose 是 Docker 官方的开源项目,其定位是定义和运行多个 Docker 容器的应用(Defining and running multi-container Docker applications)。
使用docker-compose 可以将容器化的 Cromwell 和 Mysql 两个 service 拉起,作为一个应用来运行。再配合脚本来简化配置,可以将 Cromwell 的服务做成一键启停。
首先使用 Cromwell server 镜像开通一台 ECS,ssh 登入机器后,可以运行目录下的cromwell-server.sh,进行Cromwell Server的管理:
# ./cromwell-server.sh
cromwell-server.sh - init cromwell config and start/stop service
Usage: cromwell-server.sh [options...] [init/start/stop/status]
Options:
--id=STRING Access id
--key=STRING Access key
--root=STRING Oss root for cromwell, e.g: oss://my-bucket/cromwell/
--instance=STRING default runtime: instance type [ecs.sn1.medium]
--image=STRING default runtime: image id [img-ubuntu-vpc]
初次使用,需要做一些初始配置,可以使用下面的命令完成一键初始化与启动:
./cromwell-server.sh init --id=LTAI8xxxxx --key=vVGZVE8qUNjxxxxxxxx --root=oss://gtx-wgs-demo/cromwell/
上面的命令完成了以下配置:
--id
: 批量计算的 Access Id;--key
: 批量计算的 Access Key;--root
: Crowmell 运行时在 OSS 上的工作根目录;--instance
: Cromwell 默认运行时参数,实例类型;--image
: Cromwell 默认运行时参数,镜像ID;执行完以上命令后,会根据 Crowmell 配置文件模板生成配置文件,并通过 docker-compose 启动 Cromwell server,并在后台运行。服务启动后,就可以通过镜像中的命令行工具 widdler 执行工作流的提交:
cd /home/cromwell/cromwell/
widdler run echo.wdl inputs.json -o bcs_workflow_tag:test_echo
使用下面的命令可以一键停止服务:
./cromwell-server.sh stop
在已经完成配置的情况下,使用下面的命令,可以完成服务启动:
./cromwell-server.sh start
启动服务后可以通过下面的命令检查服务状态:
./cromwell-server.sh status
如果server已经启动,则会看到下面的输出:
checking cromwell server status.....
{"cromwell":"48-613cea9-SNAP"} is running!
./cromwell-server.sh logs
如果需要修改配置,在服务停止的情况下,再次使用 init 命令可以完成新配置重新启动:
./cromwell-server.sh init --id=LTAI8xxxxx --key=vVGZVE8qUNjxxxxxxxx --root=oss://gtx-wgs-demo/cromwell/
在 Crowmell 的配置文件中,可以设置每个 backend 的默认运行时参数 default-runtime-attibutes,也可以在提交工作流时通过 option 覆盖原有设置。
所以如果您在提交工作流时用到了数据盘、NAS等,都可以在 option 文件中设置:
{
"default_runtime_attributes": {
"vpc": "192.168.0.0/24",
"autoReleaseJob": true,
"mounts": "nas://1f****04-xkv88.cn-beijing.nas.aliyuncs.com:/ /mnt/ true",
"dataDisk": "cloud_ssd 250 /home/mount/"
},
"bcs_workflow_tag": "Tagxxx",
"read_from_cache": true
}
使用 widdler 命令行的 -O
(大写的O)参数提交 option 文件:
widdler run echo.wdl inputs.json -O options.json
qq免费 域名 如何备案?其实,所有 域名备案 的方式都是一样的。域名备案是我国...
服务器升级的三种常见原因 服务器作为决定企业网站命脉的基础设施,是连接用户与...
本文以WordPress应用镜像的服务器为例,介绍如何通过轻量应用服务器控制台创建服...
环境:SpringBoot2.3.9.RELEASE 依赖 dependency groupIdorg.springframework.bo...
一场疫情改写了银行业的规则。 街道被封闭,城市空无一人。那个肃杀的冬季已经离...
近日,记者从世外智慧获悉,该公司历时三年时间,在亚马逊云服务(AWS)之上打造...
作者 | 沉银 来源 | 阿里技术公众号 前言 DevOps追求更短的迭代周期、更高频的发...
洋葱学院在2013年末成立 原名洋葱数学 是一家K12在线教育公司。课程里没有真人老...
原生安全线上发布会: https://yqh.aliyun.com/live/openbigdata 7月16日,以“...
本文转载自微信公众号「程序新视界」,作者二师兄。转载本文请联系程序新视界公...