an [abandoned] attempt to slice out the docker/docker/pkg package
Find a file
Alexander Larsson 6b97c80b4d Make /proc writable, but not /proc/sys and /proc/sysrq-trigger
Some applications want to write to /proc. For instance:

docker run -it centos groupadd foo

Gives: groupadd: failure while writing changes to /etc/group

And strace reveals why:

open("/proc/self/task/13/attr/fscreate", O_RDWR) = -1 EROFS (Read-only file system)

I've looked at what other systems do, and systemd-nspawn makes /proc read-write
and /proc/sys readonly, while lxc allows "proc:mixed" which does the same,
plus it makes /proc/sysrq-trigger also readonly.

The later seems like a prudent idea, so we follows lxc proc:mixed.
Additionally we make /proc/irq and /proc/bus, as these seem to let
you control various hardware things.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
2014-05-19 20:46:05 +02:00
apparmor Apply apparmor before restrictions 2014-05-01 19:09:12 -07:00
beam Use int64 instead of int 2014-05-11 06:23:53 -07:00
collections Refactoring collections/orderedintset and benchmarks for it 2014-05-14 06:04:12 +04:00
dockerscript Fix various MAINTAINERS format inconsistencies 2014-04-30 11:22:11 -06:00
graphdb FIXES #5398: pkg/graphdb build only dependent on cgo tag 2014-04-30 11:57:10 -06:00
iptables Revert "Support hairpin NAT without going through docker server" 2014-04-09 11:55:08 +00:00
label Update process labels to be set at create not start 2014-04-29 03:40:05 -07:00
libcontainer Make /proc writable, but not /proc/sys and /proc/sysrq-trigger 2014-05-19 20:46:05 +02:00
listenbuffer adding configuration for timeout and disable it by default 2014-03-17 15:12:02 -07:00
mflag use tabwriter to display usage in mflag 2014-05-06 21:31:21 +00:00
mount Merge pull request #3841 from alexlarsson/separate-base-fs 2014-01-31 11:49:14 -08:00
namesgenerator Fix typo in names-generator 2014-04-04 00:57:43 +02:00
netlink Fix libcontainer network support on rhel6 2014-04-09 15:44:18 +02:00
networkfs pkg: networkfs: etchosts: fixed tests 2014-05-07 00:42:22 +10:00
proxy Remove verbose logging for non errors 2014-02-17 13:31:13 -08:00
selinux Fix SELinux errors caused by multi-threading 2014-04-29 03:40:05 -07:00
signal Fix various MAINTAINERS format inconsistencies 2014-04-30 11:22:11 -06:00
symlink Fixes 5370 infinite/maxLoopCount loop for relative symlinks 2014-05-16 01:03:11 +02:00
sysinfo Move cgroups package into libcontainer 2014-05-14 15:21:44 -07:00
system Integrate new structure into docker's native driver 2014-04-30 18:20:01 -07:00
systemd Add systemd.SdBooted() 2014-03-27 22:44:31 +01:00
term Use BSD raw mode on darwin. Fixes nano, tmux and others 2014-03-13 11:11:02 -07:00
units Move duration and size to units pkg 2014-05-12 17:05:07 -07:00
user Use type switch instead of reflection 2014-01-31 20:15:24 -07:00
version Update Version to not use string anymore 2014-04-01 15:46:52 -07:00
README.md Add README to pkg 2013-12-23 23:12:19 +00:00

pkg/ is a collection of utility packages used by the Docker project without being specific to its internals.

Utility packages are kept separate from the docker core codebase to keep it as small and concise as possible. If some utilities grow larger and their APIs stabilize, they may be moved to their own repository under the Docker organization, to facilitate re-use by other projects. However that is not the priority.

The directory pkg is named after the same directory in the camlistore project. Since Brad is a core Go maintainer, we thought it made sense to copy his methods for organizing Go code :) Thanks Brad!

Because utility packages are small and neatly separated from the rest of the codebase, they are a good place to start for aspiring maintainers and contributors. Get in touch if you want to help maintain them!