SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
FYI, docker works fine here on a stock slackware64-14.2 (32bit installs are not supported).
what I have done:
- installed google-go-lang from SBo (it has some files in /etc/profile.d that must be loaded so after installing it you have to logout/reboot);
- created the docker group as written in the docker's README on SBo and added my user to it (to be effective you have to logout/login again);
Code:
groupadd -r -g 281 docker
gpasswd -a myuser docker
- rebooted my host for the above stuff to be effective;
- installed docker from SBo;
- launched the daemon
Code:
/etc/rc.d/rc.docker start
- executed a shell in a docker container as a user
Code:
docker run -i -t vbatts/slackware bash
no issues at all with the device mapper
Code:
time="2016-07-06T09:51:42.351079422+02:00" level=info msg="Listening for HTTP on unix (/var/run/docker.sock)"
time="2016-07-06T09:51:50.926095771+02:00" level=info msg="Option DefaultDriver: bridge"
time="2016-07-06T09:51:50.926239853+02:00" level=info msg="Option DefaultNetwork: bridge"
time="2016-07-06T09:51:50.933023327+02:00" level=info msg="Firewalld running: false"
time="2016-07-06T09:51:51.002597887+02:00" level=warning msg="Your kernel does not support swap memory limit."
time="2016-07-06T09:51:51.004602053+02:00" level=info msg="Loading containers: start."
time="2016-07-06T09:51:51.004753259+02:00" level=info msg="Loading containers: done."
time="2016-07-06T09:51:51.004779799+02:00" level=info msg="Daemon has completed initialization"
time="2016-07-06T09:51:51.004799424+02:00" level=info msg="Docker daemon" commit=0a8c2e3 execdriver=native-0.2 graphdriver=devicemapper version=1.8.2
time="2016-07-06T10:05:55.996003425+02:00" level=info msg="POST /v1.20/containers/create"
time="2016-07-06T10:05:55.997953603+02:00" level=error msg="Handler for POST /containers/create returned error: No such image: vbatts/slackware (tag: latest)"
time="2016-07-06T10:05:55.997992645+02:00" level=error msg="HTTP Error" err="No such image: vbatts/slackware (tag: latest)" statusCode=404
time="2016-07-06T10:05:55.998300784+02:00" level=info msg="POST /v1.20/images/create?fromImage=vbatts%2Fslackware&tag=latest"
time="2016-07-06T10:06:06.950892591+02:00" level=info msg="POST /v1.20/containers/create"
time="2016-07-06T10:06:07.087045031+02:00" level=info msg="POST /v1.20/containers/725e2ffac0c59370cc62627b68614d9d1c0c595fcf717341dee73fc8d91e1e5b/attach?stderr=1&stdin=1&stdout=1&stream=1"
time="2016-07-06T10:06:07.090735234+02:00" level=info msg="POST /v1.20/containers/725e2ffac0c59370cc62627b68614d9d1c0c595fcf717341dee73fc8d91e1e5b/start"
time="2016-07-06T10:06:07.169060278+02:00" level=info msg="POST /v1.20/containers/725e2ffac0c59370cc62627b68614d9d1c0c595fcf717341dee73fc8d91e1e5b/resize?h=77&w=220"
Sadly the devicemapper output is not always helpful.
It is worth confirming the behavior on your machine the generic kernel as well (you'll need to make an initrd). I do not have this issue, and I also use the generic kernel.
Further, there are other storage drivers for Docker that I feel work better. I personally prefer btrfs. It requires making a partition mkfs.btrfs formatted partition mounted at /var/lib/docker. Overlayfs is also good, but has a couple edge cases that are less than ideal.
Further, there are other storage drivers for Docker that I feel work better. I personally prefer btrfs. It requires making a partition mkfs.btrfs formatted partition mounted at /var/lib/docker. Overlayfs is also good, but has a couple edge cases that are less than ideal.
Why do you believe that btrfs is a better storage driver for Docker than ext4?
I'm not claiming that it isn't; I'm curious what features btrfs provides that makes it better.
Why do you believe that btrfs is a better storage driver for Docker than ext4?
This isn't a comparison to ext4, it is a comparison to the docker devicemapper storage driver (https://github.com/docker/docker/tre...iver/devmapper).
A docker feature that is hidden in generic usage, when it defaults to using the 'devicemapper' storagedriver.
If you haven't manually created an lvm thinpool blocked device and configured docker's devicemapper driver to use it, then the driver defaults to creating flat files that it attaches to a loopback block device, and then uses these.
There are a number of moving parts, and in this most generic, default behavior, the performance is not great. At all.
As for the other storage drivers, none of them are "a clear winner".
'btrfs' is performant. But eventually folks say that after a while it slows a bit. Sometime ago the kernel's btrfs had issues (like a btree cksum corruption). Honestly I like it though, and haven't had much issues.
'overlay' - is great, but has edgecases. It's not technically POSIX compliant. The underlying FS ought to be ext4 or xfs. It handles unix sockets not straight-forward (due to opening it for a write causes a copy-up). There are behavior's about opening files for read, and while still holding the file-handle, when another file-handle is opened for write. Now you have open file-handles for two different inodes.
'aufs' - is only for ubuntu, and requires carried kernel-patches. Don't use this.
'zfs' - i hear good things. never used it. the zfs modules can be compiled and used without patching your kernel
'devicemapper' - it is enterpris'ie, but requires some hands on knowledge and management in-order to have a good experience.
Hi glands
Just for recording, I have the same scenario Slackware 14.2 64bits inside a VBox VM and has another way to make docker run by editing the file /etc/default/docker, adding the next line:
# Force OverlayFS for storage driver
DOCKER_OPTS="$DOCKER_OPTS -s overlay"
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.