Commit Graph

140 Commits

Author SHA1 Message Date
4edafc3bc1 *: purge dockerinit from source code
dockerinit has been around for a very long time. It was originally used
as a way for us to do configuration for LXC containers once the
container had started. LXC is no longer supported, and /.dockerinit has
been dead code for quite a while. This removes all code and references
in code to dockerinit.

Signed-off-by: Aleksa Sarai <asarai@suse.com>
Upstream-commit: 4357ed4a7363a1032edf93cf03232953c805184f
Component: engine
2016-01-26 23:47:02 +11:00
dda7a5fe00 Merge pull request #19154 from hqhq/hq_verify_cgroupparent
Verify cgroup-parent name for systemd cgroup
Upstream-commit: 141a301dca9ff00259157116f479e1c8405a9c14
Component: engine
2016-01-26 11:44:31 +01:00
3ec10b17fa Allow network configuration via daemon config file.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: c539be88332815aeb2d466a973443127c1c676a6
Component: engine
2016-01-25 18:54:56 -05:00
06b6f08b9c Verify cgroup-parent name for systemd cgroup
Fixes: #17126

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 5ce5a8e966ea41b7f40922dab3fbaf1ac85971bd
Component: engine
2016-01-22 21:17:23 -05:00
1e5e2cad46 Reuse *sysinfo.SysInfo instance in verification
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Upstream-commit: 22ebeede3010e30a0b74c58900f7ed08f7489f93
Component: engine
2016-01-20 17:08:10 -08:00
b6d75433b3 Merge pull request #19311 from estesp/no-oom-warning-when-cant-even
Only warn on OOMKill disable if the feature is actually requested
Upstream-commit: 9c30492e9e5cf8da5771af87d2b0a83a627ff2b4
Component: engine
2016-01-13 13:43:37 -08:00
5e9b25b836 Only warn on OOMKill disable if the feature is actually requested
Instead of warning the caller who is disabling OOM killer that the
feature isn't available, only warn if they are trying to **enable** OOM
killer and it can't be done.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: 5a707d94d605fdf2a35d5a7033d1971b49745352
Component: engine
2016-01-13 11:53:44 -08:00
f9405712ff Merge pull request #19254 from aboch/v6b
Account docker0 IPv6 address on daemon start
Upstream-commit: 7ea65da7efe317d9dabc07557c8b2d196d20d815
Component: engine
2016-01-13 09:48:41 -08:00
eed3a9a5f1 Do not fail if not support OomKillDisable
Fixes: #19278

The issue seems existed since we add support for OomKillDisable,
OomKillDisable support should not be hard request, we just
discard it if not support and move on.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 7b616d4743c94f8be3eb59f8c23ed7a19fb2786d
Component: engine
2016-01-13 09:07:40 +08:00
6c7b14647b Support --link for user-defined networks
This brings in the container-local alias functionality for containers
connected to u ser-defined networks.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: e221b8a3d64c13178e156fc3ece5e9894dac1603
Component: engine
2016-01-12 13:38:48 -08:00
410757a181 Change OomKillDisable to be pointer
It's like `MemorySwappiness`, the default value has specific
meaning (default false means enable oom kill).

We need to change it to pointer so we can update it after
container is created.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
(cherry picked from commit 9c2ea42329179c589f5a8991ccf0253eb10fc897)

Conflicts:
	vendor/src/github.com/docker/engine-api/types/container/host_config.go
Upstream-commit: f4a687334b1d026c84809fd005e1a82225d1c86f
Component: engine
2016-01-12 13:19:17 -05:00
4a64d99bbc Merge pull request #19187 from estesp/lets-do-this
User namespaces: graduate from experimental
Upstream-commit: c72be040bb893e49bb12baf7e688c88b635d8ea1
Component: engine
2016-01-12 09:34:19 -08:00
06015504e0 Account dcoker0 IPv6 address on daemon start
- In case --fixed-cidr-v6 is specified and docker0 bridge already
  has a global scope IPv6 address belonging to that v6 network
  (likely from a previous daemon instance), to maintain consistency
  with what done for the docker0 IPv4 address, daemon has to pass it
  down to libnetwork in the IPAMConfig as network gateway to make
  sure that the address is not given to some container.

