code: func (c *Container) Stop(ctx context.Context, timeout time.Duration) error {
  	if c.Engine == nil {
  		return ErrNilEngine
  	}
  	// 这里 block 的问题很严重，按照目前的配置是 5 分钟一级的 block
  	// 一个简单的处理方法是相信 ctx 不相信 engine 自身的处理
  	// 另外我怀疑 engine 自己的 timeout 实现是完全的等 timeout 而非结束了就退出
  	removeCtx, cancel := context.WithTimeout(ctx, timeout)
  	defer cancel()
  	return c.Engine.VirtualizationStop(removeCtx, c.ID)
  }
docs: // Stop a container