Guillaume J. Charmes
1ba11384bf
Refactor Opts
2013-11-26 17:46:06 +00:00
Michael Crosby
b4eeb6be61
Change graph-driver flag to be s
2013-11-25 09:43:32 -08:00
Tianon Gravi
1ab6b8bf49
Update a few flag help strings for consistency and clarity
2013-11-21 12:30:17 -07:00
Michael Crosby
6dbeed89c0
Add flag to set default graph driver
...
Remove the env var DOCKER_DRIVER
2013-11-19 02:37:44 -08:00
Solomon Hykes
6c4393ccbb
Merge branch 'job-create-start-clean' into engine-patch-2
...
Conflicts:
engine/engine.go
engine/job.go
server.go
utils_test.go
2013-11-13 00:36:20 +00:00
Guillaume J. Charmes
6998c3c387
go fmt
2013-11-07 12:27:33 -08:00
Solomon Hykes
5c42b2b512
Fix main()
2013-11-05 23:00:20 +00:00
Solomon Hykes
02ddaad5d9
Engine: optional environment variable 'Logging' in 'serveapi'
2013-11-05 18:39:59 +00:00
Solomon Hykes
433c8e9c7d
Separate a) initialization of the http api and b) actually serving the api into 2 distinct jobs
2013-11-05 17:41:37 +00:00
Victor Vieux
e3c49843d7
Merge pull request #2494 from shykes/engine-links
...
Engine: Minimal, unintrusive implementation of a cleaner Job API.
2013-10-31 16:32:49 -07:00
Victor Vieux
f7c40a87f3
set containers comm to true by default
2013-10-30 14:48:19 -07:00
Solomon Hykes
a13241d370
Engine: Engine.Job() never fails, to mimic the os/exec API (and make usage less verbose)
2013-10-26 17:49:16 -07:00
Solomon Hykes
c1ae1a0e1c
Setup daemon pidfile/cleanup in Server.Daemon() instead of main()
2013-10-26 14:26:07 -07:00
Solomon Hykes
7e691e11b0
Rename 'GraphPath' to the more logical 'Root'. This does not affect users except for a slight text change in the usage messge
2013-10-26 14:24:13 -07:00
Solomon Hykes
0d1a825137
Minimal, unintrusive implementation of a cleaner Job API.
...
* Implement a new package: engine. It exposes a useful but minimalist job API.
* Refactor main() to instanciate an Engine instead of a Server directly.
* Refactor server.go to register an engine job.
This is the smallest possible refactor which can include the new Engine design
into master. More gradual refactoring will follow.
2013-10-26 14:18:13 -07:00
Michael Crosby
7c08aeeba4
Use persistent connection for links database
...
Add close method to Runtime and Server to make sure
that any underlying connections are cleaned up
2013-10-25 15:13:25 -07:00
Alexander Larsson
db99966724
Move SysInit to a submodule
...
This allows docker-init to not import the main docker
module, which means it won't e.g. pick up any sqlite
dependencies.
2013-10-25 15:13:24 -07:00
Alexander Larsson
d063c8d941
Move ListOps to utils submodule
...
This will be needed for later use in docker-init without a docker
dependency
2013-10-25 15:13:24 -07:00
Michael Crosby
ce965b8c43
Add flag for inter-container communication
2013-10-25 15:13:24 -07:00
Michael Crosby
1cbdaebaa1
Add links for container relationships and introspection
2013-10-25 15:13:24 -07:00
Victor Vieux
92384649cf
remove useless os.Exit() after log.Fatalf
2013-10-24 00:25:55 -07:00
Yang Bai
e81da876df
let utils.ParseHost return err when errors happen
2013-10-24 13:23:02 +08:00
Victor Vieux
e594c788e4
keep -r, but default true
2013-10-03 22:42:35 +00:00
Victor Vieux
46a1cd69a9
only os.Exits on error
2013-09-09 21:26:35 +00:00
jbbarth
d80b50d4b4
Improve formatting with 'go fmt' as stated in CONTRIBUTING.md
...
As 'go fmt' doesn't support verifying files in multiple directories,
it's probably a good idea to run it on all '*.go' files from time to
time with something like this:
find . -name "*.go" | xargs dirname | sort -u | xargs -n 1 echo go fmt
2013-08-27 10:05:25 +02:00
Solomon Hykes
9fce6f662a
docker -v: show version and build information without making remote connections
2013-08-20 19:32:37 -07:00
Solomon Hykes
9087ef9a77
Move VERSION to a dedicated file to facilitate automated builds and releases
2013-08-20 19:32:37 -07:00
Pascal Borreli
9b2a5964fc
Fixed typos
2013-08-12 18:53:06 +01:00
Michael Crosby
8934f13615
Change daemon to listen on unix socket by default
2013-08-06 00:12:56 +00:00
Guillaume J. Charmes
f6fa353dd8
Merge pull request #1267 from sridatta/new-clean-init
...
* Runtime: Fix to "Inject dockerinit at /.dockerinit"
2013-08-05 13:23:22 -07:00
Stefan Praszalowicz
964e826a9b
Document -b none
2013-07-21 18:01:52 -07:00
Solomon Hykes
5d8efc107d
+ Runtime: inject dockerinit at /.dockerinit instead of overwriting /sbin/init. This makes it possible to run /sbin/init inside a container.
2013-07-17 17:13:34 -07:00
Caleb Spare
da3962266a
Gofmt -s (simplify)
2013-07-03 14:35:18 -07:00
Victor Vieux
862e223cec
Merge branch 'add-daemon-storage-path-param' of https://github.com/heavenlyhash/docker into heavenlyhash-add-daemon-storage-path-param
2013-06-25 13:33:45 +00:00
Eric Myhre
e44f62a95c
Add argument to allow setting base directory for docker daemon's storage to values other than "/var/lib/docker".
2013-06-20 16:29:54 -05:00
Solomon Hykes
e43323221b
Merge branch 'master' into simpler-build-upload
...
Conflicts:
api.go
builder_client.go
commands.go
2013-06-20 14:19:09 -07:00
Victor Vieux
dede1585ee
add the possibility to use multiple -H
2013-06-19 12:31:54 +00:00
Victor Vieux
3adf9ce04e
add basic support for unix sockets
2013-06-18 18:59:56 +00:00
Solomon Hykes
250e47e2eb
Merge branch 'dns_server_side'
...
+ Configure dns configuration host-wide with 'docker -d -dns'
+ Detect faulty DNS configuration and replace it with a public default
2013-06-14 14:39:05 -07:00
Victor Vieux
20bf0e00e8
* Remote Api: Add flag to enable cross domain requests
2013-06-11 10:12:36 +00:00
Guillaume J. Charmes
afd325a884
Solve an issue with the -dns in daemon mode
2013-06-06 11:01:29 -07:00
Guillaume J. Charmes
84d68007cb
Add -dns to docker daemon
2013-06-05 14:20:54 -07:00
Victor Vieux
fd224ee590
linted names
2013-06-04 18:00:22 +00:00
Michael Crosby
6d5bdff394
Add flag to enable cross domain requests in Api
...
Add the -api-enable-cors flag when running docker
in daemon mode to allow CORS requests to be made to
the Remote Api. The default value is false for this
flag to not allow cross origin request to be made.
Also added a handler for OPTIONS requests the standard
for cross domain requests is to initially make an
OPTIONS request to the api.
2013-06-03 21:39:00 -04:00
Guillaume J. Charmes
bfb65b733a
Simplify the Host flag parsing
2013-05-24 11:31:36 -07:00
Guillaume J. Charmes
ae72c2f4d6
Gofmt
2013-05-24 11:31:19 -07:00
Victor Vieux
92e4a51965
use -H
2013-05-24 16:49:18 +00:00
Victor Vieux
59835135c5
added warning
2013-05-23 16:15:36 +00:00
Victor Vieux
13f1939a63
switch to default 127.0.0.1, and mixed the two flags in one. -h
2013-05-23 16:09:28 +00:00
Victor Vieux
a3ccec197e
add -host and -port
2013-05-21 10:14:58 +00:00
Guillaume J. Charmes
2e69e1727b
Create a subpackage for utils
2013-05-14 22:37:35 +00:00
Victor Vieux
c423a790d6
fixed issue with viz
2013-05-09 23:52:12 +02:00
Victor Vieux
04cd20fa62
split api and server. run return exit code. import, pull and commit uses the smae endpoint. non zero status code on failure
2013-05-06 11:31:22 +02:00
Victor Vieux
4f0bda2dd5
up to date with master
2013-05-02 18:36:23 +02:00
Guillaume J. Charmes
50144aeb42
Add -r flag to dockerd in order to restart previously running container. Fixes #26
2013-04-24 19:01:23 -07:00
Guillaume J. Charmes
f079fbe3fa
Check that the pid in pidfile exists before preventing docker to start
2013-04-22 15:57:31 -07:00
Guillaume J. Charmes
f68d107a13
Remove the NO_MEMORY_LIMIT constant
2013-04-18 21:08:20 -07:00
Victor Vieux
c0d5d5969b
skeleton remote API, only version working (wip)
2013-04-18 03:13:43 +02:00
Solomon Hykes
a11b31399b
Skeleton of http API
2013-04-16 19:53:08 +02:00
Solomon Hykes
2a47df0202
Disabled standalone mode ( fixes #364 )
2013-04-15 11:44:11 -07:00
Guillaume J. Charmes
1967c8342a
Allow to disable memory limit at compilation time
2013-04-12 10:48:20 -07:00
Guillaume J. Charmes
22893429ed
Go fmt
2013-04-12 07:37:24 -07:00
Flavio Castelli
fb0b375be7
docker daemon: create file containing PID
...
Ensure the docker daemon creates a file containing its PID under
/var/run/docker.pid.
The daemon takes care of removing the pid file when it receives either
SIGTERM, SIGINT or SIGKILL.
The daemon also refuses to start when the pidfile is found. An
explanation message is shown to the user when this happens.
This change is required to make docker easier to manage by tools like
checkproc which rely on this information.
2013-04-11 21:41:08 +02:00
Guillaume J. Charmes
246eed52de
Move DockerLocalConn and terminal functions form package "main" to "rcli" in order to be able to use DockerLocalConn in commands_test.go
2013-04-08 15:58:09 -07:00
Louis Opter
b306a60738
Simplification in the goroutine that restore the terminal state on SIGINT
2013-04-08 15:58:09 -07:00
Louis Opter
7d0ab3858e
Only set the terminal in raw mode for commands which need it
...
The raw mode is actually only needed when you attach to a container.
Having it enabled all the time can be a pain, e.g: if docker crashes
your terminal will end up in a broken state.
Since we are currently missing a real API for the docker daemon to
negotiate this kind of options, this changeset actually enable the raw
mode on the login (because it outputs a password), run and attach
commands.
This "optional raw mode" is implemented by passing a more complicated
interface than io.Writer as the stdout argument of each command. This
interface (DockerConn) exposes a method which allows the command to set
the terminal in raw mode or not.
Finally, the code added by this changeset will be deprecated by a real
API for the docker daemon.
2013-04-08 15:58:09 -07:00
Solomon Hykes
22adb52c0a
The flag to use a pre-existing bridge interface is '-b'. Added explanation
2013-04-05 14:16:04 -07:00
Guillaume J. Charmes
1b370f9d8d
Move the default bridge name to a constant
2013-04-04 05:33:28 -07:00
Guillaume J. Charmes
f39af7e05d
Put the bridge interface name in the command line
2013-04-03 16:15:43 -07:00
Solomon Hykes
35c68944c7
Merged shawnsi/git-version
2013-04-02 20:26:22 -07:00
Solomon Hykes
7666307931
Use an environment variable to activate debug mode, instead of a package-specific flag
2013-04-02 10:58:16 -07:00
Shawn Siefkas
37a78902db
Adding git commit to the version output
...
The Makefile must be used in order to inject the git commit
via -ldflags.
2013-04-01 13:52:45 -05:00
Solomon Hykes
c937e237ad
Merged Ctrl-C interception by @creack
2013-03-29 13:12:04 -07:00
Jonathan Rudenberg
a6da7f138c
Camelize some snake_case variable names
2013-03-28 20:12:23 -04:00
Guillaume J. Charmes
6a236184af
Change hardcoded "0" onto os.Stdin.Fd()
2013-03-27 23:56:36 -07:00
Guillaume J. Charmes
108acc0511
#214 Better signal handling
2013-03-27 23:54:53 -07:00
Guillaume J. Charmes
6e507b9460
Add a Debugf() helper and a -D (debug) flag to docker
2013-03-22 11:44:12 -07:00
Solomon Hykes
623e91e2e3
Moved Go() to the main package... And got rid of the useless docker/future package
2013-03-21 01:13:55 -07:00
creack
e5e66716df
Move commands into docker
2013-03-14 02:43:16 -07:00
Solomon Hykes
745edc49cd
Merge dockerd into docker. 'docker -d' runs in daemon mode. For all other commands, docker auto-detects whether to run standalone or to remote-control the daemon
2013-03-13 00:29:40 -07:00
Solomon Hykes
86854ffbc5
Merged master
2013-03-12 21:53:34 -07:00
Solomon Hykes
d2cba75d5f
Removed interactive mode ('docker -i'). Cool UI experiment but seems more trouble than it's worth
2013-03-12 15:05:41 -07:00
creack
453d49573c
Put back the github.com path for the import
2013-03-12 11:59:27 -07:00
Guillaume J. Charmes
18f4e7e196
Put back the relative paths for dev purpose
2013-03-12 05:17:51 -07:00
Guillaume J. Charmes
687d6f25ee
Change relative paths to absolute
2013-03-11 02:59:52 -07:00
shin-
5d6199b925
post-merge repairs
2013-03-11 07:39:06 -07:00
Solomon Hykes
aa12da6f50
go fmt
2013-02-26 17:26:46 -08:00
Solomon Hykes
e1b25e9b08
Moved server and client logic into sub-packages docker/server and docker/client, respectively. The UI is not affected.
2013-02-13 17:10:00 -08:00
Solomon Hykes
45c30b8eda
'docker -i' can be used as an interpreter for scripts (#!/usr/bin/env docker -i)
2013-02-12 22:24:15 -08:00
Solomon Hykes
f20deac47f
Clean up list of available commands
2013-02-12 17:25:41 -08:00
Solomon Hykes
d0b6f7ef3b
docker -i: interactive mode
2013-02-12 08:48:30 -08:00
Solomon Hykes
f330c2a248
Disabled remote access to dockerd. Preferred usage is over ssh.
2013-02-12 08:37:12 -08:00
Solomon Hykes
edc9968604
Clearer error message in the client when DOCKER env variable is not set
2013-02-04 23:25:28 -08:00
Solomon Hykes
d5be77075a
Fix a bug which caused the client to never exit in interactive mode when NORAW is set.
2013-01-29 15:37:54 -08:00
Solomon Hykes
8c142c6127
export NORAW=1 to disable raw mode in the client
2013-01-29 15:24:39 -08:00
Solomon Hykes
c283ff6675
Fixed typo in Darwin termios settings
2013-01-28 18:37:54 -08:00
shin-
c914aaf43e
Forgot an import in termios_darwin
2013-01-28 17:07:38 -08:00
shin-
08ac1d0b35
Different termios for linux/darwin
2013-01-28 17:06:46 -08:00
Solomon Hykes
75529a202f
Fixed IO edge cases on docker client. Wait for stdin to close before exiting if it's a pipe, but not if it's a terminal. Correctly send stdin EOF to the server with TCP half-close
2013-01-25 11:26:18 -08:00
Solomon Hykes
f3ffba7afe
Factored out docker/rcli (remote cli protocol), docker/fake (mocking utilities) and docker/future (real utilities which don't yet fit in the core)
2013-01-24 20:01:32 -08:00
Solomon Hykes
553ca56d7e
Enabled stdin and interactive mode. 'docker run -a CONTAINER bash' will now correctly run an interactive shell. This required switching to a simple raw TCP protocol by default
2013-01-23 23:14:46 -08:00
Solomon Hykes
d62a759106
Moved 100% of arg parsing to dockerd. Even help messages are generated on the server
2013-01-20 00:44:44 -08:00
Solomon Hykes
3dc240c7ee
CLI: don't crash with no arguments
2013-01-19 17:41:59 -08:00
Solomon Hykes
e5323e7c9a
Prototyping with a mock CLI and daemon
2013-01-19 16:07:19 -08:00