Commit Graph

62 Commits

Author SHA1 Message Date
1a8f320266 Allow to set daemon and server configurations in a file.
Read configuration after flags making this the priority:

1- Apply configuration from file.
2- Apply configuration from flags.

Reload configuration when a signal is received, USR2 in Linux:

- Reload router if the debug configuration changes.
- Reload daemon labels.
- Reload cluster discovery.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 677a6b3506107468ed8c00331991afd9176fa0b9
Component: engine
2016-01-14 16:44:37 -05:00
264e25998d Move some validators from opts to runconfig/opts.
These validators are only used by runconfig.Parse() or some other part of the
client, so move them into the client-side package.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 0007f5a85935b2edcb08eb2d7e736e4db59157a9
Component: engine
2016-01-04 14:35:36 -05:00
d319ce34b8 Move runconfig blkiodev options and parsing into runconfig/opts package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: f015c29193c1afefff907ed65cbfb876e36263fa
Component: engine
2015-12-22 18:20:21 -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
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
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
4738f86f62 Merge pull request #18682 from calavera/replace_units_package
Replace pkg/units with docker/go-units.
Upstream-commit: b44b5bbc8ba48f50343602a21e7d44c017c1e23d
Component: engine
2015-12-16 10:48:59 -08:00
3d517a11e5 Replace pkg/units with docker/go-units.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 4fef42ba206ac90346e6e0fe25bead3f77dc4b0f
Component: engine
2015-12-16 12:26:49 -05:00
9393471e47 Move ParseDockerDaemonHost to opts/ package.
This function was only being used from a single place opts/opts.go. This
change moves it from a incohesive package (parsers) to the single place it
is used.

Also made a bunch of the helper methods private because they are not used
by any external modules.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 9b9959105499248ab6cdbfde2277ed1bd83233e3
Component: engine
2015-12-15 20:53:17 -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
1a0735060a Add support for blkio.weight_device
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 0fbfa1449d917ee0778266139d6035fb0782f7c2
Component: engine
2015-11-11 23:06:36 +08:00
c53c22b70c Merge pull request #17779 from calavera/fix_dns_regression
Use an empty slice as default value for DNS, DNSSearch and DNSOptions.
Upstream-commit: 62b484411e851542cdc05ef36fb287c2245ec70c
Component: engine
2015-11-09 18:07:07 -05:00
0345dce058 Use an empty slice as default value for DNS, DNSSearch and DNSOptions
So we don't print those <no value> in the client and we don't fail
executing inspect templates with API field names.

Make sure those fields are initialized as empty slices when
a container is loaded from disk and their values are nil.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: f1a74a89f89affcfbe311e89aa752b3d551e0340
Component: engine
2015-11-09 12:46:48 -05:00
55ab290410 Windows [TP4] localhost mitigation
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: eb2acb8f0e58a0007434341e9e011010594b288e
Component: engine
2015-11-06 13:52:59 -08:00
27d55a1112 Merge pull request #16433 from Microsoft/10662-volumes5
Windows: [TP4] Add volume support
Upstream-commit: e74cf8acad799aff39bf1b8ceffdef471aa0d242
Component: engine
2015-10-23 18:43:07 -04:00
1489d6cd3f Merge pull request #15780 from mountkin/build-multi-tags
Add ability to add multiple tags with docker build
Upstream-commit: 448398c2a8a41b6589dd7deb59fdc889e78db223
Component: engine
2015-10-23 13:50:35 -07:00
a4eeeb73b3 Add ability to add multiple tags with docker build
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
Upstream-commit: c2eb37f9aeb6215293483e02613514e49011cf2c
Component: engine
2015-10-24 00:59:56 +08:00
f7f7ce4926 Windows: Add volume support
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: a7e686a779523100a092acb2683b849126953931
Component: engine
2015-10-22 10:42:53 -07:00
f833d205f0 Make default tls host work
Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: fbb01b816288c5cf3eb79358c035072766b6e0f0
Component: engine
2015-10-19 21:17:37 +08:00
bb94a5ee85 Remove used param on ParseHost
The first param on opts.ParseHost() wasn't being used for anything.

