Docker将本地目录挂载到容器

Spring Wu 273 2021-02-03

背景

因为在服务器上安装了elasticsearch,还需要装一个ik插件到elasticsearch中去,如果直接去docker容器里面去安装该插件,肯定还需要很多额外操作,比如安装git、vim等等。很麻烦,所以不如直接在宿主机上挂载一个目录到容器中去。

options -v

命令如下:

docker run -d 
\ -v /home/es_config/plugins:/usr/share/elasticsearch/plugins 
\ -p 0.0.0.0:9200:9200 
\ -p 0.0.0.0:9300:9300 
\ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m"
\ --name=tensquare_es elasticsearch:5.6.13

其中-v /home/es_config/plugin:/usr/share/elasticsearch/plugin
冒号:前面是宿主机的文件夹地址,冒号:后面是docker容器中的文件夹地址。

test

测试一下是否挂载成功,首先在宿主机新建一个文件夹或一个文件:

进入容器查看文件是否存在:

然后在容器中删除该文件:

退出容器,看宿主机中的文件是否存在:

已经不在了。

OJBK