fewbytes / rubber-docker Goto Github PK
View Code? Open in Web Editor NEWA workshop on Linux containers: Rebuild Docker from Scratch
License: MIT License
A workshop on Linux containers: Rebuild Docker from Scratch
License: MIT License
create workshop presentation with workshop steps
To run rd.py
on the vagrant box, I had to specify the path:
export PYTHONPATH=/usr/lib/python2.7/dist-packages:/workshop/rubber-docker
Not sure what the best way to configure this via the Vagrantfile
replace reference to execl to execv
Hi!
Your docker lab is excellent. Some of us work with VMware, hence prefer to use a VMware virtual machine image rather than Amazon for the lab exercises. I committed changes containing packer files to generate VMware images and will submit a PR in a few minutes for your consideration. I verified that the script changes do not affect generation of AMIs, which still work as before.
I hope that once this PR is accepted it will make rubber-docker more accessible to the VMware community including folks at VMware itself.
Thanks again for the great work.
Robert
to allow auto-complete, and document existing functions (we can extract a sphinx doc from it)
It's currently a little confusing and taking too long
Explain why are we doing fork() & exec(), explain that you get two processes which continue from the same instruction
Consider changing 03_pivot_root to use a loopback filesystem (extract the image to a new loopback ext4 fs) so that pivot_root doesn't fail - this confuses people
wdyt @natict ?
rawgit is dying :/
We should probably switch to GitHub Pages
The chroot / pivot_root link broken in prep.md
and regenerate the docs...
Image should include:
docker export busybox > busybox.tar.gz
)git pull && python setup.py install
rubber-docker, we need the latest version of the python module installedcgroup_enable=memory swapaccount=1
to kernel argumentsThe following links are broken:
example:
now you check pid workspace by ...
this works because ...
instead of just checking if it exists... :)
thanks @es
Catch the exception, and print an explanation (instead of dumping stacktrace)
are they still on?
e.g. cleanup cgroups after container shutdown
with python syntax highlighting and completion. perhaps dophiles?
got two issues when tried to build the packer image on eu-central-1:
amazon-ebs: Process: 4204 ExecStart=/usr/bin/docker daemon -H fd:// --storage-driver overlay (code=exited, status=125)
the docker service fails to start with overlay storage driveramazon-ebs: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) amazon-ebs: E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
failed to apt-get updateFixing this will allow attendees to skip downloading breakout.py
from github
e.g. "raise your hand if you see this <> error"
The main README.md mentions that there are two slides to go through, the docs/ dir (in what order?), and then the levels. Please make a list with the reading order for all of the files.
One of the workshop's prerequisites is familiarity with the os module.
Add slide(s) with usage example for: path.join, makedirs, unshare, symlink, fork, waitpid, execv, etc.
Create prep docs for people to read as a replacement for the prep talk. The docs should include:
topics that needs to be covered in intro docs:
i suggest putting the docs as markdown in a "prep-docs" directory so people can consume directly from the repo
Just a suggestion: I did not realize that you guys think of them as exercises. I thought it's just to test your work, but not suggested to do them to "advance". Might be worth using a clear nomenclature so everyone is on the same page.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.