Commit Graph

181 Commits

Author SHA1 Message Date
Michael Crosby 47f239706c Add no pivot root support
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-30 21:52:15 -07:00
Michael Crosby 3d72dc1e4e Merge pull request #161 from calavera/enable_pprof
Enable http pprof connections when pprof-address flag is set
2016-03-25 17:27:08 -07:00
David Calavera 06bcd7d03c Enable http pprof connections when pprof-address is set.
Add flag to specify the address where those connections listen.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2016-03-25 17:46:10 -04:00
Kenfe-Mickael Laventure bac78851e0 Append error message to internal errors
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-03-25 11:03:11 -07:00
Ben Firshman 9979502ca8 Fix spacing in api.proto
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-03-18 17:37:59 -07:00
Michael Crosby a4844a68a6 Add exec rlimit support to containerd
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-15 11:46:47 -07:00
Michael Crosby e637c1ea80 Update specs imports for specs-go
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-15 11:31:32 -07:00
Tonis Tiigi ab5eae56bf Add pids stats
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-08 16:13:10 -08:00
Michael Crosby 0dd075a47b Add update rpc for resource updates
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-07 15:23:52 -08:00
Michael Crosby 44d6a60e7e Add process cap support to add process rpc
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-07 11:01:28 -08:00
John Howard d4ca79c978 Getting ctr closer to compiling on Windows
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-02-29 12:42:30 -08:00
John Howard b044ff0f29 Refactor process.go for platform specific
Signed-off-by: John Howard <jhoward@microsoft.com>

Move process sorter to new file

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Sort containers by id

This will not be the most accurate sorting but atleast the list will be
consistent inbetween calls.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Allow runtime to be configurable via daemon start

This allows people to pass an alternate name or location to the runtime
binary to start containers.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Fix state output for containers

Return the proper state/status for a container by checking if the pid is
still alive.  Also fix the cleanup handling in the shim to make sure
containers are not left behind.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Properly wait for container start

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-29 10:43:35 -08:00
John Howard dd192f4cd9 Final bit of compiling on Windows
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-02-26 15:38:05 -08:00
John Howard 2b8f022950 runtime compiles on Windows
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-02-26 14:01:06 -08:00
Kenfe-Mickael Laventure d8fce0997e Fill forgotten KernelUsage field of CgroupStats.MemoryStats
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-02-23 10:51:28 -08:00
Kenfe-Mickael Laventure 9f8e542234 Add Limit field to rpc MemoryStats.MemoryData
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-02-23 10:51:28 -08:00
Michael Crosby a2461f1b6b Merge pull request #99 from mlaventure/system-usage-stats
Add SystemUsage to returned stats
2016-02-23 10:15:42 -08:00
Kenfe-Mickael Laventure da5d876d91 Add SystemUsage to returned CpuStats
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-02-20 23:40:09 -08:00
Michael Crosby 4e05bf491a Remove eventloop package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-19 13:21:21 -08:00
Michael Crosby d19c818cdc Don't get pids on create
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-12 14:01:24 -08:00
Michael Crosby 1d8dc2a072 Fix time parsing from API default value
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-12 13:29:53 -08:00
Michael Crosby 7b182bd898 Remove name from container proto
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-12 13:08:38 -08:00
Michael Crosby 9341a95c26 add event log and timestamp to events api
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-12 10:17:59 -08:00
Michael Crosby 3dc59d565a Rename Events to task in supervisor
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 17:26:24 -08:00
Michael Crosby d2bf71043f Fix memory value in stats api
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 15:55:19 -08:00
Michael Crosby bdeb87a090 Implement stats for containerd
This is a single endpoint that clients will poll

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 14:36:32 -08:00
Michael Crosby 532697f32f Add all pids to state output
Also update libcontainer dep

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 14:07:34 -08:00
Michael Crosby d6bd304c92 Add labels for containers
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 13:44:25 -08:00
Michael Crosby 76d69b4ed8 Add id to state command to return single container
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 12:20:29 -08:00
Michael Crosby 58c5eb5ecb Return container on start
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-11 11:56:11 -08:00
Michael Crosby 01176f2d7f Add pid and stdio to process state
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-04 14:40:35 -08:00
Michael Crosby 36eb83cb99 Move fifo creation to client
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-03 13:56:15 -08:00
Michael Crosby a42eb9fd63 Add close stdin
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-02 16:00:22 -08:00
Michael Crosby 277cc920a4 Implement checkpoint / restore for shim
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-02 16:00:22 -08:00
Michael Crosby 835f3b6a97 Update shim for exec
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-02 16:00:22 -08:00
Michael Crosby fe38efda50 Add shim for reattach of processes
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Remove runtime files from containerd

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Update supervisor for orphaned containers

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Remove ctr/container.go back to rpc calls

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add attach to loaded container

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add monitor based on epoll for process exits

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Convert pids in containerd to string

