Diptanu Choudhury
6c179d1695
Merge pull request #2045 from hashicorp/b-docker-create-container
...
Returning a container if it exists instead of creating a new one
2016-11-29 17:55:33 -08:00
Diptanu Choudhury
50452520bf
Returning a container if it exists instead of creating a new one
2016-11-29 17:52:19 -08:00
Alex Dadgar
712e18707b
add debugging
2016-11-29 14:29:37 -08:00
Diptanu Choudhury
bff172939b
Fixes an issue with purging containers with the same name Nomad is trying to start
2016-11-28 17:37:22 -08:00
Alex Dadgar
4f2a6eae8b
Merge pull request #2029 from gliptak/dockerauth1
...
Log when lookup in docker.auth.config fails
2016-11-28 12:45:19 -08:00
Alex Dadgar
8a641a8672
Make container exist errors non-retriable
...
This change makes it so that the task runner does not retry container
exists errors and also a sleep is added on the local retry.
2016-11-25 19:22:58 -08:00
Gábor Lipták
6268112e86
Log when lookup in docker.auth.config fails
2016-11-23 18:43:58 -05:00
Dmitry Galinsky
3ec7ebac9c
Add network_aliases for docker driver
2016-11-16 11:16:07 +03:00
Alex Dadgar
eea35626b7
Changes the relative path from joining against the alloc dir to the
...
task's directory.
This PR changes the behavior when given a relative host path when
mounting docker containers. Prior to this, the behavior was to mount by
joining against the alloc/ directory. This PR changes it to be against
the task/ directory.
2016-11-10 14:47:54 -08:00
Alex Dadgar
691e09f863
remove debug
2016-11-08 14:21:37 -08:00
Alex Dadgar
9f2c0cb0c2
Interpolate everything that is a string
2016-11-08 14:20:51 -08:00
Alex Dadgar
742e11ddb4
Fix env vars relating to secretdir
2016-11-08 12:28:43 -08:00
Alex Dadgar
a9e9b61216
Merge pull request #1938 from hashicorp/b-docker-reattach
...
Fix Docker container creation and task runner updating
2016-11-04 17:14:40 -07:00
Michael Schurter
b1a01a9a0f
Add userns_mode docker config option
...
Fixes #1904
2016-11-04 16:53:56 -07:00
Alex Dadgar
0cbd0188b1
Move the wait result to bottom of methods
2016-11-04 14:58:55 -07:00
Alex Dadgar
4741a4b129
Create container much more robust
2016-11-04 14:39:56 -07:00
Alex Dadgar
b08f4e0b97
More recoverable errors
2016-11-02 10:36:04 -07:00
Alex Dadgar
6618f7a03d
Fix passing of recoverable error from docker pull
2016-10-28 17:49:46 -07:00
Alex Dadgar
5ddf646615
Don't delete docker images in test
2016-10-27 12:31:53 -07:00
Michael Schurter
d3835283ca
Expand env vars in docker volume paths
...
Fixes #1876
2016-10-27 11:02:38 -07:00
Alex Dadgar
150b678a6b
Merge pull request #1806 from hashicorp/f-docker4mac-fixes
...
A couple fixes to make Docker For Mac work
2016-10-27 09:29:40 -07:00
Alex Dadgar
3c4a27e72b
Fix panic
2016-10-25 17:27:13 -07:00
Alex Dadgar
8e07c2750e
Merge pull request #1839 from hashicorp/f-signal-constraints
...
Signal creates an auto-constraints
2016-10-25 11:09:33 -07:00
Michael Schurter
4f45aece4b
Fingerprint rkt volume support and make periodic
...
Fix rkt docs and custom volume mounting
2016-10-25 09:46:49 -07:00
Michael Schurter
5d358c7eba
Allow mounting alloc-dir-relative paths in docker
2016-10-25 09:46:49 -07:00
Michael Schurter
49ed6da0ad
Enable rkt and docker volume mounting by default
2016-10-25 09:46:49 -07:00
Alex Dadgar
0070178741
Thread through whether DeriveToken error is recoverable or not
2016-10-22 18:08:30 -07:00
Alex Dadgar
41b5679015
Advertise signalling abilities
2016-10-19 15:06:23 -07:00
Alex Dadgar
ae1ea0e5ba
Actually mount the local directory
2016-10-18 15:57:12 -07:00
Alex Dadgar
36cfe6e89e
Large refactor of task runner and Vault token rehandling
2016-10-18 11:24:20 -07:00
Alex Dadgar
53eeec9bc1
Merge pull request #1801 from hashicorp/f-signals
...
Consul-template signal change mode
2016-10-18 11:23:47 -07:00
Evan Phoenix
8864a506aa
Disable the syslog logging system on Docker For Mac
...
The syslog logging system depends on the ability for a unix socket to be
accessed by the docker daemon in the $TMPDIR of the host. This doesn't
work on Docker For Mac because the docker daemon is running inside a VM,
and while /tmp is accessible, the filesystem used to share them doesn't
support unix socket files, and thus it doesn't work.
2016-10-12 17:07:21 -07:00
Alex Dadgar
eec1a154ec
add plugin kill
2016-10-12 13:24:22 -07:00
Alex Dadgar
86238387e7
Send Executor Ctx separately
2016-10-12 11:35:29 -07:00
Alex Dadgar
280af8f4d1
Docker + Qemu
2016-10-10 11:47:04 -07:00
Michael Schurter
f0d04bd798
Add comment and fix log line code style
2016-10-07 11:58:21 -07:00
Michael Schurter
523dbfcc81
Remove VolumesFrom feature
...
Since containers are named with alloc ids it's difficult to use safely.
Not to mention task scheduling ordering issues could break it as well.
2016-10-07 11:58:13 -07:00
Michael Schurter
f777faba00
Add comments to config key constants
2016-10-03 16:04:33 -07:00
Michael Schurter
0d66b8aef0
Only launch syslog server if container uses syslog
2016-10-03 15:22:10 -07:00
Michael Schurter
44219cc083
Put docker volume support behind conf flag
...
Also add tests and fix bug with logging driver configuration.
2016-10-03 15:02:50 -07:00
Jan-Hendrik Lendholt
a26a501120
Fixed a bug when giving in another logging driver than syslog.
...
Before this commit, if the Logging config did not contain a logging option "syslog-address", it would definitely insert this option.
If then, you decide to take another logdriver than syslog, docker would fail because it received a wrong log option for the selected driver.
Now, nomad will only insert the syslog address in a hard way if there are no logging options at all - this way it keeps the default nomad settings.
2016-10-03 15:02:50 -07:00
Jan-Hendrik Lendholt
6c7cbe5fcb
Added support to mount host folders into container. For example if you don't want to bake certificates into the container, you can mount them into the directory directly.
...
Furthermore, I added support for volumes-from.
Currently, there is no support to move the data from one container to another, hence: If a container spawns on another host, it is very likely, that the data will not be found.
2016-10-03 15:02:49 -07:00
Jan-Hendrik Lendholt
ac5cde4641
Added logging options support for docker driver
2016-10-03 15:02:49 -07:00
Alex Dadgar
6702a29071
Vault token threaded
2016-09-14 13:30:01 -07:00
Alex Dadgar
eef786dd9d
Secret dir materialized in alloc/task directory
2016-09-02 12:44:05 -07:00
Alex Dadgar
2c8dd8bbd3
Revert "Introduce a Secret/ directory"
2016-09-01 17:23:15 -07:00
Alex Dadgar
0626eb9619
environment variables
2016-08-31 13:56:11 -07:00
Kenjiro Nakayama
b06c6d9311
driver.docker: tiny: debug messages output task name instead of image name
2016-08-21 19:51:32 +09:00
Diptanu Choudhury
ab7f8847c1
changing error statement
2016-08-17 13:48:31 -07:00
Alex Dadgar
096956257d
changelog
2016-08-05 10:47:44 -07:00
Michal Wieczorek
b688261a99
Set windows containers default network mode to 'nat'
2016-08-05 06:01:26 +02:00
Diptanu Choudhury
531b619ce4
Merge pull request #1475 from mwieczorek/windows-hostIp-portBindings
...
Empty host ip for windows containers port bindings
2016-08-04 13:30:43 -07:00
Alex Dadgar
1fe4158097
Merge pull request #1519 from vrenjith/master
...
Remove docker volumes while removing container
2016-08-04 12:54:00 -07:00
vrenjith
41cf7cc623
Update docker.go
...
Remove container volumes
2016-08-04 11:43:50 +05:30
Mathias Lafeldt
d91f7dbdf8
Docker driver: allow to configure working directory
2016-08-03 16:18:15 +02:00
Alex Dadgar
47f5c8f523
use priviledge of the config
2016-08-02 16:10:15 -07:00
Alex Dadgar
cec6d8a1eb
remove gating of ipc, user ns and pidmode based on hosts priviledge mode config
2016-08-02 16:02:34 -07:00
Alex Dadgar
2999c12ef1
disable swap
2016-07-28 12:17:00 -07:00
Michal Wieczorek
4b82b6c3d4
Empty host ip for windows containers port bindings
2016-07-28 00:00:57 +02:00
Diptanu Choudhury
22af229cef
Merge pull request #1321 from mwieczorek/f-windows-binds
...
Volume binds for windows containers
2016-07-18 10:20:44 -06:00
Wojciech Bederski
a73422b4ff
Fix docker driver lockup during nomad boot
...
Unit mismatch caused docker driver to wait almost indefinitely during boot
(when one or more containers were a bit uncooperative during StopContainer())
This should fix problems described in #1202
2016-06-28 14:26:47 +02:00
Diptanu Choudhury
0a10873aa6
Merge pull request #1335 from hashicorp/f-set-docker-timeout
...
Setting a timeout in the docker client
2016-06-21 17:00:14 -07:00
Diptanu Choudhury
2837d3395d
Setting a timeout in the docker client
2016-06-21 16:58:21 -07:00
Diptanu Choudhury
1d5c5b18f3
Making SSL default
2016-06-21 16:41:14 -07:00
Michal Wieczorek
67a04bb1cc
Volume binds for windows containers
2016-06-20 21:46:33 +02:00
Sean Chittenden
7b9961f09b
Initialize the stats helpers before accessing them for the first time
2016-06-17 13:23:30 -07:00
Alex Dadgar
27c6398639
debug message when stopping container
2016-06-17 11:52:44 -07:00
Diptanu Choudhury
266c417ac8
Changed the client options for docker volume selinux labels
2016-06-16 21:41:02 +01:00
Diptanu Choudhury
fa216199ce
Added documentation
2016-06-15 02:42:15 +02:00
Diptanu Choudhury
e08083acfe
Added a client options for setting selinux options
2016-06-15 02:33:09 +02:00
Alex Dadgar
c4a819528a
Merge pull request #1260 from hashicorp/f-alloc-stats-struct
...
Allocation resources returned in a struct
2016-06-12 11:18:57 -07:00
Diptanu Choudhury
34f85baab0
Fix the calculation of total ticks for docker and exec
2016-06-12 18:08:35 +02:00
Alex Dadgar
e952540f6f
Allocation resources returned in a struct
2016-06-11 21:04:10 -07:00
Diptanu Choudhury
19f4adbcf1
Using a different client for collecting stats and waiting on containers
2016-06-11 20:37:29 +02:00
Diptanu Choudhury
7fb507e810
Moving the clkspeed code to helper
2016-06-11 17:31:49 +02:00
Diptanu Choudhury
59540c3e93
Extracted a method for getting clock speed
2016-06-11 02:07:28 +02:00
Diptanu Choudhury
c38a6fb3c5
Implementing the total ticks per task for the docker driver
2016-06-10 23:33:25 +02:00
Alex Dadgar
3cf74e7fd8
Alloc-status only shows measured statistics and fixes to CPU calculations
2016-06-10 10:38:29 -07:00
Alex Dadgar
98d7547014
Annotate what is measured
2016-06-09 19:45:41 -07:00
Diptanu Choudhury
4027ff56f0
Returning an error if stats collection hasn't started yet for a new docker container
2016-06-06 18:52:54 -07:00
Diptanu Choudhury
c0dc6cfbf2
Changing the api of the stats endpoints
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
40e60ce920
Making the call to Stats on a go-routine
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
75c7f84490
Simplified the docker stats collection
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
313c61b9db
Added pidstats in task resource usage struct
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
cfd3016747
Renamed CpuUsage to CpuStats
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
e37a108b4c
Implemented cpu stats
2016-05-28 19:51:22 -07:00
Diptanu Choudhury
1789dbd1ff
Fixed implementation of the docker stats
2016-05-28 19:51:22 -07:00
Diptanu Choudhury
6c1b60ff07
Add the Stats api to driverhandle
2016-05-28 19:42:34 -07:00
Daniel Kerwin
df7f5175a8
Add support for shm_size to docker driver. Required update of go-dockerclient
...
to more recent version (ba4298ecf4cfa216f1cce2befbf653359f62c722).
2016-05-27 12:30:04 +02:00
Sean Chittenden
dc28ab0cb5
Speling police
2016-05-15 09:41:34 -07:00
Ivo Verberk
e25a2d2f4f
Docker labels configuration should be of type "array" in schema
2016-04-25 23:58:31 +02:00
Alex Dadgar
ae0a54eb70
Timeout docker connections after 1 minute
2016-04-22 11:11:38 -07:00
Alex Dadgar
9ccacaa9e5
Remove unused field
2016-04-14 11:05:20 -07:00
Alex Dadgar
78adfa8ed6
changelog + docker GC cleanup
2016-04-14 10:52:38 -07:00
Alex Dadgar
c4406f2b31
Merge pull request #1071 from hashicorp/b-docker-fix-gc
...
GC Docker containers and images after the container exits
2016-04-14 10:26:37 -07:00
Diptanu Choudhury
bab7d8c9ce
Fixing the API call of stopping container
2016-04-12 02:29:28 -07:00
Diptanu Choudhury
02f16e0ea5
Removing container and image once the wait from docker api returns
2016-04-12 00:52:45 -04:00
Ivo Verberk
11f4e647b2
Add interactive option to the Docker driver configuration schema
2016-04-10 12:20:01 +02:00
Ivo Verberk
13a2d62bfa
Implement configuration validation for all task drivers
2016-04-10 00:42:57 +02:00
Ivo Verberk
542603dec6
Add helper to validate raw configuration data
2016-04-10 00:42:43 +02:00
Paul Hinze
044978783f
client/docker: add interactive
option
...
Equivalent to `docker run --interactive` - keeps STDIN open.
Also adds docs for both `tty` and `interactive` docker config.
2016-04-08 12:51:07 -05:00
Diptanu Choudhury
77fbf85518
Added the tty flag to the driverconfig
2016-04-06 09:54:45 -07:00
Diptanu Choudhury
8c7c48b01a
Logging in fingerprinters only when state changes
2016-04-01 02:22:17 -07:00
Diptanu Choudhury
fd3c05a2be
Making driver fingerprinters run periodically and unblocking evals when node registration happens
2016-03-31 18:11:27 -07:00
Diptanu Choudhury
2601468708
Making the load a list of strings and added website docs
2016-03-30 17:23:29 -07:00
Diptanu Choudhury
6b46e27236
Simplified the logic of deciding how to create image
2016-03-30 15:45:17 -07:00
Diptanu Choudhury
52af6cd63c
Added docs
2016-03-30 15:26:51 -07:00
Diptanu Choudhury
cc9c07afdb
Added a test
2016-03-30 13:42:17 -07:00
Diptanu Choudhury
babbe86933
Added ability to create image from archive
2016-03-30 13:09:32 -07:00
Diptanu Choudhury
f517eb16de
Added version to executor
2016-03-29 22:24:22 -07:00
Diptanu Choudhury
2b773b0a39
Added the Version method to executor
2016-03-29 22:23:03 -07:00
Diptanu Choudhury
a6711ea25f
Introducing ConsulContext
2016-03-24 15:57:16 -07:00
Diptanu Choudhury
f09bb1572a
Fixed merge conflicts
2016-03-24 15:09:50 -07:00
Diptanu Choudhury
2a5f300f92
Added a check type for consul service to delegate certain checks
2016-03-24 14:54:26 -07:00
Diptanu Choudhury
60fc9919f7
Changing the log line
2016-03-24 14:53:53 -07:00
Diptanu Choudhury
6a62d4f452
Fixing check registration in perform sync
2016-03-24 14:12:09 -07:00
Alex Dadgar
fc0e48b0ec
Merge pull request #950 from mssola/raw-exec-user
...
client: added the "user" option to tasks
2016-03-24 08:57:13 -07:00
Diptanu Choudhury
62242595fc
Using the name of the task and the alloc id in the service name
2016-03-23 17:35:29 -07:00
Diptanu Choudhury
8b91606b22
Making the docker driver register services and checks
2016-03-23 12:59:22 -07:00
Diptanu Choudhury
f6a932194f
Removing references to old consul services and adding consul config to executor context
2016-03-23 12:19:19 -07:00
Miquel Sabaté Solà
8c56c64615
client/driver: added the user
config value
...
This way Nomad allows to set which user has to run the task.
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
2016-03-23 12:57:31 +01:00
Diptanu Choudhury
abf8e50c29
Destroying the plugin if kill wasn't successful
2016-03-18 11:53:25 -07:00
Diptanu Choudhury
3c7b83b393
Introduced a method in executor to launch syslog server
2016-03-18 11:49:10 -07:00
Diptanu Choudhury
512d0c317a
Merge pull request #897 from hashicorp/syslog-addr
...
Using unix domain sockets for docker syslog collector
2016-03-10 11:49:21 -08:00
Diptanu Choudhury
b18cbaa416
Using unix domain sockets for docker syslog collector
2016-03-09 23:28:26 -08:00
Diptanu Choudhury
f1c9d11c55
Merge pull request #878 from hashicorp/b-kill-timeout-update
...
client: Updating kill timeout adheres to operator specified maximum
2016-03-09 18:33:40 -08:00
Diptanu Choudhury
674d1c9b24
Making the docker fingerprinter periodic
2016-03-08 12:02:55 -08:00
Erik Evenson
c515cce551
moves transform to Init()
2016-03-06 19:00:40 -06:00
Erik Evenson
bef4b0d9b6
Merge branch 'master' into study/aws-ecr-1
2016-03-06 18:18:20 -06:00
Alex Dadgar
929e705ba1
Updating kill timeout adheres to operator specified maximum
2016-03-03 09:21:21 -08:00
Alex Dadgar
144ccfb561
Killing a docker container that is dead is not an error
2016-03-02 16:27:01 -08:00
Erik Evenson
eca9029664
adds comments and removes redundant false flag setting
2016-02-29 08:17:40 -06:00
Alex Dadgar
61972c9ddc
Refactor task runner to include driver starting into restart policy and add recoverable errors
2016-02-28 16:56:05 -08:00
Erik Evenson
10e32a74d1
refactors
2016-02-27 12:00:17 -06:00
Erik Evenson
4572753014
allows AWS ECR to work
2016-02-27 11:06:40 -06:00
Diptanu Choudhury
e3d6c4a9dd
Adding version information to snapshots
2016-02-24 19:06:30 -08:00
Diptanu Choudhury
27ab08ce1c
Merge pull request #842 from hashicorp/f-validate-command
...
drivers: validate that command contains one field
2016-02-23 13:45:10 -08:00
Alex Dadgar
f612b9c81e
validate that command contains one field
2016-02-23 10:19:40 -08:00
Diptanu Choudhury
d6f09400f7
Merge pull request #819 from hashicorp/r-syslog-collector
...
Refactored syslog server and log rotator
2016-02-23 10:15:14 -08:00
Diptanu Choudhury
c21f6f8eea
Throwing an error if Nomad can't create an docker auth object
2016-02-22 13:20:06 -08:00
Diptanu Choudhury
bf3e3f5f59
Throwing an error if Nomad can't create an docker auth object
2016-02-22 13:00:54 -08:00
Diptanu Choudhury
488fd763c8
Renamed packages
2016-02-19 13:08:25 -08:00
Diptanu Choudhury
b1c57e078f
Changing log messages in the docker driver
2016-02-12 13:33:09 -08:00
Alex Dadgar
18da7eea95
Update go-plugin
2016-02-12 12:16:56 -08:00
Diptanu Choudhury
3db617472c
Fixed an issue with purge
2016-02-11 14:44:35 -08:00
Diptanu Choudhury
5480a6744e
Renamed the syslog package to logcollector
2016-02-10 18:47:46 -08:00
Diptanu Choudhury
566d709110
Handling errors when client can't re-attach to syslog collector
2016-02-10 16:40:36 -08:00
Diptanu Choudhury
25c48cd1ea
Updating log configs
2016-02-10 15:04:41 -08:00
Diptanu Choudhury
776e57deb0
Adding newlines to loglines
2016-02-10 10:18:14 -08:00
Diptanu Choudhury
4b22221c27
Writing log lines from docker to files
2016-02-10 07:52:15 -08:00