adlogix / docker-machine-nfs

Activates NFS on docker-machine
MIT License
794 stars 104 forks source link

NFS mount verification fails #12

Closed haggen closed 8 years ago

haggen commented 8 years ago

Strange thing is it has worked before, but not anymore.

[INFO] machine presence ...             OK 
[INFO] machine running ...          OK 
[INFO] Lookup mandatory properties ...      OK 

    - Machine IP: 192.168.99.100 
    - Machine VBOXNET name: vboxnet0 
    - Machine VBOXNET ip: 192.168.99.1 

[INFO] Configure NFS ... 

 !!! Sudo will be necessary for editing /etc/exports !!! 
Password:
                        OK 
[INFO] Configure Boot2Docker ...        OK 
[INFO] Restart   Boot2Docker ...        OK 
[INFO] Verify NFS mount ...             FAIL

Cannot detect the NFS mount :( 

My versions:

docker-machine version 0.4.1 (e2c88d6)
Docker version 1.8.1, build d12ea79

I'm on OS X 10.11.1 Beta.

tonivdv commented 8 years ago

Hey @haggen ,

When you do docker-machine ssh [machine-name] df does it display a mount on /Users ?

If it does, then it just means the nfs mount was not yet operational during the check.

Let me know.

Cheers

haggen commented 8 years ago

Oh I'm sorry but I went ahead and recreated the machine. Now it worked. :)

Anyway if it happen again I'll try the df and report back.

Thanks a bunch!

phpguru commented 8 years ago
bash-3.2$ df
Filesystem    512-blocks      Used Available Capacity  iused    ifree %iused  Mounted on
/dev/disk1     487830528 102052984 385265544    21% 12820621 48158193   21%   /
devfs                364       364         0   100%      630        0  100%   /dev
map -hosts             0         0         0   100%        0        0  100%   /net
map auto_home          0         0         0   100%        0        0  100%   /home

It worked last Friday, but after rebooting today, it won't.

What should df output look like on docker-machine ssh?

phpguru commented 8 years ago

After rebooting, restarting docker-machine and launching a container, when I tried running docker-machine-nfs it says NFS already mounted, but df output looks the same as above.

tonivdv commented 8 years ago

@phpguru That's odd that it says NFS already mounted if df in the machine box is not displaying /Users. You sure you typed from the host docker-machine ssh [box] df ?

phpguru commented 8 years ago

It's probably this simple: I was running docker-machine-nfs default on a the default container a 2nd time... in other words, what I realized is that once you run docker-machine-nfs [box] once, you do not need to do this again for [box], even after reboot, etc. Is that right?

Before, I was doing (misunderstood your directions) docker-machine ssh (or just clicked over to the docker quickstart terminal) and ran df on there.

Here's the output of docker-machine ssh default df

SSH cmd error!
command: df
err    : exit status 1
output : Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                  1845704    115072   1730632   6% /
tmpfs                  1025388       256   1025132   0% /dev/shm
/dev/sda1             19049892   5663972  12395196  31% /mnt/sda1
cgroup                 1025388         0   1025388   0% /sys/fs/cgroup
192.168.99.1:/Users  243915264  52613504 191045760  22% /Users
/dev/sda1             19049892   5663972  12395196  31% /mnt/sda1/var/lib/docker/aufs
none                  19049892   5663972  12395196  31% /mnt/sda1/var/lib/docker/aufs/mnt/addb0eb35ff98c4d42d03e120ddb4e31400443a27fb98943d456ae70501e66ad
df: /var/run/docker/netns/addb0eb35ff9: Permission denied
tonivdv commented 8 years ago

@phpguru Aaah yes, you don't have to run this multiple times on the box. Once it's configured it's done. However should there be any issue, there is the --force flag which will re-configure the box.

The output of the df is correct, as you can see the line

192.168.99.1:/Users 243915264 52613504 191045760 22% /Users

It means the mount worked like a charm :)

haggen commented 8 years ago

Just happened to me again. I had to restart due to an update on OS X, I started the docker-machine and then couldn't see files inside mounted volumes.

When I checked docker-machine ssh dev df:

Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                   918140    115064    803076  13% /
tmpfs                   510076         0    510076   0% /dev/shm
/dev/sda1             19049892   3491572  14567596  19% /mnt/sda1
cgroup                  510076         0    510076   0% /sys/fs/cgroup
/dev/sda1             19049892   3491572  14567596  19% /mnt/sda1/var/lib/docker/aufs

I proceeded to run docker-machine-nfs again and then df again.

Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                   918140    115064    803076  13% /
tmpfs                   510076         0    510076   0% /dev/shm
/dev/sda1             19049892   3491584  14567584  19% /mnt/sda1
cgroup                  510076         0    510076   0% /sys/fs/cgroup
/dev/sda1             19049892   3491584  14567584  19% /mnt/sda1/var/lib/docker/aufs

It was working minutes before the restart.

tonivdv commented 8 years ago

Hello @haggen ,

Makes me think of an issue I had with a co-dev's computer. The thing is that the nfs couldn't connect to the host. Only a reboot of the Mac made it work again. Not sure if it's a docker-machine or mac nfs issue.

Were you able to get it working again?

haggen commented 8 years ago

H @tonivdv,

Actually yes, I ran docker-machine-nfs again after a 5 minute break and then it worked.

Thanks!

tonivdv commented 8 years ago

:+1:

haggen commented 8 years ago

Happened again, I rebooted the OS X, docker-machine started without NFS share and I had to run the script twice to make it work.

Is this expected, should I collect more information ?

Just letting you know.

tonivdv commented 8 years ago

Hello @haggen ,

Normally once the script has been applied on the machine it should not be done anymore because the machine is already configured. What I suspect is a nfs connection issue/slowdown between host and guest.