jasonbrooks / byo-atomic

29 stars 19 forks source link

Unable to compose tree #12

Closed gbraad closed 8 years ago

gbraad commented 8 years ago

I just generated the container using the Dockerfile and I open an interactive bash to compose the tree...

$ docker exec -it atomicrepo bash
[root@cbfa0b3ed4db working]# rpm-ostree compose tree  --proxy=http://127.0.0.1:8123  --repo=/srv/repo sig-atomic-buildscripts/centos-atomic-host.json
No previous commit for centos-atomic-host/7/x86_64/standard

Downloading metadata: [==                                                                                                                                                                                                                                 ]   1%
rpm-ostree: relocation error: /usr/lib64/rpm-ostree/libhif.so.3: symbol solv_extend_realloc, version SOLV_1.0 not defined in file libsolv.so.0 with link time reference
[root@cbfa0b3ed4db working]# rpm-ostree compose tree  --proxy=http://127.0.0.1:8123  --repo=/srv/repo fedora-atomic/fedora-atomic-docker-host.json
No previous commit for fedora-atomic/f23/x86_64/docker-host
BDB2053 Freeing read locks for locker 0x2: 22/139921609390080
BDB2053 Freeing read locks for locker 0x5: 22/139921609390080
BDB2053 Freeing read locks for locker 0x7: 22/139921609390080
BDB2053 Freeing read locks for locker 0x9: 22/139921609390080
BDB2053 Freeing read locks for locker 0xb: 22/139921609390080
BDB2053 Freeing read locks for locker 0xd: 22/139921609390080
BDB2053 Freeing read locks for locker 0xf: 22/139921609390080
BDB2053 Freeing read locks for locker 0x11: 22/139921609390080
BDB2053 Freeing read locks for locker 0x13: 22/139921609390080
BDB2053 Freeing read locks for locker 0x15: 22/139921609390080
BDB2053 Freeing read locks for locker 0x17: 22/139921609390080
BDB2053 Freeing read locks for locker 0x19: 22/139921609390080
BDB2053 Freeing read locks for locker 0x1b: 22/139921609390080
BDB2053 Freeing read locks for locker 0x1d: 22/139921609390080
BDB2053 Freeing read locks for locker 0x1f: 22/139921609390080
BDB2053 Freeing read locks for locker 0x21: 22/139921609390080
BDB2053 Freeing read locks for locker 0x23: 22/139921609390080
BDB2053 Freeing read locks for locker 0x25: 22/139921609390080
BDB2053 Freeing read locks for locker 0x27: 22/139921609390080

Downloading metadata: [===================================================================================================================================================================================================================================] 100%
rpm-ostree: relocation error: /usr/lib64/rpm-ostree/libhif.so.3: symbol solv_extend_realloc, version SOLV_1.0 not defined in file libsolv.so.0 with link time reference
jasonbrooks commented 8 years ago

Hey @gbraad, I just tried reproducing this and didn't get the error. I'm running docker on f24, I don't know if that makes a difference... What distro are you using?

gbraad commented 8 years ago

Docker engine (v1.11.1 from docker.io) on CentOS 7.2, running as an instance on OpenStack Mitaka (KVM)

jasonbrooks commented 8 years ago

I'll try that out -- I always use the distro-provided docker, it's better tested.

gbraad commented 8 years ago

This is how Kolla rolls... but I will certainly try other combinations after the weekend. I'll keep you up-to-date...

jasonbrooks commented 8 years ago

Do they use loopback storage, too? I just installed docker.io docker on centos, and that's what they give you. See http://www.projectatomic.io/blog/2015/06/notes-on-fedora-centos-and-docker-storage-drivers/

There's docs for setting up storage correctly w/ docker-engine here: https://docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/

jasonbrooks commented 8 years ago

OK, so, CentOS 7 w/ docker-engine-1.11.2-1.el7.centos.x86_64 and storage configured as linked above is working for me. Whenever I see an issue, and loopback storage is in the mix, I always suspect that, because it's crappy.

It'd be awesome if Docker linked to their devicemapper docs in the CentOS install instructions. In fedora/centos/rhel-shipped docker, there's a script, docker-storage-setup, that automates the storage config.

gbraad commented 8 years ago

I was aware of some of the issues with devicemapper, but hadn't though this would be caused by it. I added --storage-driver=overlay to /usr/lib/systemd/system/docker.service... and yes, this seems to be resolved. :-s

gbraad commented 8 years ago

And I'll look into the use of loopback with Kolla. I do not remember them changing any of the defaults, besides previously adding 'MountFlags=shared'.

gbraad commented 8 years ago

I check it for Kolla and https://github.com/openstack/kolla/blob/479862932c2db33b789682d2042d0a283abcccd0/tools/setup_RedHat.sh does:

# Setup Docker
sudo sed -i -r 's,(ExecStart)=(.+),\1=/usr/bin/docker daemon --storage-driver btrfs,' /usr/lib/systemd/system/docker.service
sudo sed -i 's|^MountFlags=.*|MountFlags=shared|' /usr/lib/systemd/system/docker.service
jasonbrooks commented 8 years ago

Maybe it's a btrfs thing. There was this issue w/ btrfs and rpm: https://bugzilla.redhat.com/show_bug.cgi?id=1213602. That's dealt with w/ a yum plugin, I can't tell it that carries over to dnf at all --> ah, nevermind, I'm getting overlayfs and btrfs mixed up.

gbraad commented 8 years ago

Thanks for your help. Finally able to move forward with ostree.