Create the container if the server is booted and it is missing
This commit is contained in:
		
							parent
							
								
									48a303608a
								
							
						
					
					
						commit
						7f4c29580a
					
				| 
						 | 
				
			
			@ -128,8 +128,12 @@ func (d *DockerEnvironment) OnBeforeStart() error {
 | 
			
		|||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Checks if there is a container that already exists for the server. If so that
 | 
			
		||||
// container is started. If there is no container, one is created and then started.
 | 
			
		||||
// Starts the server environment and begins piping output to the event listeners for the
 | 
			
		||||
// console.
 | 
			
		||||
//
 | 
			
		||||
// This process will also confirm that the server environment exists and is in a bootable
 | 
			
		||||
// state. This ensures that unexpected container deletion while Wings is running does
 | 
			
		||||
// not result in the server becoming unbootable.
 | 
			
		||||
func (d *DockerEnvironment) Start() error {
 | 
			
		||||
	sawError := false
 | 
			
		||||
	// If sawError is set to true there was an error somewhere in the pipeline that
 | 
			
		||||
| 
						 | 
				
			
			@ -141,6 +145,17 @@ func (d *DockerEnvironment) Start() error {
 | 
			
		|||
		}
 | 
			
		||||
	}()
 | 
			
		||||
 | 
			
		||||
	// The Create() function will check if the container exists in the first place, and if
 | 
			
		||||
	// so just silently return without an error. Otherwise, it will try to create the necessary
 | 
			
		||||
	// container and data storage directory.
 | 
			
		||||
	//
 | 
			
		||||
	// This won't actually run an installation process however, it is just here to ensure the
 | 
			
		||||
	// environment gets created properly if it is missing and the server is started. We're making
 | 
			
		||||
	// an assumption that all of the files will still exist at this point.
 | 
			
		||||
	if err := d.Create(); err != nil {
 | 
			
		||||
		return errors.WithStack(err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	c, err := d.Client.ContainerInspect(context.Background(), d.Server.Uuid)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return errors.WithStack(err)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user