docker容器中的resources怎么直接映射到/home/l…/lxc347/boot resources 这个目录呢?也就是直接使用docker容器之外的目录

docker容器中的resources怎么直接映射到/home/lixiaochun/lxc347/boot resources 这个目录呢?也就是直接使用docker容器之外的目录

当前:在centos7中安装有docker
在docker创建有一个镜像admin 同时run了admin容器

在centos下/home/lixiaochun/lxc347/boot 有
1、deckerfile文件

  FROM openjdk:8
  ADD admin.jar boot.jar
  ADD resources /data/resources
  EXPOSE 30000
  ENTRYPOINT ["java","-jar", "/boot.jar"]

2、有resources 文件夹 内有一些静态文件及资源
3、有deploy.sh

  tag=admin:master_$(date +%Y%m%d%H%M)
  psName=admin
  docker build -t "$tag" .
  docker stop $psName || true && docker rm -f $psName || true
  docker run -d -p 30000:30000 --restart=always --name $psName $tag

4、有admin.jar

运行sh deploy.sh 项目正常运行
当yml设置base-path: /data/resources 时 项目运行全部正常

但是会有一个问题 毕竟容器是在docker里面 文件目录会越来越大 有没有办法把这个 /data/resources直接使用/home/lixiaochun/lxc347/boot resources 这个目录呢?

可以将容器中的文件目录指向其他路径。在创建容器时,可以使用 -v 或 --volume 参数来指定容器内的路径与宿主机上的路径之间的映射关系。
以下是一个示例命令,将容器内的 /data/resources 目录映射到宿主机上的 /home/lixiaochun/lxc347/boot/resources 目录:
docker run -v /home/lixiaochun/lxc347/boot/resources:/data/resources
这将使容器中的 /data/resources 目录直接使用宿主机上的 /home/lixiaochun/lxc347/boot/resources 目录,从而避免了文件目录在容器中增长导致占用过多的存储空间。