Configure bioemu for WES deployment

- Update main.nf: Harbor container image, PVC mount paths, remove containerOptions and stageInMode
- Update nextflow.config: Add k8s/k8s_gpu profiles, minimal config for WES injection
- Update params.json: Correct paths for eureka PVC
- Update Dockerfile.wes: CUDA base image for GPU support
This commit is contained in:
2026-03-26 14:11:57 +01:00
parent ca4ceae21e
commit f776745722
4 changed files with 120 additions and 107 deletions

31
main.nf
View File

@@ -1,23 +1,22 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl=2
// Define parameters
params.complex_name = "hgh_mab1" // Default complex name
params.protein1_fasta = "/mnt/OmicNAS/private/old/olamide/bioemu/input/complexes/hgh.fasta"
params.protein2_fasta = "/mnt/OmicNAS/private/old/olamide/bioemu/input/complexes/mab1.fasta"
params.exp_dG = -13.1 // kcal/mol from experimental database
params.outdir = "/mnt/OmicNAS/private/old/olamide/bioemu/output"
params.cache_dir = "/mnt/OmicNAS/private/old/olamide/bioemu/cache"
// Define parameters — PVC mount paths for k8s execution
params.protein1_fasta = '/omic/eureka/bioemu/input/trp_cage.fasta'
params.protein2_fasta = '/omic/eureka/bioemu/input/villin_headpiece.fasta'
params.complex_name = "protein_complex"
params.exp_dG = -10.0 // kcal/mol (placeholder experimental value)
params.outdir = '/omic/eureka/bioemu/output'
params.cache_dir = '/tmp/bioemu_cache'
// Parameters for structure generation and analysis
params.num_samples = 20
params.num_samples = 10
params.batch_size = 5
params.temperature = 300
params.n_clusters = 5
process GENERATE_STRUCTURE {
container 'bioemu:latest'
containerOptions '--rm --gpus all -v /mnt:/mnt'
container 'harbor.cluster.omic.ai/omic/bioemu:latest'
publishDir "${params.outdir}/${params.complex_name}/${protein_id}", mode: 'copy'
input:
@@ -31,6 +30,9 @@ process GENERATE_STRUCTURE {
# Extract sequence from FASTA
SEQUENCE=\$(grep -v ">" ${fasta} | tr -d '\\n')
# Create cache dir
mkdir -p ${params.cache_dir}
# Run BioEmu
python3 -m bioemu.sample \\
--sequence "\${SEQUENCE}" \\
@@ -46,8 +48,7 @@ process GENERATE_STRUCTURE {
}
process CALCULATE_BINDING {
container 'bioemu:latest'
containerOptions '--rm --gpus all -v /mnt:/mnt -v /data:/data'
container 'harbor.cluster.omic.ai/omic/bioemu:latest'
publishDir "${params.outdir}/${params.complex_name}/analysis", mode: 'copy'
input:
@@ -63,8 +64,8 @@ process CALCULATE_BINDING {
script:
"""
# Run binding energy calculation with the existing script
python3 /data/olamide/fresh-bioemu2/scripts/calculate_binding.py \\
# Run binding energy calculation
python3 /opt/bioemu/scripts/calculate_binding.py \\
--protein1_topology ${protein1_topology} \\
--protein1_samples ${protein1_samples} \\
--protein2_topology ${protein2_topology} \\
@@ -119,7 +120,7 @@ workflow {
.map { it -> tuple(it[1], it[2]) }
.first()
// Calculate binding energy (direct script reference)
// Calculate binding energy
CALCULATE_BINDING(
protein1_files[0], // protein1_topology.pdb
protein1_files[1], // protein1_samples.xtc