Signed-off-by: Alessandro Boch <aboch@docker.com>
Upstream-commit: cfa3682ca4e04f4311bc9b1c6186069c9d4f5a90
Component: engine
2016-01-11 23:47:44 -08:00
664cab4653 Properly report conflicting namespace options when using userns
This prevents strange errors and clarifies which namespace options are
incompatible with user namespaces (at this time).

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: d5743a3a5c0864686a300b1fe5f58b89a36bb2f6
Component: engine
2016-01-11 20:50:22 -05:00
bc47f91463 Merge pull request #16032 from cpuguy83/remove_sqlite_dep
Build names and links at runtime - no more sqlite
Upstream-commit: 9a23569ecf48e07b6c6e7c1d734b54c7ce4c666a
Component: engine
2016-01-11 10:59:49 -08:00
d8dc8b7d33 Docker changes for libnetwork vendoring..
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
Upstream-commit: 64a6dc355815261ac438b12a262e3cda7c9181df
Component: engine
2016-01-08 14:13:55 -08:00
898ac34e33 Move userns support out of experimental into master
Adds the `--userns-remap` flag to the master build

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: 557c7cb888ad8e2f1f378c9cf34e5fba14551904
Component: engine
2016-01-08 15:06:22 -05:00
20a5900d4d Build names and links at runtime
Don't rely on sqlite db for name registration and linking.
Instead register names and links when the daemon starts to an in-memory
store.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 0f9f99500c40f2a46682967ca358cd2346fd5e13
Component: engine
2016-01-07 14:10:42 -05:00
4ec2693c9e Modify import paths to point to the new engine-api package.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 907407d0b2e5863f0e1b40b93a356bbf03c7b9fb
Component: engine
2016-01-06 19:48:59 -05:00
f688b73835 Use ImageBuildOptions in builder.
dockerfile.Config is almost redundant with ImageBuildOptions.
Unify the two so that the latter can be removed. This also
helps build's API endpoint code to be less dependent on package
dockerfile.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
Upstream-commit: 5190794f1d85d5406611eb69c270df62ac1cdc7f
Component: engine
2016-01-05 10:09:34 -08:00
c43ba74b61 Move the runconfig.Parse() function into the runconfig/opts package.
The parse.go file is used almost exclusively in the client. The few small
functions that are used outside of the client could easily be copied out
when the client is extracted, allowing this runconfig/opts package to
move to the client.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 2b7ad47bd2649c3f164e8b57b31fae313045c8f4
Component: engine
2016-01-04 12:06:29 -05:00
40fe4ff4d5 Properly initialize IpamConf structure in initBridgeDriver
Signed-off-by: Alessandro Boch <aboch@docker.com>
Upstream-commit: aa97eee1a3cf5c932bdd31535b1e82ca53347ca5
Component: engine
2015-12-30 15:44:50 -08:00
2526161bde Remove the graph driver from the daemon, move it into the layer store.
Support restoreCustomImage for windows with a new interface to extract
the graph driver from the LayerStore.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: f5916b10ae02c7db83052a97205ac345a3d96300
Component: engine
2015-12-28 12:55:48 -05:00
f88ae3fe07 Merge pull request #18860 from dnephin/remove_migrate_if_downlevel
Remove migrateIfDownlevel and aufs migration from docker pre-0.7
Upstream-commit: 1105caa7f10ae1fa775670256fa7d4ca9d44e4dd
Component: engine
2015-12-23 00:08:36 +01:00
b064975176 Remove migrateIfDownlevel and aufs migration from docker pre-0.7
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 0673361ef6a0439b79239efb000574ae991b84f7
Component: engine
2015-12-22 16:45:42 -05:00
027f002cb3 Move Config and HostConfig from runconfig to types/container.
- Make the API client library completely standalone.
- Move windows partition isolation detection to the client, so the
  driver doesn't use external types.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 7ac4232e70fe7cf7318333cd0890db7f95663079
