Files
ma/nextflow/plugins/nf-k8s/README.md
2026-04-29 23:01:54 +02:00

86 lines
1.5 KiB
Markdown

# Kubernetes plugin for Nextflow
## Summary
The Kubernetes plugin provides native Kubernetes execution capability for Nextflow pipelines. It supports pod management, volume mounting, and resource allocation.
## Get Started
To use this plugin, add it to your `nextflow.config`:
```groovy
plugins {
id 'nf-k8s'
}
```
Configure the Kubernetes executor:
```groovy
process.executor = 'k8s'
k8s {
namespace = 'default'
serviceAccount = 'nextflow'
storageClaimName = 'nextflow-pvc'
}
```
The plugin automatically detects the Kubernetes configuration from:
- In-cluster configuration (when running inside a pod)
- `~/.kube/config` file
- `KUBECONFIG` environment variable
## Examples
### Basic Kubernetes Configuration
```groovy
plugins {
id 'nf-k8s'
}
process.executor = 'k8s'
k8s {
namespace = 'nextflow'
serviceAccount = 'nextflow-sa'
storageClaimName = 'nf-workdir-pvc'
storageMountPath = '/workspace'
}
workDir = '/workspace/work'
```
### Pod Configuration
```groovy
k8s {
namespace = 'nextflow'
pod = [
[volumeClaim: 'data-pvc', mountPath: '/data'],
[secret: 'aws-credentials', mountPath: '/root/.aws']
]
}
```
### Resource Requests
```groovy
process {
executor = 'k8s'
cpus = 2
memory = '4 GB'
pod = [[label: 'app', value: 'nextflow']]
}
```
## Resources
- [Kubernetes Executor Documentation](https://nextflow.io/docs/latest/kubernetes.html)
## License
[Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0)