Commit Graph

54 Commits

Author SHA1 Message Date
Jana Radhakrishnan e77039e819 Merge pull request #26551 from cpuguy83/26548_fix_tasks
Do not look at `Attachment` tasks in /tasks
Upstream-commit: 3ae023cd2286188158f7a7ed356b63df63f00d09
Component: engine
2016-09-13 21:27:15 -07:00
Brian Goff 58f4fbdb5f Do not look at Attachment tasks in /tasks
Fixes #26548

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 15eee038c0b06b4f0ae1bf12bebbb9a1f5deec78
Component: engine
2016-09-13 20:44:06 -04:00
Jana Radhakrishnan 293cb24e33 Fix autostart for swarm scope connected containers
The swarm scope network connected containers with autostart enabled
there was a dependency problem with the cluster to be initialized before
we can autostart them. With the current container restart code happening
before cluster init, these containers were not getting autostarted
properly. Added a fix to delay the container start of those containers
which has atleast one swarm scope endpoint to until after the cluster is
initialized.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
Upstream-commit: c9fb551d60584ac4ad01561e2f56b7b7cc9483b9
Component: engine
2016-09-13 14:21:58 -07:00
Jana Radhakrishnan f0d30a4b26 Add support for docker run in swarm mode overlay
This PR adds support for running regular containers to be connected to
swarm mode multi-host network so that:
    - containers connected to the same network across the cluster can
      discover and connect to each other.
    - Get access to services(and their associated loadbalancers)
      connected to the same network

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
Upstream-commit: 99a98ccc14a9427be47c8006e130750710db0a16
Component: engine
2016-09-07 21:20:41 -07:00
Michael Crosby 45ddc4bfcb Add engine-api types to docker
This moves the types for the `engine-api` repo to the existing types
package.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Upstream-commit: 91e197d614547f0202e6ae9b8a24d88ee131d950
Component: engine
2016-09-07 11:05:58 -07:00
Justin Cormack a03ebc79ee Merge pull request #26200 from runcom/engine-api-vendor
vendor docker/engine-api@f9cef59044
Upstream-commit: 8ccac1ad4de898583113d036810da3a35a9be906
Component: engine
2016-09-01 10:51:34 +01:00
Antonio Murdaca 1965814a4e vendor docker/engine-api@f9cef59044
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 8f7a8c75ae251f1260299892c5de7c83224b110e
Component: engine
2016-08-31 22:39:13 +02:00
Aaron Lehmann b88197c265 cluster: Do not autodetect advertise address on join
On join, remote addresses are supposed to be detected by the manager
that receives the join request. However, the daemon is interfering with
this by automatically detecting an advertise address and specifying that
to the remote manager. Fix this so that an advertise address is only
specified while joining a cluster if one was given by the user.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: b1d2b088533187954d3b98ed5951ec2dbbb422e9
Component: engine
2016-08-31 11:44:32 -07:00
Tonis Tiigi 3034e8ce29 Print stacktrace on failing to leave cluster
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 166d24e464a746dfb3359ee18be90fbd8563515c
Component: engine
2016-08-30 14:17:32 -07:00
Brian Goff 6e19944380 Merge pull request #25890 from cpuguy83/fix_swarm_control_sock_path
Use daemon exec root for swarm control socket
Upstream-commit: edafc642b2b12d7428e72f922a2b44c3b62ffc31
Component: engine
2016-08-30 08:51:52 -04:00
Yong Tang 6b838755f5 Fix issue in API POST /services/(id or name)/update
This fix tries to address the issue raised in 26090 where
remote API `POST /services/(id or name)/update` cannot
use `name` to update. This is not consistent with the
documentation of the remote API.

This fix fixes this issue by performing a lookup with `getService`
in case `name` instead of `id` is used in API.

This fix adds an integration test to cover the changes.