Once we get rid of that param we can then also clean-up some code
that calls ParseHost() because the param that was passed in wasn't
being used for anything else.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: ba973f2d74c150154390aed1a5aed8fb5d0673b8
Component: engine
2015-10-11 20:45:17 -07:00
4e6b402919 Default the tcp port to 2376 if tls is on, and 2375 if not
Refactor so that the Host flag validation doesn't destroy the user's input,
and then post process the flags when we know the TLS options

Signed-off-by: Sven Dowideit <SvenDowideit@home.org.au>
Upstream-commit: 50f0906007bdec83dd23b6ae5216769ab65bbf59
Component: engine
2015-10-09 17:48:03 -07:00
6900c89d83 Revert environment regexp from 13694
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 7335544fd062de71454a9cd45ff664e2407206e6
Component: engine
2015-09-28 20:26:20 +02:00
28aab5a3bf opts/opts.go: fix typo
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 185544a4fede739bfd85633f18bf71a6f3deafd9
Component: engine
2015-09-14 14:48:09 +08:00
5a287b0f3a Change ParseTCPAddr to use tcp://127.0.0.0:2375 format as default consistently
Signed-off-by: Sven Dowideit <SvenDowideit@home.org.au>
Upstream-commit: 3d510f15da32a98a22f84a0f1afa250cc277488d
Component: engine
2015-08-29 11:23:51 +00:00
a8d6119113 Finish linting opts and trust package.
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 0bd016b1c31f807169019d10a496144c34698431
Component: engine
2015-08-27 17:36:11 +02:00
bfe1bbc7d2 Add volume API/CLI
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: b3b7eb2723461b1eb4be692f4bced0ae8ea9cb58
Component: engine
2015-08-26 13:37:52 -04:00
fdb06e387e Add mode check for device
This fixes two problems:
1. docker run --device /dev/sda:rw ubuntu bash doesn't work
2. --device /dev/zero:/dev/noro:ro doesn't show clear error message,
but fail when writing to cgroup file.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 429423624c61b38efeaeda95792077a0da65c4ef
Component: engine
2015-08-24 17:57:12 +08:00
a8c00ae391 Change return value for ValidateMountMode
1. rename it from ValidateMountMode to ValidMountMode
Because it's a function simply check mount mode is valid or not.
2. remove the rw check return value
It's not supposed to be combined into this function, and we already
have a function for that check.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: c99ed5ae5d0a9167ead73a798b02600ad40651f2
Component: engine
2015-08-24 17:28:19 +08:00
8120b4d8fe Change all docker -d to docker daemon
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 81cc8ebc93c20537d5fab4c016a3774f58b3e483
Component: engine
2015-08-10 20:48:08 +08:00
869b9fcdec Remove unused functions
Signed-off-by: Antonio Murdaca <runcom@linux.com>
Upstream-commit: 0e69318b27e06d25e1d02736ab8c598547d8113a
Component: engine
2015-07-25 19:54:05 +02:00
12234c67d4 cli: new daemon command and new cli package
This patch creates a new cli package that allows to combine both client
and daemon commands (there is only one daemon command: docker daemon).

The `-d` and `--daemon` top-level flags are deprecated and a special
message is added to prompt the user to use `docker daemon`.

Providing top-level daemon-specific flags for client commands result
in an error message prompting the user to use `docker daemon`.

This patch does not break any old but correct usages.

This also makes `-d` and `--daemon` flags, as well as the `daemon`
command illegal in client-only binaries.

Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 96ce3a194aab2807fdd638825b9ea7cb9ba55c36
Component: engine
2015-07-23 19:44:46 -04:00
22ed49846c Add test coverage to opts and refactor
- Refactor opts.ValidatePath and add an opts.ValidateDevice
  ValidePath will now accept : containerPath:mode, hostPath:containerPath:mode
  and hostPath:containerPath.
  ValidateDevice will have the same behavior as current.

- Refactor opts.ValidateEnv, opts.ParseEnvFile
  Environment variables will now be validated with the following
  definition :
  > Environment variables set by the user must have a name consisting
  > solely of alphabetics, numerics, and underscores - the first of
  > which must not be numeric.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: dfc6c04fa3f7dcb0e78e9dd5e8e4dd285b98546d
Component: engine
2015-07-12 10:33:30 +02:00
21f31995a1 Minor doc edit to add clarity around the --volume path format
Also add a comment to the ValidatePath func so devs/reviewers
know exactly what its looking for.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 3fcf53db920de9d9111a86bd0eda90a059885754
Component: engine
2015-06-05 15:11:42 -07:00
8d306cf8a5 Add syslog-address log-opt
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: e8c88d253337776a6075c9db69140ce2c5014622
Component: engine
2015-05-29 00:42:11 +02:00
60d5f903de Allow links to be specified with only the name if this matches the alias
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: c6e6223ed735b4ff6a15f5d5716376d765f60b09
Component: engine
2015-05-11 21:50:47 +02:00
0a78638a6e Add log opts flag to pass in logging options
Signed-off-by: wlan0 <sidharthamn@gmail.com>
Upstream-commit: dca9e02b15a3757272c90ec4cf0cc2b052a25fe3
Component: engine
2015-05-04 14:39:48 -07:00
c1ee29b6e9 Windows: Change default listener to HTTP
Signed-off-by: jhowardmsft <jhoward@microsoft.com>
Upstream-commit: cbf9a64cb5f69ce07598646ac26be247c7967cbb
Component: engine
2015-04-30 19:49:45 -07:00
fdf9a8d629 Remove job from container_inspect
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 4b9fe9c298c8778855c1d14e978c791496dd7c42
Component: engine
2015-04-23 00:58:13 +02:00
0221549820 Cleanup redundant else statements find via golint #11602
Signed-off-by: George MacRorie <gmacr31@gmail.com>
Upstream-commit: 664ef0cbe2113e8307135e656cc6db9199f8268e
Component: engine
2015-03-23 20:40:29 +00:00
a759954739 Restrict domain name to 255 characters
Signed-off-by: Tomáš Hrčka <thrcka@redhat.com>

Docker-DCO-1.1-Signed-off-by: Jessie Frazelle <princess@docker.com> (github: jfrazelle)
Upstream-commit: b2f05c220721d5ef9a31fc259e3f6c2c057ab4ab
Component: engine
2015-03-09 10:14:56 -07:00
36f1975bfd Merge pull request #9437 from cpuguy83/set_rlimits_in_container
Allow setting ulimits for containers
Upstream-commit: df7ba57f5f962b1a2d2e267a89ae465541a92371
Component: engine
2015-03-04 04:00:17 -08:00
b540023f69 Add validate the input mac address on docker run command
Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: 2ba0fbb0ae1701b638a4bb956187dd878385dc80
Component: engine
2015-02-27 07:27:12 -08:00
2e0ec2c817 Allow setting ulimits for containers
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 3f39050637d454e9ee8075153a917c8bfccb5bae
Component: engine
2015-02-25 19:37:43 -05:00
43629f56fe Add more helpful error message for -add-host
Fixes: #10655

As noted in the issue, bad format was being returned even if the format
was appropriate, but the IP was invalid.  This adds a better error
message for when the IP address fails validation.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: 1ce9fa1c601cc6f09f9a39df535515aec355e95e
Component: engine
2015-02-09 12:45:50 -05:00
c5cc380178 Allow IPv6 addresses in ExtraHosts option settings
Since the separator for extra host settings (for /etc/hosts in a
container) is a ":", the code that handles extra hosts needed to only
split on the first ":" to preserve IPv6 addresses which are passed via
the command line settings as well as stored in the JSON container
config.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
Upstream-commit: fdfa2057863e4fd32d477855f8c8f289c0898293
Component: engine
2015-02-04 10:20:28 -05:00
5d2fe159f4 Docker run -e FOO should erase FOO if FOO isn't set in client env
See #10141 for more info, but the main point of this is to make sure
that if you do "docker run -e FOO ..." that FOO from the current env
is passed into the container.  This means that if there's a value, its
set.  But it also means that if FOO isn't set then it should be unset in
the container too - even if it has to remove it from the env.  So,
   unset HOSTNAME
   docker run -e HOSTNAME busybox env
should _NOT_ show HOSTNAME in the list at all

Closes #10141

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 9ab73260f8e4662e7321b257c636928892f023cf
Component: engine
2015-01-19 08:00:32 -08:00
5aa04a56fb Deprecating ResolveRepositoryName
Passing RepositoryInfo to ResolveAuthConfig, pullRepository, and pushRepository

Moving --registry-mirror configuration to registry config

Created resolve_repository job

Repo names with 'index.docker.io' or 'docker.io' are now synonymous with omitting an index name.

Adding test for RepositoryInfo

Adding tests for opts.StringSetOpts and registry.ValidateMirror

Fixing search term use of repoInfo

Adding integration tests for registry mirror configuration

Normalizing LookupImage image name to match LocalName parsing rules

Normalizing repository LocalName to avoid multiple references to an official image

Removing errorOut use in tests

Removing TODO comment

gofmt changes

golint comments cleanup.  renaming RegistryOptions => registry.Options, and RegistryServiceConfig => registry.ServiceConfig

Splitting out builtins.Registry and registry.NewService calls

Stray whitespace cleanup

Moving integration tests for Mirrors and InsecureRegistries into TestNewIndexInfo unit test

Factoring out ValidateRepositoryName from NewRepositoryInfo

Removing unused IndexServerURL

Allowing json marshaling of ServiceConfig.  Exposing ServiceConfig in /info

Switching to CamelCase for json marshaling

PR cleanup; removing 'Is' prefix from boolean members.  Removing unneeded json tags.

Removing non-cleanup related fix for 'localhost:[port]' in splitReposName

Merge fixes for gh9735

Fixing integration test

Reapplying #9754

Adding comment on config.IndexConfigs use from isSecureIndex

Remove unused error return value from isSecureIndex

Signed-off-by: Don Kjer <don.kjer@gmail.com>

Adding back comment in isSecureIndex

Signed-off-by: Don Kjer <don.kjer@gmail.com>
Upstream-commit: 568f86eb186731b907b659e4ec64bda21c2fe31d
Component: engine
2015-01-08 20:14:58 +00:00
35fec2c425 add daemon labels
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: 2fe36baa0a39840e64f1dc585af41b5ee0ed6df5
Component: engine
2014-11-20 19:23:58 +00:00
cd6fd83f37 Fix input volume path check on Windows
used path package instead of path/filepath so that --volumes and
--device parameters to always validate paths as unix paths instead of
OS-dependent path convention

Signed-off-by: Ahmet Alp Balkan <ahmetb@microsoft.com>
Upstream-commit: 5a38680bd2283c87848d2e7f62a14f0261291c7c
Component: engine
2014-11-14 18:20:54 -08:00
604739ede9 Allow extra lines in /etc/hosts
This adds a --add-host host:ip flag which appends lines to /etc/hosts.  This is needed in places where you want the container to get a different name resolution than it would through DNS.  This was submitted before as #5525, closed, and now I am re-opening.  It has come up 2 or 3 times in the last couple days.

Signed-off-by: Tim Hockin <thockin@google.com>
Upstream-commit: 68e48b65a64df10fc797cbaa89d6caa2188eadc9
Component: engine
2014-09-16 23:38:23 +00:00