FreeBSD Jails
Nobody has claimed this yet.
- Dominant language
- Perl
- Stars
- 737
- Forks
- 214
- PR merge metrics
- No merged PRs in 30d
Description
User story
As a FreeBSD user
I would like to have jails supported by Rex
so I can manage my environment more efficiently.
Describe the solution you'd like
Jails is a FreeBSD-specific lightweight virtualization technology that allow creation of containers separated from the rest of the host system. Jails are mature, stable and have very little overhead. They are often mentioned as an alternative to Docker on FreeBSD, even though they don't offer the orchestration.
What I'd like to have is an implementation that would allow me to create a new jail, start it (or stop or restart, one-time or persistently) and run some commands inside. I currently manage it with bash scripts and heavy use of jexec, however this is getting bothersome rather quickly.
Describe alternatives you've considered
The closest thing to Jails on Linux is LXC. Since Jails are in FreeBSD's base OS there aren't really any alternatives I've heard of, however there is some software that simplifies working with them, like iocage (ZFS-specific AFAIK) and ezjail.
Additional context
The implementation would likely be similar to LXC. Jail creation is done by adding config to /etc/jail.conf and creation of a filesystem in a separate jail directory, start / stop is done by service which is already implemented in Rex.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing Rex's existing service support and the requested FreeBSD jail setup around /etc/jail.conf, the jail directory, and jexec. Done would cover creating, starting, stopping, and restarting a jail, running commands inside it, and supporting both one-time and persistent operation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- perl
- Domain
- devops, infrastructure, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100