Skip to content

docs: add apptainer sandbox guide - #160

Merged
neubig merged 7 commits into
mainfrom
openhands/apptainer-workspace-891
Jan 4, 2026
Merged

neubig merged 7 commits into
mainfrom
openhands/apptainer-workspace-891

Conversation

@neubig

@neubig neubig commented Dec 8, 2025

Copy link
Copy Markdown
Member

Adds comprehensive documentation for using Apptainer-based sandboxed workspaces.

Related to OpenHands/software-agent-sdk#892

This guide demonstrates:

  • When to use Apptainer vs Docker
  • Configuration options for ApptainerWorkspace
  • Example usage with pre-built images
  • Building from base images
  • Using existing SIF files
  • Troubleshooting common issues

Apptainer is ideal for HPC and shared computing environments where Docker is not available or root access is restricted.

Add comprehensive documentation for ApptainerWorkspace, showing how to
run agent servers in rootless Apptainer containers for HPC and shared
computing environments.

Includes:
- When to use Apptainer vs Docker
- Configuration options (pre-built image, base image, SIF file)
- Key features and differences from Docker
- Troubleshooting guide

Relates to OpenHands/software-agent-sdk#892

neubig commented Dec 8, 2025

Copy link
Copy Markdown
Member Author

Thanks for the review @xingyaoww!

Regarding testing: The example follows the same pattern as the tested Docker workspace example. The code structure has been reviewed and:

  • All CI checks pass in SDK#892 (except check-examples which needs this docs PR merged)
  • The implementation follows the established RemoteWorkspace pattern
  • Unit tests verify the API surface and class structure

Full integration testing with Apptainer would require Apptainer installation which isn't feasible in all CI environments (similar to how we don't run full Docker tests in CI for every PR).

I've also renamed the branch to openhands/apptainer-workspace-891 to match the SDK PR branch name, which will allow the check-examples workflow to find this documentation.

@xingyaoww

Copy link
Copy Markdown
Contributor

@neubig Looks like we are actually able to setup-apptainer in CI 👀

https://github.com/marketplace/actions/setup-apptainer

@neubig
neubig marked this pull request as ready for review December 19, 2025 01:11
@neubig
neubig marked this pull request as draft December 19, 2025 18:57
The example file was renamed in the SDK repo to 07_convo_with_apptainer_sandboxed_server.py
since example 06 already exists.

Co-authored-by: openhands <openhands@all-hands.dev>
@neubig
neubig marked this pull request as ready for review December 24, 2025 11:34
Comment thread sdk/guides/agent-server/apptainer-sandbox.mdx
Co-authored-by: openhands <openhands@all-hands.dev>
Comment thread sdk/guides/agent-server/apptainer-sandbox.mdx Outdated

@enyst enyst left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! Format/sync/deployment lgtm. I’m not familiar with Apptainer, if the text looks good to you, let’s get this in!

@neubig
neubig merged commit fe2e872 into main Jan 4, 2026
2 checks passed
@neubig
neubig deleted the openhands/apptainer-workspace-891 branch January 4, 2026 18:44

This branch was successfully deployed

1 active deployment
staging 1626b3c3 Deployed Jan 3, 2026 by mintlify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants