Cannot build mesos image with docker

Bug #1483085 reported by hongbin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Magnum
Fix Released
Undecided
Egor Guz

Bug Description

Here is my environment:

OS: Ubuntu14.04
RAM: 2G
Disk: 20G

I follow the instruction (https://github.com/openstack/magnum/tree/master/magnum/templates/heat-mesos#docker) to build mesos image with docker. Failed with the error below:

+ /usr/sbin/grub-install '--modules=biosdisk part_msdos' /dev/loop0
Installing for i386-pc platform.
/usr/sbin/grub-install: warning: File system `ext2' doesn't support embedding.
/usr/sbin/grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
/usr/sbin/grub-install: error: will not proceed with blocklists.
/dev/loop0: [0033]:2440 (/tmp/image.ExNcoXLx/image.raw)

Here is the full logs: http://paste.openstack.org/show/412319/

Egor Guz (eghobo)
Changed in magnum:
assignee: nobody → Egor Guz (eghobo)
status: New → Confirmed
Revision history for this message
Paul Czarkowski (paulcz) wrote :

The full logs appear to be incomplete and missing the error and the logs I would like to see where it's trying to partition the loop0 device.

I was receiving this error which I was able to resolve by installing `parted` into the Image ( https://github.com/openstack/magnum/blob/master/magnum/templates/heat-mesos/Dockerfile#L5 ). Since adding that to the Dockerfile and using vivid I have been successfully building the mesos image.

As far as I could tell from the logs at the time it wasn't rewriting the partitions to remove ext2 from where it was installing the bootloader because it was trying to use parted to do that rewrite.

I wonder if there's something slightly different how trusty and vivid manage the loop devices and the way its mapped into the container via --privileged. I run a Vivid desktop and I had to use a Vivid container ... Could you try either setting the FROM to trusty ( assuming that's what you're using ) and/or running this in a Vivid VM ?

Revision history for this message
Egor Guz (eghobo) wrote :

@Paul, switching to Trusty Docker image helps (I run docker-machine at OSX and I believe it's Debian). For some reasons Vivid doesn't work for me with Vagrant, but I think we should stay with LTS releases. Thoughts?

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to magnum (master)

Fix proposed to branch: master
Review: https://review.openstack.org/211761

Changed in magnum:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to magnum (master)

Reviewed: https://review.openstack.org/211761
Committed: https://git.openstack.org/cgit/openstack/magnum/commit/?id=0906682afdc30791fa067cdf0c1c7fe75fb83c53
Submitter: Jenkins
Branch: master

commit 0906682afdc30791fa067cdf0c1c7fe75fb83c53
Author: Egor Guz <email address hidden>
Date: Tue Aug 11 14:46:08 2015 -0700

    Switched to Ubuntu 14.04 LTS (Trusty) base image

    It looks like loop devices works differently with Vivid and it make
    sense to use latest LTS release instead.

    Closes-Bug: #1483085
    Change-Id: If1673ce06646142cd153803a100fe9c2c0f01dfa

Changed in magnum:
status: In Progress → Fix Committed
Adrian Otto (aotto)
Changed in magnum:
milestone: none → mitaka-1
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.