docker运行容器远程挂载卷的方法

时间:2022-09-07 23:26:34

docker容器中卷的使用

docker运行容器远程挂载卷的方法

创建卷,卷本身有多种方式例如下面创建的几种:

下面是官方的基本步骤:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
创建一个卷:
$ docker volume create my-vol
查看:
 
$ docker volume ls
local        my-vol
查看卷的详情:
$ docker volume inspect my-vol
[
  {
    "Driver": "local",
    "Labels": {},
    "Mountpoint": "/var/lib/docker/volumes/my-vol/_data",
    "Name": "my-vol",
    "Options": {},
    "Scope": "local"
  }
]
移除卷:
$ docker volume rm my-vol

接下来在此基础上需要用到卷驱动,具体步骤如下:

安装vieux/sshfs作为卷驱动

?
1
2
# 卷插件安装
$ docker plugin install --grant-all-permissions vieux/sshfs

创建一个卷

其中sshcmd和password表示远程主机挂载点、和ssh登录密码

?
1
2
3
4
docker volume create --driver vieux/sshfs \
 -o sshcmd=192.168.5.106:/home/xzg\
 -o password=xzg\
 sshvolume

使用已有镜像,创建容器

?
1
2
3
4
5
6
7
8
9
10
#查看已有镜像:
[root@localhost docker]# docker images
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
nginx        latest       da5939581ac8    7 days ago     108MB
#使用本地镜像创建容器
docker run -d \
 -it \
 --name sshfs-container \
 --mount src=sshvolume,target=/app,type=volume,volume-driver=vieux/sshfs\
 da5939581ac8

进入容器中查看是否挂载成功

?
1
2
3
4
5
6
[root@localhost docker]# docker exec -it 228d13ee572a bash
root@228d13ee572a:/# ls
app bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
root@228d13ee572a:/# cd app/
root@228d13ee572a:/app# ls
a.txt docker

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://www.jianshu.com/p/e0e6df1115bf?utm_source=tuicool&utm_medium=referral