This is so that we no longer care about linux or system level pids and
processes in containerd have user defined process id(pid) kinda like the
exec process ids that docker has today.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add reaper back to containerd

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Implement list containers with new process model

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Implement restore of processes

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add NONBLOCK to exit fifo open

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Implement tty reattach

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Fix race in exit pipe creation

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add delete to shim

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Update shim to use pid-file and not stdout

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-02-02 16:00:22 -08:00
Burcu Dogan 167219101f runtime: remove unnecessary intermediate type, Status
Signed-off-by: Burcu Dogan <jbd@google.com>
2016-01-28 00:31:33 +01:00
Antonio Murdaca 6bc0dcf4e9 api: grpc: types: align fields in api.proto
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-01-22 21:29:37 +01:00
Alexander Morozov 69f8f566a2 Move supervisor to it's own package
It allows to keep main namespace cleaner

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-17 16:18:48 -08:00
Michael Crosby 76cf593212 Add oom notifications and pid to create response
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-15 16:22:53 -08:00
Michael Crosby ec31245f54 Add exec process log support
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-15 11:43:51 -08:00
Michael Crosby d542ece69c Add tty support from client
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-14 16:47:42 -08:00
Michael Crosby b2e649b164 Add console to proto
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-14 16:27:28 -08:00
Alexander Morozov 4bc322397f Add initial implementation of stats
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-14 14:45:06 -08:00
Alexander Morozov ce387dc505 Add datastructures for stats API
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-14 14:43:56 -08:00
Michael Crosby 92c0790899 Add stdin support for client and daemon
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-14 14:40:50 -08:00
Michael Crosby c4aa39a818 Update protos with stdin for container create
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-14 14:18:42 -08:00
Michael Crosby e9f63fc9a4 Add basic fifo support for IO copy
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-14 14:15:26 -08:00
Michael Crosby e5545a1461 Add basic logging to file support
This currently logs to a json file with the stream type.  This is slow
and hard on the cpu and memory so we need to swich this over to
something like protobufs for the binary logs but this is just a start.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-11 10:26:49 -08:00
Alexander Morozov 04d2034a83 Add initial documentation for api
Cool that protoc generates docstrings for pb.go file

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-10 14:43:23 -08:00
Michael Crosby 71ef776082 Add events support in client
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-10 12:30:20 -08:00
Michael Crosby 1d3349128e Replace rest api with grpc api
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-09 15:39:27 -08:00
Michael Crosby 11c27935d0 Replace api cli with grpc cli
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-09 15:37:04 -08:00
Alexander Morozov e14e4576c9 Prototype of grpc API
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-09 15:05:50 -08:00
Michael Crosby e87f8336c4 Add more client methods
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-08 13:31:20 -08:00
Michael Crosby d9e8fe62cb Add concurrency and id flag for daemon
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-07 15:19:56 -08:00
Michael Crosby 3fdc48eb01 Add checkpoint timestamp based on mtime
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 15:12:57 -08:00
Michael Crosby 7baee380ea Update readme with performance stuff
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 15:04:53 -08:00
Michael Crosby 8af8c56510 Update docs for new api endpoints
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 14:44:08 -08:00
Michael Crosby b5931855a4 Add ability to signal container not just processes
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 14:10:50 -08:00
Michael Crosby 9eb08b8971 Refactor checkpoint information
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 14:00:07 -08:00
Michael Crosby e21364603e Change c/r leaverunning to exit
This allows the default checkpoint functionality to leave the container
running after it has been checkpointed.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 13:35:03 -08:00
Michael Crosby c10b3cde9f Implement proper shutdown logic
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-04 13:31:17 -08:00
Michael Crosby ae9b2bafd5 Add basic checkpoint and restore support
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-03 16:07:53 -08:00
Michael Crosby c1eb9ac90b Change /containers to /state with machine info
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-03 11:49:56 -08:00
Michael Crosby 847e5bc7ee Add basic frame and ctr command line client
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-02 14:41:49 -08:00
David Calavera e4a61633c5 Add event subscribers.
- Add exit event for exec processes.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-01 18:49:24 -05:00
Michael Crosby c24abdde1b Move runtime implementation types to pkg
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-12-01 11:56:08 -08:00
Michael Crosby 510c9c852b Add funcs for events endpoint
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-11-30 15:46:36 -08:00
Michael Crosby c42c9aeb06 Return nil processes with no pid 2015-11-13 14:52:25 -08:00
Michael Crosby 18338b29a1 Add journal queue 2015-11-13 14:09:35 -08:00
Michael Crosby 0136213e78 Add basic log support 2015-11-13 13:25:03 -08:00
Michael Crosby f9ad7970d2 Improve process addition and removal
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

implement pause and resume

Add godeps

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add readme

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-11-13 13:25:03 -08:00
Michael Crosby 17d9c10e2d Implement journal replay
Add addprocess event for addtional processes

Add more api process information
2015-11-13 13:25:02 -08:00
Michael Crosby 6ff2239019 Add journaling 2015-11-10 14:24:34 -08:00
Michael Crosby d34d482a5f Implement container signal 2015-11-10 13:44:35 -08:00
Michael Crosby a2ddcc2232 implement state api command 2015-11-10 11:38:26 -08:00
Michael Crosby 412d2b0239 Flatten stuff 2015-11-06 15:42:32 -08:00
Michael Crosby 5f5f4904e0 Making containers run and delete 2015-11-05 16:40:57 -08:00
Michael Crosby 05683fb0ee Fix build errors 2015-11-05 15:49:13 -08:00
Michael Crosby 15a96783ca Initial commit 2015-11-05 15:29:53 -08:00