{"action":"created","issue":{"url":"https://api.github.com/repos/docker/docker/issues/5499","labels_url":"https://api.github.com/repos/docker/docker/issues/5499/labels{/name}","comments_url":"https://api.github.com/repos/docker/docker/issues/5499/comments","events_url":"https://api.github.com/repos/docker/docker/issues/5499/events","html_url":"https://github.com/docker/docker/issues/5499","id":32551333,"number":5499,"title":"Feature Request: Support rapid developer edit debug cycle with new \"docker dev\"","user":{"login":"mdelder","id":3721238,"avatar_url":"https://avatars.githubusercontent.com/u/3721238?v=3","gravatar_id":"","url":"https://api.github.com/users/mdelder","html_url":"https://github.com/mdelder","followers_url":"https://api.github.com/users/mdelder/followers","following_url":"https://api.github.com/users/mdelder/following{/other_user}","gists_url":"https://api.github.com/users/mdelder/gists{/gist_id}","starred_url":"https://api.github.com/users/mdelder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mdelder/subscriptions","organizations_url":"https://api.github.com/users/mdelder/orgs","repos_url":"https://api.github.com/users/mdelder/repos","events_url":"https://api.github.com/users/mdelder/events{/privacy}","received_events_url":"https://api.github.com/users/mdelder/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/docker/docker/labels/kind/feature","name":"kind/feature","color":"AAB3AB"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2014-04-30T16:27:20Z","updated_at":"2015-05-07T10:29:36Z","closed_at":null,"body":"With discussions with Solomon, a proposal arose to support a new developer centric function focused on fast iteration. \r\n\r\nI would like to use docker to not only to containerize an application but also develop it. Today, the cycle of running a docker build for each source code change is an impedance to productivity. \r\n\r\nThe new proposed function would:\r\n\r\n- Define new CLI \"docker dev\" command. \r\n- \"docker dev\" would use a Dockerfile to bring up a running instance and leave open a shell to provide access to STDIN, STDOUT, or \"tail -f\" an application log to my current console opinion the host OS. \r\n- When the developer hits CTRL+C, the container would terminate and restart the container processes and return the prompt. \r\n- The Dockerfile would include directives to mount one or more directories of source code for interpreted languages or directories with built Objects like Java .classes. \r\n- As the developer makes changes and wants to test or debug the change, the fast restart from CTRL+C would not only restart the running process (python interpreter, IBM Liberty Java web application, etc) but also ensure currency from the mounted directories of deployable artifacts. \r\n- Finally, when the developer wants to capture the current state, they might enter an additional keystroke CTRL+S to automatically commit the current running state to a new container, the equivalent of a docker build. "},"comment":{"url":"https://api.github.com/repos/docker/docker/issues/comments/99807506","html_url":"https://github.com/docker/docker/issues/5499#issuecomment-99807506","issue_url":"https://api.github.com/repos/docker/docker/issues/5499","id":99807506,"user":{"login":"unclejack","id":1409668,"avatar_url":"https://avatars.githubusercontent.com/u/1409668?v=3","gravatar_id":"","url":"https://api.github.com/users/unclejack","html_url":"https://github.com/unclejack","followers_url":"https://api.github.com/users/unclejack/followers","following_url":"https://api.github.com/users/unclejack/following{/other_user}","gists_url":"https://api.github.com/users/unclejack/gists{/gist_id}","starred_url":"https://api.github.com/users/unclejack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/unclejack/subscriptions","organizations_url":"https://api.github.com/users/unclejack/orgs","repos_url":"https://api.github.com/users/unclejack/repos","events_url":"https://api.github.com/users/unclejack/events{/privacy}","received_events_url":"https://api.github.com/users/unclejack/received_events","type":"User","site_admin":false},"created_at":"2015-05-07T10:29:36Z","updated_at":"2015-05-07T10:29:36Z","body":"@cpuguy83 This has been discussed for a long time (as early as mid of 2013) and it needs to be implemented."}}