Management tool of VirtualBox Volume for Docker
Project description
It provide function of mounting local directories on the VirtualBox instance with mount option. Using Docker Toolbox.
Install
Need Docker Toolbox.
$ pip install docker-volume
How to use it
Configuration
$REPO_ROOT/docker-volume.yml
volumes:
mysql:
hostpath: ${here}/../volumes/mysql/
vboxpath: /var/lib/mysql
uid: 0
gid: 0
dmode: 777
mongo:
hostpath: ${here}/../volumes/mongo/
vboxpath: /var/lib/mongo
uid: 0
gid: 0
dmode: 777
redis:
hostpath: ${here}/../volumes/redis/
vboxpath: /var/lib/redis
uid: 0
gid: 0
dmode: 777
Add volume
$ docker-volume add dev
EXECUTE: VBoxManage sharedfolder add dev --name docker-example_redis --hostpath /path/to/hostdir/volumes/redis
EXECUTE: VBoxManage sharedfolder add dev --name docker-example_mysql --hostpath /path/to/hostdir/volumes/mysql
EXECUTE: VBoxManage sharedfolder add dev --name docker-example_mongo --hostpath /path/to/hostdir/volumes/mongo
Mount volume
Start docker machine.
$ docker-machine start dev
(dev) Starting VM...
Machine "dev" was started.
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
mount volume.
$ docker-volume mount dev
EXECUTE: docker-machine ssh dev "sudo mkdir -p /var/lib/mysql && sudo mount -t vboxsf -o uid=0,gid=0,dmode=777 docker-example_mysql /var/lib/mysql"
EXECUTE: docker-machine ssh dev "sudo mkdir -p /var/lib/mongo && sudo mount -t vboxsf -o uid=0,gid=0,dmode=777 docker-example_mongo /var/lib/mongo"
EXECUTE: docker-machine ssh dev "sudo mkdir -p /var/lib/redis && sudo mount -t vboxsf -o uid=0,gid=0,dmode=777 docker-example_redis /var/lib/redis"
Make sure that it is mounted.
$ docker-machine ssh dev "mount | grep /var/lib"
/dev/sda1 on /mnt/sda1/var/lib/docker/aufs type ext4 (rw,relatime,data=ordered)
none on /var/lib/mongo type vboxsf (rw,nodev,relatime)
none on /var/lib/redis type vboxsf (rw,nodev,relatime)
none on /var/lib/mysql type vboxsf (rw,nodev,relatime)
Unmount volume
Unmount volume.
$ docker-volume unmount dev
EXECUTE: docker-machine ssh dev "sudo umount /var/lib/redis"
EXECUTE: docker-machine ssh dev "sudo umount /var/lib/mysql"
EXECUTE: docker-machine ssh dev "sudo umount /var/lib/mongo"
Make sure that it is unmounted.
$ docker-machine ssh dev "mount | grep /var/lib"
/dev/sda1 on /mnt/sda1/var/lib/docker/aufs type ext4 (rw,relatime,data=ordered)
Remove volume
Stop docker machine.
$ docker-machine stop dev
(dev) Stopping VM...
Machine "dev" was stopped.
Remove volume.
$ docker-volume remove dev
EXECUTE: VBoxManage sharedfolder remove dev --name docker-example_mongo
EXECUTE: VBoxManage sharedfolder remove dev --name docker-example_mysql
EXECUTE: VBoxManage sharedfolder remove dev --name docker-example_redis
Volume name
Volume name is ${REPOSITORY_DIRECTORY_NAME}_${VOLUME_NAME}.
Development
Source code repository: https://pypi.python.org/pypi/docker-volume
Maintenance status
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
docker-volume-0.1.dev2.tar.gz
(7.9 kB
view hashes)
Built Distribution
Close
Hashes for docker_volume-0.1.dev2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb99971e90e6a69f94f5ec05751099c40e46ce35e09a36ea17cb9c93ce0b2df4 |
|
MD5 | a53fd454d36e486f4a27c06de2f5ca53 |
|
BLAKE2b-256 | d1ae2609268cc4f9f1df8efd53866ad91af4fd582f8eae1ae88af77003f4936f |