Commit Graph

190 Commits

Author SHA1 Message Date
f98fac335f Do not overwrite container volumes from config
Fixes #819 Use same persistent volume when a container is restarted
Upstream-commit: 92cbb7cc80a63299b5670a9fcbb2d11789200696
Component: engine
2013-07-15 11:59:11 -09:00
6fdf5346ea Copy VolumesRW values when using --volumes-from
Fixes #1201
Upstream-commit: 5ae8c7a98592f83a31f3f45fc22728e45e95626c
Component: engine
2013-07-14 18:23:20 -09:00
e7310096d4 Merge pull request #1102 from dotcloud/1098-store_hostconfig_tmp
* Runtime: bind mounts are now preserved upon container restart
Upstream-commit: a909223ee2c062a26e533c1c7663fa113c942831
Component: engine
2013-07-12 05:04:10 -07:00
b293c53143 export portmapping in network.go
Upstream-commit: d918c7d9de6a2949d4010ec08f08b0182d159fe7
Component: engine
2013-07-10 14:09:35 +00:00
c69035fce1 Add support for UDP (closes #33)
API Changes
-----------

The port notation is extended to support "/udp" or "/tcp" at the *end*
of the specifier string (and defaults to tcp if "/tcp" or "/udp" are
missing)

`docker ps` now shows UDP ports as "frontend->backend/udp". Nothing
changes for TCP ports.

`docker inspect` now displays two sub-dictionaries: "Tcp" and "Udp",
under "PortMapping" in "NetworkSettings".

Theses changes stand true for the values returned by the HTTP API too.

This changeset will definitely break tools built upon the API (or upon
`docker inspect`). A less intrusive way to add UDP ports in `docker
inspect` would be to simply add "/udp" for UDP ports but it will still
break existing applications which tries to convert the whole field to an
integer. I believe that having two TCP/UDP sub-dictionaries is better
because it makes the whole thing more clear and more easy to parse right
away (i.e: you don't have to check the format of the string, split it
and convert the right part to an integer)

Code Changes
------------

Significant changes in network.go:

- A second PortAllocator is instantiated for the UDP range;
- PortMapper maintains separate mapping for TCP and UDP;
- The extPorts array in NetworkInterface is now an array of Nat objects
  (so we can know on which protocol a given port was mapped when
  NetworkInterface.Release() is called);
- TCP proxying on localhost has been moved away in network_proxy.go.

localhost proxy code rewrite in network_proxy.go:

We have to proxy the traffic between localhost:frontend-port and
container:backend-port because Netfilter doesn't work properly on the
loopback interface and DNAT iptable rules aren't applied there.

- Goroutines in the TCP proxying code are now explicitly stopped when
  the proxy is stopped;
- UDP connection tracking using a map (more infos in [1]);
- Support for IPv6 (to be more accurate, the code is transparent to the
  Go net package, so you can use, tcp/tcp4/tcp6/udp/udp4/udp6);
- Single Proxy interface for both UDP and TCP proxying;
- Full test suite.

[1] https://github.com/dotcloud/docker/issues/33#issuecomment-20010400
Upstream-commit: fac0d87d00ada08309ea3b82cae69beeef637c89
Component: engine
2013-07-09 17:42:35 -07:00
d8be5aafec rebase master
Upstream-commit: bf7d6cbb4af2e7176c66d2ad74515699b7898fea
Component: engine
2013-07-08 13:26:29 +00:00
1c71d0a65e Implement several golint suggestions, including:
* Removing type declarations where they're inferred
* Changing Url -> URL, Id -> ID in names
* Fixing snake-case names
Upstream-commit: 19121c16d9514b391ce8f15aeff3c47c1ea5a841
Component: engine
2013-07-03 14:36:04 -07:00
8f5746f4d9 Mutex style change.
For structs protected by a single mutex, embed the mutex for more
concise usage.

Also use a sync.Mutex directly, rather than a pointer, to avoid the
need for initialization (because a Mutex's zero-value is valid and
ready to be used).
Upstream-commit: 1cf9c80e976fb60b4d5d489cd1c4c9959bcc4f7f
Component: engine
2013-07-02 15:53:08 -07:00
805a9b9625 never remove the file and try to load it in start
Upstream-commit: 3042f11666a38ea6b1da206de372bf85463db945
Component: engine
2013-07-02 18:02:16 +00:00
c6f9d1d947 change file location
Upstream-commit: 27a137ccab5990721298cf58aee588ca9b4200ff
Component: engine
2013-07-02 17:02:42 +00:00
be9588204f store hostConfig to /tmp while container is running
Upstream-commit: 06b53e3fc7aca2b3dae32edab08c7662d3e9e7e8
Component: engine
2013-07-02 12:19:25 +00:00
2e70c0f0f0 Add Entrypoint to builder and container config
By setting an entrypoint in the Dockerfile this
allows one to run an image and only pass arguments.
Upstream-commit: b16ff9f8598d30823f687d100d351cad11823e77
Component: engine
2013-07-01 05:34:27 -09:00
5327febeeb - Fix a few bugs in external mount-bind integration
Upstream-commit: 67239957c9e863f16a6d147d88dd2fae00c3770f
Component: engine
2013-06-26 15:10:38 -07:00
1c5ea40b1c * Runtime: better integration of external bind-mounts (run -b) into the volume subsystem (run -v)
Upstream-commit: d4e62101abca637b5bc057ec13e73d9ce65d6161
Component: engine
2013-06-26 15:08:07 -07:00
a223caa9e6 + Runtime: mount volumes from a host directory with 'docker run -b'
Upstream-commit: 4fdf11b2e62bf7d785a958afd4fc5b8cfc32f621
Component: engine
2013-06-26 15:07:31 -07:00
965a3d343a Merge pull request #970 from titanous/go1.1-unreachable
Remove code unreachable using Go 1.1
Upstream-commit: 63e8a4ac7441ac4af5ca8fdf05f44e9a8a7fc623
Component: engine
2013-06-21 10:44:40 -07:00
f8fc85e9e7 mark command as optional for docker run
Upstream-commit: 66910a76027d3e37b6a96c0bd1106cfd5d27ba40
Component: engine
2013-06-21 11:06:41 +03:00
9cf4a66364 Remove code unreachable using Go 1.1
Upstream-commit: 50b70eeb6830040db73c8b2b389d881a3200de8d
Component: engine
2013-06-20 23:19:44 -04:00
730a1370b2 Merge branch 'master' into 22-add_sizes_images_and_containers-feature
Upstream-commit: ddf5a1940fdbe2efa7136e7f5f26c2adc1a59b3e
Component: engine
2013-06-14 10:05:06 +00:00
d307a95564 Merge pull request #804 from dotcloud/no_stdout_stale-fix
*Runtime: Fix stale command when stdout is not allocated
Upstream-commit: 697282d6ada16b53c013515117038f8f391e87f7
Component: engine
2013-06-13 04:22:29 -07:00
b9f9359558 Fix typo
Upstream-commit: 7169212683ba02e2da4c80792702c5210f1c16ea
Component: engine
2013-06-10 11:08:40 -07:00
fafb25034a bump to master again
Upstream-commit: bf63cb904592e1ca73aa3990c08ea0b752fec14d
Component: engine
2013-06-05 16:01:36 +00:00
8f6d6bc6c7 Fix nil pointer on some situatuion
Upstream-commit: 63e80384ea753c74046c2a4c3f64229c359f466f
Component: engine
2013-06-04 14:35:32 -07:00
82ddfc6a07 Put back panic for go1.0.3 compatibility
Upstream-commit: 7ef9833dbb299ebf796092a6921127ea77d38337
Component: engine
2013-06-04 14:26:40 -07:00
4747c5b99f linted names
Upstream-commit: fd224ee590dc9f003f6507b529a9f47cceb02c44
Component: engine
2013-06-04 18:00:22 +00:00
9c0086fb7d drop/omit
Upstream-commit: 86ada2fa5d00820288df8a59eca3deef83f4aeb6
Component: engine
2013-06-04 13:51:12 +00:00
51d3c4635e go vet
Upstream-commit: b515a5a9ec5792c67be5fe8476df96903f43df71
Component: engine
2013-06-04 13:24:58 +00:00
6f2fd272da Fix stale command with stdout is not allocated
Upstream-commit: 0ca88443985e7a944106ed4ceaf877a97f1ca2ec
Component: engine
2013-06-03 17:39:29 -07:00
a42c91a1f7 bump to master
Upstream-commit: 3afdd82e426c70c919d902eec5ec50d488c837fa
Component: engine
2013-05-30 23:38:40 +00:00
c479ea1a4b Finish resize implementation client and server
Upstream-commit: 88ef309a940bcbb6f85a750372b8fdbc6569c3a7
Component: engine
2013-05-24 14:44:16 -07:00
767f8e7e9d Add resize endpoint to api
Upstream-commit: 70d2123efda0e92760b96b03ce27cb4f1fb61cb3
Component: engine
2013-05-23 19:33:28 -07:00
8c3121bf04 bump to master
Upstream-commit: 6fce89e60b71ee2306d66003697b6c746c456250
Component: engine
2013-05-22 13:41:29 +00:00
bc6fad489c Create a subpackage for utils
Upstream-commit: 2e69e1727b4d5698a90c24c5800eecd5401dc319
Component: engine
2013-05-14 22:37:35 +00:00
e0c6a8e8bb add sizes in images and containers
Upstream-commit: a91b710961b74341543a81b9d16f66d65b1907f1
Component: engine
2013-05-13 15:14:20 +02:00
3980cc1280 Merge branch 'master' of github.com:dotcloud/docker into 471-cpu-limit
Upstream-commit: 6f3e868a7b8f239334d06b2385b776ce7ae5614f
Component: engine
2013-05-10 14:44:50 -07:00
8ac133e820 if -c is not specified, do not set cpu.shares (instead of using the default value of 1024)
Upstream-commit: e36752e03347bf46177d8ee810cdd5a019321dc9
Component: engine
2013-05-07 11:43:45 -07:00
443030ccf1 implement "-c" option to allocate a number of CPU shares to a container
Upstream-commit: efd9becb78c82ddef07efb7e76e0100d7a712281
Component: engine
2013-05-07 11:16:30 -07:00
44910e43b1 update to master
Upstream-commit: 10c0e990371e065d4fc1c9b680f03a46e5bacc5e
Component: engine
2013-05-07 19:23:50 +02:00
5993a0f74b Make sure the destination directory exists when using docker insert
Upstream-commit: 9db4972a70c2fb0921f984d67f816b81ea687a11
Component: engine
2013-05-06 16:00:30 -07:00
e91e3c75d3 Add insert command in order to insert external files within an image
Upstream-commit: 97514831128a7bc7bc6a2f740275bf6336ede999
Component: engine
2013-05-06 16:00:30 -07:00
b659f35e7b bump to 0.2.2
Upstream-commit: 6f9b574f25e8fca5e4a28a35b71e4755a424bed8
Component: engine
2013-05-06 11:53:00 +02:00
f515a96fa4 Merge remote-tracking branch 'origin/registry-update'
+ Registry: Add the new registry support
Upstream-commit: da01dd3d56a86f9a1256d3f80c0a4cac5d14bedb
Component: engine
2013-05-05 07:13:25 -07:00
915420b8dd Fixed checksum computing. Ensure checksum is computed when image metadata is loaded from disk. Fixed docker push workflow. Moved hash computing to utils
Upstream-commit: be7560890644759c0ddd229afed208c537f075d7
Component: engine
2013-05-06 10:56:10 -07:00
6164f7758f Prepend hash method to the image checksum
Upstream-commit: ea3374bcb0b7a78ccbaeb9cd927fbaf259a5cf29
Component: engine
2013-05-06 10:54:55 -07:00
d652d6f892 Fixed checksum representation
Upstream-commit: 630d358384194489e834d86cb4ae2f6dcc6a0ee5
Component: engine
2013-05-06 10:54:50 -07:00
5a3c9e63e6 Implemented checksum computation on image creation (necessary for new push primitive)
Upstream-commit: 048fd671ef107aa14f02e6fe2db4a4100c23d37f
Component: engine
2013-05-06 10:52:42 -07:00
2c79fdbc57 up to date with master
Upstream-commit: 4f0bda2dd5cfe382f7fd9cfb9f5522f42377673b
Component: engine
2013-05-02 18:36:23 +02:00
cc5f724fb6 Fix the graph.Create prototype
Upstream-commit: 897cc573f051f1d88be0fde05946e66d0c86c43e
Component: engine
2013-05-02 09:23:29 -07:00
2217f9531a Comply to the new graph.Create() prototype
Upstream-commit: b0459adc271b20cde11da6a74cc5a71bab23f2ac
Component: engine
2013-05-02 09:14:23 -07:00
4f88abdf1f Implement the data volume removal
Upstream-commit: 3edd14b8c2eb13f45834f5d9306a579b256f9348
Component: engine
2013-05-02 09:14:23 -07:00