日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用 docker-compose 一鍵啟停 Cromwell

本文主要介紹如何使用鏡像市場中的免費鏡像,通過docker-compose 快速啟動一個 Cromwell server。

背景

Cromwell server 的啟動需要以下組件配合:

  • 啟動 MySQL 的 docker 容器作為 Crowmell 的持久化數(shù)據(jù)庫,包括配置用戶名,密碼等;

  • 填寫 Cromwell 配置文件,包括 BCS 后端配置及數(shù)據(jù)庫等配置;

  • 使用 Cromwell 的 JAR 包,啟動 server。

實際上 Cromwell 除了發(fā)布 jar 包,也會發(fā)布對應(yīng)的 docker 鏡像,我們可以考慮使用 docker-compose來簡化以上步驟。docker-compose 是 Docker 官方的開源項目,其定位是定義和運行多個 Docker 容器的應(yīng)用(Defining and running multi-container Docker applications)。

使用docker-compose 可以將容器化的 Cromwell 和 MySQL兩個 service 拉起,作為一個應(yīng)用來運行。再配合腳本來簡化配置,可以將 Cromwell 的服務(wù)做成一鍵啟停。

開通 ECS 作為 Crowmell server

首先使用 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]

第一次配置與啟動服務(wù)

初次使用,需要做一些初始配置,可以使用下面的命令完成一鍵初始化與啟動:

./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 默認運行時參數(shù),實例類型;

  • --image: Cromwell 默認運行時參數(shù),鏡像ID;執(zhí)行完以上命令后,會根據(jù) Crowmell 配置文件模板生成配置文件,并通過 docker-compose 啟動 Cromwell server,并在后臺運行。

服務(wù)啟動后,就可以通過鏡像中的命令行工具 widdler 執(zhí)行工作流的提交:

cd /home/cromwell/cromwell/ 
widdler run echo.wdl inputs.json -o bcs_workflow_tag:test_echo

停止服務(wù)

使用下面的命令可以一鍵停止服務(wù):

./cromwell-server.sh stop

再次啟動服務(wù)

在已經(jīng)完成配置的情況下,使用下面的命令,可以完成服務(wù)啟動:

./cromwell-server.sh start

檢查服務(wù)狀態(tài)

啟動服務(wù)后可以通過下面的命令檢查服務(wù)狀態(tài):

./cromwell-server.sh status

如果server已經(jīng)啟動,則會看到下面的輸出:

checking cromwell server status.....
{"cromwell":"48-613cea9-SNAP"} is running!

查看 Cromwell server 日志

./cromwell-server.sh logs

重新配置并啟動服務(wù)

如果需要修改配置,在服務(wù)停止的情況下,再次使用 init 命令可以完成新配置重新啟動:

./cromwell-server.sh init --id=LTAI8xxxxx --key=vVGZVE8qUNjxxxxxxxx --root=oss://gtx-wgs-demo/cromwell/

使用option文件設(shè)置默認運行時參數(shù)

在 Crowmell 的配置文件中,可以設(shè)置每個 backend 的默認運行時參數(shù) default-runtime-attibutes,也可以在提交工作流時通過 option 覆蓋原有設(shè)置。

所以如果您在提交工作流時用到了數(shù)據(jù)盤、NAS等,都可以在 option 文件中設(shè)置:

{
    "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)參數(shù)提交 option 文件:

widdler run echo.wdl inputs.json -O options.json