跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • [docker]给 tomcat 添加 volume 问题
未分類
17 2 月 2021

[docker]给 tomcat 添加 volume 问题

[docker]给 tomcat 添加 volume 问题

資深大佬 : pobing123 4

Hi, 准备给 tomcat 的容器增加一个 volume 来持久化配置

-v /root/cat9/conf/:/usr/local/tomcat/conf/ 

无法正常生成容器

换 docker-compose.yml

version: '3.8' # docker compose 版本和 docker 对应 services:     arcesb:      image: tomcat         volumes:          - /root/cat9/catconf/:/usr/local/tomcat/conf         ports:      - "10010:8080" 

也是无法运行容器。 非 java 开发者,请问有解决方案吗? 提前感谢

是 tomcat 的原因吗?是运行前,此文件件还没生成?

大佬有話說 (5)

  • 資深大佬 : lcdtyph

    什么叫“无法正常生成容器”?

    是生成了但是启动就退出,还是生成了启动了但是 tomcat 运行不正常,还是 docker 指令就报错了

    如果报错了,报的是什么错?

    还有这个 compose 文件的缩进是不是不太对

  • 主 資深大佬 : pobing123

    @lcdtyph 感谢指正。
    确实报错情况没有描述清楚。

    ~~~bash
    docker run -d -v /root/cat9/conf/:/usr/local/tomcat/conf/ tomcat
    ~~~
    比如上述命令,可以生成容器,马上就退出。但是状态是
    Exited (1) 6 seconds ago
    使用
    ~~~
    docker run c307f17c5c00
    ~~~
    也是无法运行。

    compose 文件在运行前有校验过,可能拷贝格式有变化。
    当然,compose 里的命令的和 docker run 中也相同,给一个 volume 而已。

  • 資深大佬 : Transbill

    docker logs 看下日志吧

  • 主 資深大佬 : pobing123

    @Transbill 感谢提供思路
    ~~~bash
    WARNING: Unable to load server configuration from [/usr/local/tomcat/conf/server.xml]
    java.io.FileNotFoundException: /usr/local/tomcat/conf/server.xml (No such file or directory)
    ~~~
    应该是创建容器是,宿主机的 volume 是空的,导致容器内配置错误,启动不起来。

    所以,请问大家,容器里 tomcat 的配置相关设置如何在容器运行之时,就 volume 到宿主机了?

    目前采用的方法,是先不加 volume 的运行,然后 docker cp 容器内的 tomcat 文件到宿主机。
    然后关闭,再重新加上 volume 运行一遍。

    明显这样做不优雅,有其他的办法,或者其他命令吗?刚学 docker 不久,命令不是很溜。

    再次感谢上两位。

  • 資深大佬 : Transbill

    @pobing123 不行,本地目录是空的挂到容器里,容器里面 /usr/local/tomcat/conf/目录就是空的,肯定启动不了

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具