5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

docker-machineでvirtualboxに仮想マシンを作って再起動したらデータが消えたなとおもったら

Posted at

結論

/がtmpfs(RAMディスク)なので、再起動すると消える

概要

docker-machine upgradeするときの注意点 vagrant と busybox を使用している場合 - Qiita

上の記事を書いた時に、docker-machine upgrade したあとに、/home以下などが消えたように思ったので、調べてみた。

/home/docker 以下や、/usr/local/bin の下などが消えたが、作成したコンテナが残っていたので、何が消えるのか気になった。

確認

docker-machine create で仮想マシンから作る

以下のコマンドで仮想マシンを作成

docker-machine create -d virtualbox disktestremove

実際のログ

$ docker-machine create -d virtualbox disktestremove
Running pre-create checks...
Creating machine...
Waiting for machine to be running, this may take a few minutes...
Machine is running, waiting for SSH to be available...
Detecting operating system of created instance...
Provisioning created instance...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
To see how to connect Docker to this machine, run: docker-machine env disktestremove

docker-machine stop start

作成後sshしてみた

docker-machine ssh disktestremove

適当なファイルを、/home/docker以下に作る

docker@disktestremove:~$ touch create.txt
docker@disktestremove:~$ ls -l
total 4
-rw-r--r--    1 docker   staff            0 Jan  8 03:30 create.txt
-rw-r--r--    1 docker   staff           69 Jan  8 03:28 log.log
docker@disktestremove:~$

exitでぬけたあと、
docker-machine で stop start してみる。

docker-machine stop disktestremove
docker-machine start disktestremove

ファイルがない

docker@disktestremove:~$ ls -l
total 0

マシンの中から再起動

ファイルを作る

docker@disktestremove:~$ touch sudoreboot.txt
docker@disktestremove:~$ ls -l
total 0
-rw-r--r--    1 docker   staff            0 Jan  8 03:33 sudoreboot.txt

再起動

ファイルがない

docker@disktestremove:~$ ls -l
total 0

ファイルシステムを確認

/ 以下がどのようなファイルシステムか確認する。
tmpfs であることがわかる。

docker@disktestremove:~$ df -h
Filesystem                Size      Used Available Use% Mounted on
tmpfs                   896.6M    123.8M    772.8M  14% /
tmpfs                   498.1M         0    498.1M   0% /dev/shm
/dev/sda1                18.2G     44.5M     17.2G   0% /mnt/sda1
cgroup                  498.1M         0    498.1M   0% /sys/fs/cgroup
/dev/sda1                18.2G     44.5M     17.2G   0% /mnt/sda1/var/lib/docker/aufs

tmpfs であることがわかる。

/etc/fstab を確認

/ のファイルシステムは、/etc/fstabに書かれているわけではないようだ。
カーネルのオプションとか、コンパイル時組み込まれているのかは調べていない。

docker@disktestremove:~$ cat /etc/fstab
# /etc/fstab
proc            /proc        proc    defaults          0       0
sysfs           /sys         sysfs   defaults          0       0
devpts          /dev/pts     devpts  defaults          0       0
tmpfs           /dev/shm     tmpfs   defaults          0       0
/dev/zram0  swap         swap    defaults,noauto   0       0
/dev/sda1       /mnt/sda1       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sda2       none            swap     defaults             0 0 # Added by TC
/dev/sr0        /mnt/sr0        auto     noauto,users,exec    0 0 # Added by TC
5
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?