Component: engine
2015-12-22 13:34:30 -05:00
3b25d376dd Move blkiodev package to types.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 0aab83d996f645a2e1e28b1e2c03b530c13a5fc1
Component: engine
2015-12-22 13:31:46 -05:00
885ff722b9 Move OomKillDisable to resource
1. It's a cgroup api, fit the general defination that we take
cgroup options as kind of resource options.
2. It's common usage and very helpful as explained here:
https://github.com/docker/docker/pull/18270#issuecomment-160561316
3. It's already in `Resource` struct in
daemon/execdriver/driver_unix.go

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 8498ed73f7b35da807b5d5dcf532114c7b3df52d
Component: engine
2015-12-22 16:08:04 +08:00
a04e1f9592 Add support for blkio read/write iops device
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 843084b08b521a70baf9284ec4e23e941ab38367
Component: engine
2015-12-21 09:14:49 +08:00
59f83ab1fb Merge pull request #18586 from tonistiigi/tag-reference-squashed
Improve reference validation
Upstream-commit: dc81c2503163025ec5835cf11c53164a437bad6c
Component: engine
2015-12-16 23:08:02 +01:00
020b74d545 Add own reference package wrapper
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 2655954c2dd9d92c2394b04e4262543174c4c038
Component: engine
2015-12-16 11:58:52 -08:00
f8a7e2bc3a Move ParseLink and validators into runconfig.parse where they are used.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 233a4fc33ccaf279cc5a0ad1842ef5b053cccde7
Component: engine
2015-12-16 14:22:54 -05:00
49f615806b tfix: modify internal variable name to be lower-case
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 38797ca61b6d88fe71615108897b1f7d1767f449
Component: engine
2015-12-15 09:50:16 +08:00
e8e575a14a Merge pull request #18270 from hqhq/hq_refactor_verify_config
Move verify container resources to a separate function
Upstream-commit: 51ffc088a55728b124045e297be216a83506a438
Component: engine
2015-12-12 12:47:19 +01:00
2cee7ddb46 Rename Daemon.Get to Daemon.GetContainer.
This is more aligned with `Daemon.GetImage` and less confusing.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: d7d512bb927023b76c3c01f54a3655ee7c341637
Component: engine
2015-12-11 12:39:28 -05:00
4f0c8269f1 Move verify container resources to a separate function
Make the code easy to view.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: c6bfb54ac19ec8d2822ab4dae6123e705a299d73
Component: engine
2015-12-11 10:59:29 +08:00
8a7da51391 Check minimum kernel memory limit to be 4M
Fixes: #18405

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 2347f98003af34dd1cfd290bf0f2cc7e6ae07b03
Component: engine
2015-12-09 14:26:41 +08:00
f20b52f333 don't try to use default route MTU as bridge MTU
Signed-off-by: Patrick Hemmer <patrick.hemmer@gmail.com>
Upstream-commit: fd9d7c02fcc8edd73d056f56f17e5cfe1760495b
Component: engine
2015-12-07 17:32:51 -05:00
ab6c9709f6 Merge pull request #17989 from jfrazelle/initial-seccomp-support
Phase 1: Initial seccomp support
Upstream-commit: 87a614ed55f2a9076d8150f846b0d27fe60095a8
Component: engine
2015-12-05 08:33:58 -08:00
37ebaba7a1 Fix init layer chown of existing dir ownership
This solves a bug where /etc may have pre-existing permissions from
build time, but init layer setup (reworked for user namespaces) was
assuming root ownership.  Adds a test as well to catch this situation in
the future.

Minor fix to wrong ordering of chown/close on files created during the
same initlayer setup.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: 23b771782ab7236ce5024ac5773a6ded9a2af753
Component: engine
2015-12-04 12:18:05 -05:00
7be0f9667b Add support for blkio read/write bps device
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 3f15a055e5c50d0f08d4c3e7cd9618d537b84f29
Component: engine
2015-12-04 09:26:03 +08:00
4f88ba8722 inital seccomp support
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
Upstream-commit: 6707f4b9b638b367a1dde6f8684a5b9817a882f0
Component: engine
2015-12-03 16:30:44 -08:00
d010c48ce4 Move Container to its own package.
So other packages don't need to import the daemon package when they
want to use this struct.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 6bb0d1816acd8d4f7a542a6aac047da2b874f476
Component: engine
2015-12-03 17:39:49 +01:00
a7b1157339 Merge pull request #16277 from runcom/add-oom-score-adj
Add OomScoreAdj
Upstream-commit: 8f1f53f735e278bb23bb41d9387a75786d7ec1dc
Component: engine
2015-12-02 11:49:51 -08:00
96c08be56e Merge pull request #18285 from hqhq/hq_fix_swappiness
Set default MemorySwappiness when adapt
Upstream-commit: f411b101acdeefa731dc9e03dc75fbbd6ba816c6
Component: engine
2015-12-02 14:25:08 -05:00
22eaa04494 Move defaultSHMSize in daemon pkg
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 2969abc6c55a9ab126b90d0af4b67860b4103f3f
Component: engine
2015-12-02 10:28:10 +01:00
b52058194c Set default MemorySwappiness when adapt
It makes the inspect result consistent between cli and REST api
when MemorySwappiness is not set.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 4089b4e4400d44f7c0a5b15065c70228f10ebf0c
Component: engine
2015-12-02 10:53:52 +08:00
3ffe69d3e4 Move security opt adaption to adapt function
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 1415f55cc09230e19ca3110af7174baa3f5569ba
Component: engine
2015-12-02 08:26:11 +08:00
ec12c4920e fix shm size handling
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: ef1d410b0270fa7309d76aded34113396def7fb2
Component: engine
2015-12-01 16:29:40 +01:00
ddf1fb3149 Add OomScoreAdj to configure container oom killer preferences
libcontainer v0.0.4 introduces setting `/proc/self/oom_score_adj` to
better tune oom killing preferences for container process. This patch
simply integrates OomScoreAdj libcontainer's config option and adjust
the cli with this new option.

Signed-off-by: Antonio Murdaca <amurdaca@redhat.com>
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: d3af7f283d8dc0be67be48e14cd740fbeb690f7a
Component: engine
2015-11-30 11:19:04 +01:00