mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
never remove the file and try to load it in start
This commit is contained in:
parent
27a137ccab
commit
3042f11666
2 changed files with 5 additions and 10 deletions
10
container.go
10
container.go
|
@ -265,7 +265,7 @@ func (container *Container) ToDisk() (err error) {
|
||||||
return ioutil.WriteFile(container.jsonPath(), data, 0666)
|
return ioutil.WriteFile(container.jsonPath(), data, 0666)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (container *Container) ReadTempHostConfig() (*HostConfig, error) {
|
func (container *Container) ReadHostConfig() (*HostConfig, error) {
|
||||||
data, err := ioutil.ReadFile(container.hostConfigPath())
|
data, err := ioutil.ReadFile(container.hostConfigPath())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return &HostConfig{}, err
|
return &HostConfig{}, err
|
||||||
|
@ -278,9 +278,6 @@ func (container *Container) ReadTempHostConfig() (*HostConfig, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (container *Container) SaveHostConfig(hostConfig *HostConfig) (err error) {
|
func (container *Container) SaveHostConfig(hostConfig *HostConfig) (err error) {
|
||||||
if hostConfig == nil {
|
|
||||||
return os.Remove(container.hostConfigPath())
|
|
||||||
}
|
|
||||||
data, err := json.Marshal(hostConfig)
|
data, err := json.Marshal(hostConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
|
@ -491,6 +488,9 @@ func (container *Container) Attach(stdin io.ReadCloser, stdinCloser io.Closer, s
|
||||||
func (container *Container) Start(hostConfig *HostConfig) error {
|
func (container *Container) Start(hostConfig *HostConfig) error {
|
||||||
container.State.lock()
|
container.State.lock()
|
||||||
defer container.State.unlock()
|
defer container.State.unlock()
|
||||||
|
if len(hostConfig.Binds) == 0 {
|
||||||
|
hostConfig, _ = container.ReadHostConfig()
|
||||||
|
}
|
||||||
|
|
||||||
if container.State.Running {
|
if container.State.Running {
|
||||||
return fmt.Errorf("The container %s is already running.", container.ID)
|
return fmt.Errorf("The container %s is already running.", container.ID)
|
||||||
|
@ -815,8 +815,6 @@ func (container *Container) monitor() {
|
||||||
// FIXME: why are we serializing running state to disk in the first place?
|
// FIXME: why are we serializing running state to disk in the first place?
|
||||||
//log.Printf("%s: Failed to dump configuration to the disk: %s", container.ID, err)
|
//log.Printf("%s: Failed to dump configuration to the disk: %s", container.ID, err)
|
||||||
}
|
}
|
||||||
// Remove temp host config
|
|
||||||
container.SaveHostConfig(nil)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (container *Container) kill() error {
|
func (container *Container) kill() error {
|
||||||
|
|
|
@ -144,8 +144,7 @@ func (runtime *Runtime) Register(container *Container) error {
|
||||||
utils.Debugf("Restarting")
|
utils.Debugf("Restarting")
|
||||||
container.State.Ghost = false
|
container.State.Ghost = false
|
||||||
container.State.setStopped(0)
|
container.State.setStopped(0)
|
||||||
// assume empty host config
|
hostConfig := &HostConfig{}
|
||||||
hostConfig, _ := container.ReadTempHostConfig()
|
|
||||||
if err := container.Start(hostConfig); err != nil {
|
if err := container.Start(hostConfig); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -156,8 +155,6 @@ func (runtime *Runtime) Register(container *Container) error {
|
||||||
if err := container.ToDisk(); err != nil {
|
if err := container.ToDisk(); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
// remove temp host config
|
|
||||||
container.SaveHostConfig(nil)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue