Categories: None [Edit]
runshare
# ruby unshare (runshare)
This tool allows to unshare Linux namespaces.
The implementation is similar to the unshare(1) tool.
## Installation
Add this line to your application's Gemfile:
```ruby
gem 'runshare'
```
And then execute:
$ bundle
Or install it yourself as:
$ gem install runshare
## Usage
> require "runshare"
> RUnshare::unshare
For example:
cat > test.rb
require "runshare"
pid = RUnshare::unshare(
:clone_newpid => true,
:clone_newns => true,
:clone_newcgroup => true,
:clone_newipc => true,
:clone_newuts => true,
:clone_newnet => true,
:clone_newtime => true,
:fork => true,
:mount_proc => "/proc",
# docker export $(docker create hello-world) | tar -xf - -C rootfs
:root => "/tmp/rootfs"
)
if pid == 0
# child
puts "--- #{Process.pid}"
if system("/hello") != true
raise "bad"
end
puts "--- done"
else
# parent
puts "-- unshare=#{pid}, pid=#{Process.pid}"
puts "-- exit=#{Process.waitpid(pid)}"
end
^D
sudo ruby -I ./lib ./test.rb
## Quick start
$ rake compile && echo 'require "runshare"; RUnshare::unshare(:clone_newuts => true)' | irb
install -c tmp/x86_64-linux/runshare/2.4.10/runshare.so lib/runshare/runshare.so
cp tmp/x86_64-linux/runshare/2.4.10/runshare.so tmp/x86_64-linux/stage/lib/runshare/runshare.so
Switch to inspect mode.
require "runshare"; RUnshare::unshare
## Ruby <2.5
If your app is single threaded and you are observing:
eval:1: warning: pthread_create failed for timer: Invalid argument, scheduling broken
Just ignore it with some degree of bravity. You also
can silence it by setting:
$VERBOSE = nil
## Development
After checking out the repo, run `bin/setup` to install dependencies.
Then, run `rake spec` to run the tests.
You can also run `bin/console` for an interactive prompt that will allow you to experiment.
To install t...
Total
Ranking: 172,614 of 180,671
Downloads: 1,668
Daily
Ranking: 75,401 of 180,660
Downloads: 3
Downloads Trends
Ranking Trends
Num of Versions Trends
Popular Versions (Major)
Popular Versions (Major.Minor)
Depended by
Rank | Downloads | Name |
---|
Depends on
Rank | Downloads | Name |
---|---|---|
1 | 2,101,349,740 | bundler |
16 | 861,639,035 | rake |
24 | 771,889,602 | rspec |
1,699 | 11,946,520 | rake-compiler |
Owners
# | Gravatar | Handle |
---|---|---|
1 | sitano |