This fix fixes 26090.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 80e3975117161ae4ce00cc34c7e2b70e45ee43c5
Component: engine
2016-08-29 21:13:53 -07:00
Vincent Demeester f0bf8347ee Merge pull request #25888 from vdemeester/listcontainerfornode-refactoring
Move ListContainersForNode into cluster package
Upstream-commit: 29232a5d8e621ad2503b205cb5068cc14b2ee42b
Component: engine
2016-08-25 19:10:18 +02:00
Vincent Demeester 86337f007e Move ListContainersForNode into cluster package
It makes little sense to have swarm related code into the daemon
package. This refactor the `daemon` and `cluster` package to remove
`ListContainersForNode` from the daemon.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 4833b3c961f84555c67418440405e470123919c6
Component: engine
2016-08-20 14:14:26 +02:00
Vincent Demeester 3ab26843b3 Make reachable/unreachable condition more readable
Introducing methods to make the intent of the condition clearer to the
eyes of the reader 👼.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 82a451bc94729b0dc2cc0ca94be60de70154f1c2
Component: engine
2016-08-19 22:49:58 +02:00
Brian Goff 6a8e5f14f6 Use daemon exec root for swarm control socket
Right now docker puts swarm's control socket into the docker root dir
(e.g. /var/lib/docker).
This can cause some nasty issues with path length being > 108
characters, especially in our CI environment.

Since we already have some other state going in the daemon's exec root
(libcontainerd and libnetwork), I think it makes sense to move the
control socket to this location, especially since there are other unix
sockets being created here by docker so it must always be at a path that
works.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 4d95ea319c4905827fb66fc8da09a6a8ac558004
Component: engine
2016-08-19 16:43:57 -04:00
Diogo Monica 0e5400a423 Add --force to node removal
Signed-off-by: Diogo Monica <diogo.monica@gmail.com>
Upstream-commit: a327c231b5c68c13b7dcde2fdc83b8e4cec59c43
Component: engine
2016-08-01 18:55:58 -07:00
Justin Cormack bced48a04a Merge pull request #25034 from thaJeztah/update-swarm-usage
Update usage of "Swarm" for consistency
Upstream-commit: c388a5bdfa922d85373cc8a77a08612ca4b67861
Component: engine
2016-07-29 01:01:00 +01:00
Aaron Lehmann 555a24da1d Remove join-tokens from the /info API
join-tokens are not needed for this endpoint, and should not be as part
of /info

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit d8f3b3f006629c5c1368eca96bcd5bda2a54acd7)
Upstream-commit: 96b2a6e548bc3abf0f0a505ee020d2fe1e8997de
Component: engine
2016-07-27 18:11:51 -07:00
Sebastiaan van Stijn aa7e6b8845 Update usage of "Swarm" for consistency
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: f0230049f0afd318217c60ebe486aab3b54538fd
Component: engine
2016-07-27 23:31:55 +02:00
Tibor Vass 154089229d Merge pull request #25042 from tiborvass/carry-24492
Carry 24492: Remove swarm inspect and use info instead
Upstream-commit: 9ee430fcf5bd8e2afc6896bb2e0d12c1226c56c2
Component: engine
2016-07-26 01:11:37 -07:00
Vincent Demeester eb900df556 Remove swarm inspect and use info instead
Remove the swarm inspect command and use docker info instead to display
swarm information if the current node is a manager.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: e6923f6d75c2bd1b22cc1229214ffceca3251cc6
Component: engine
2016-07-25 20:31:10 -07:00
Madhu Venugopal 4d19e2a5c0 improve error message when using ineligible network with service create
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 40c88b8c54fe4595f8bda5417ced3729eea5b16e
Component: engine
2016-07-25 08:31:22 -07:00
Aaron Lehmann 2150ea40b1 Split advertised address from listen address
There are currently problems with "swarm init" and "swarm join" when an
explicit --listen-addr flag is not provided. swarmkit defaults to
finding the IP address associated with the default route, and in cloud
setups this is often the wrong choice.

Introduce a notion of "advertised address", with the client flag
--advertise-addr, and the daemon flag --swarm-default-advertise-addr to
provide a default. The default listening address is now 0.0.0.0, but a
valid advertised address must be detected or specified.

If no explicit advertised address is specified, error out if there is
more than one usable candidate IP address on the system. This requires a
user to explicitly choose instead of letting swarmkit make the wrong
choice. For the purposes of this autodetection, we ignore certain
interfaces that are unlikely to be relevant (currently docker*).

The user is also required to choose a listen address on swarm init if
they specify an explicit advertise address that is a hostname or an IP
address that's not local to the system. This is a requirement for
overlay networking.

Also support specifying interface names to --listen-addr,
--advertise-addr, and the daemon flag --swarm-default-advertise-addr.
This will fail if the interface has multiple IP addresses (unless it has
a single IPv4 address and a single IPv6 address - then we resolve the
tie in favor of IPv4).

This change also exposes the node's externally-reachable address in
docker info, as requested by #24017.

Make corresponding API and CLI docs changes.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: a0ccd0d42fdb0dd2005f67604cb81a5a6b26787e
Component: engine
2016-07-24 09:23:07 -07:00
Yong Tang ce1e21d6ce Update the errNoManager() to conform to swarm join-token
In 24823, `swarm join` has been updated to take a `--token`
flag and flag `--manager` has been removed. Though in errNoManager()
the error message still use the old description.

This fix update the error message in errNoManager() and conforms
to the current available flags.

This fix is related to 24823.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 3d30155735d572376500729496de657459493213
Component: engine
2016-07-22 00:32:24 -07:00
Aaron Lehmann b141a44de0 Replace secrets with join tokens
Implement the proposal from
https://github.com/docker/docker/issues/24430#issuecomment-233100121

Removes acceptance policy and secret in favor of an automatically
generated join token that combines the secret, CA hash, and
manager/worker role into a single opaque string.

Adds a docker swarm join-token subcommand to inspect and rotate the
tokens.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 2cc5bd33eef038bf5721582e2410ba459bb656e9
Component: engine
2016-07-21 15:23:03 -07:00
Tonis Tiigi ffdb429522 Increase timeout for swarm requests
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 85b1fdf15ce2ad1b373748554d3aa218e2eb5a5f
Component: engine
2016-07-15 11:03:08 -07:00
Ralf Sippl 52fb31b62e Return an empty services list if no services are running
Signed-off-by: Ralf Sippl <ralf.sippl@gmail.com>
Upstream-commit: c8e4e95db9b0d3115435b8f0e94c78a2e0cb92d0
Component: engine
2016-07-12 11:41:04 +02:00
Madhu Venugopal f2aefa4f7f swarmkit expects network-id for as target
For any operation that involves netwoks (other than network create),
swarmkit expects the target as network-id. Service upate was using
network-name as the target and that caused the issue.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: b32cfb32a3f654f27bc9d4356b36c6a7e5e53b21
Component: engine
2016-07-08 18:00:41 -07:00
Vincent Demeester 786983bb63 Merge pull request #24323 from avsm/better-leave-grammar
Improve the warning messages when leaving a Swarm cluster
Upstream-commit: c70e432cee7ce2052a729f85da31420b6c01d72c
Component: engine
2016-07-06 12:00:20 +02:00
Alexander Morozov f3ff9e9f18 Merge pull request #24173 from vdemeester/tasks-filter-service-node-by-name
Allow service and node filter to be name in `tasks` subcommands 
Upstream-commit: db75aa029d1843b3fdabb16c5cd9e1b3a99f39b2
Component: engine
2016-07-05 12:16:57 -07:00
Anil Madhavapeddy 21a36cd129 Improve the warning messages when leaving a Swarm cluster
Signed-off-by: Anil Madhavapeddy <anil@docker.com>
Upstream-commit: 22a3d1fa209282e938ca16f31cce0dab4f35bf72
Component: engine
2016-07-05 09:14:23 +01:00
Otto Kekäläinen 0bdbf282f3 Fix spelling in comments, strings and documentation
Signed-off-by: Otto Kekäläinen <otto@seravo.fi>
Upstream-commit: 644a7426cc31c338fedb6574d2b88d1cc2f43a08
Component: engine
2016-07-03 20:58:11 +03:00
Tõnis Tiigi e32550579c Merge pull request #23584 from nishanttotla/private-images-swarm-services
Passing registry auth token for service create, update
Upstream-commit: 8fe6480c8a26f80fe174ae93e1b380bb7ec6083c
Component: engine
2016-06-30 17:18:59 -07:00
Nishant Totla 9f0a770513 Adding a flag to specify sending of registry auth
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
Upstream-commit: 538bac39d7fe93562922b89e9a294096be48fb59
Component: engine
2016-06-30 14:59:32 -07:00
Vincent Demeester a50f4824a7 Allow service and node filter to be name…
… on `docker node tasks` and `docker service tasks` commands.
This changes is mainly server-side (between engine api and
swarmkit). There is just a check in `api/client/service/tasks.go` to
handle the special *self* meaning.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: b0fc5a21f1138f48e0431a550c936e8908d72840
Component: engine
2016-06-30 15:09:03 +02:00
Alexander Morozov 29d2889a79 Merge pull request #23789 from tonistiigi/swarm-integration-tests
Update swarm integration tests and shutdown synchronization
Upstream-commit: 9162011680efa714788377651e51872bb852e2e3
Component: engine
2016-06-29 14:09:57 -07:00
Nishant Totla b75c9d3100 Passing registry auth token for service create and update
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
Upstream-commit: 93ec5cda55e78dbb683b59bde244a7984b323574
Component: engine
2016-06-28 13:53:01 -07:00
Tonis Tiigi 5c10897dd4 Fix race on clearing swarm nodes on stop
On stop there were multiple places that marked
`cluster.node` nil. Now stop waits for the node to
set itself nil.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 1a8a473017299c5e999d55d14634874826062fce
Component: engine
2016-06-24 13:57:02 -07:00
Brian Goff da85d118fb Merge pull request #23940 from allencloud/fix-err-msg
fix error message and typos in swarm cluster
Upstream-commit: 7ff546467de3fa3d1c1104e9f40c6d16742ebac0
Component: engine
2016-06-24 16:57:01 -04:00
allencloud f3ebf274bf fix error message and typos in swarm cluster
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: 39bc10c36d40677c11a800b4346c5cddec2b997d
Component: engine
2016-06-25 03:10:18 +08:00
Tonis Tiigi 009e2dd2e1 Add better error messages for unavailable swarm commands
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 803733120a1f9f080c6403f2a3717987393f1f0d
Component: engine
2016-06-24 10:14:57 -07:00
Tonis Tiigi 8c9dd4362c Unify swarm init and update options
Add api side validation and defaults for init and
join requests.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: fb3eb1c27ef5520571c599ead8a72b343748db39
Component: engine
2016-06-21 16:34:32 -07:00
Tonis Tiigi 20fc079713 Don’t try to restore swarm from incomplete state
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: ded1d9af38cb467dadab0521936174eef0d4bc9e
Component: engine
2016-06-18 19:43:47 -07:00
Arnaud Porterie 79ea0079e7 Merge pull request #23644 from tonistiigi/fix-leave-delete
Fix removing containers on leaving from pending state
Upstream-commit: f4de3f314e1e965056447d5ea6203ca4b66bb6e0
Component: engine
2016-06-17 01:40:45 +00:00
Tonis Tiigi dae11af952 Fix removing containers on leaving from pending state
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 826f6f07031abc4dea6f71ed69d33a4e0789ee11
Component: engine
2016-06-16 16:08:15 -07:00
Tonis Tiigi 10f6f936be Return membership status on join without timeout
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 1973cee0cd86da3c7b7002a3fed7af2557df538c
Component: engine
2016-06-16 15:27:08 -07:00
Tonis Tiigi e79dde3c67 Update daemon to new swarmkit
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: a83bba467a8bd24924b1a0cf55b954ac49937b5b
Component: engine
2016-06-16 15:06:27 -07:00
Victor Vieux 9bd6973edb fix docker swarm init/update --secret
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: 085895342c7f797f0eef7ec956438e33489f211f
Component: engine
2016-06-15 17:05:10 -07:00
Madhu Venugopal e306e601d2 Use service alias and configure container's --net-alias
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 07e39e9e7283a159efa18bc8f72cb2dc0e4f700f
Component: engine
2016-06-14 19:50:34 -07:00
Arnaud Porterie 955da7c9c3 Merge pull request #23524 from aboch/restore
Daemon to support network restore
Upstream-commit: 91197953d07843e34f02d6d2dc435cc4c43dfec1
Component: engine
2016-06-15 02:33:16 +00:00