java - JAR 在本地 ubuntu:16.04 中运行并正常工作,但无法在 docker 中运行相同的环境
问题描述
我有一个java脚本
- 从 Data/files.txt 读取数据
- 将 Data/files.txt 存储到 postgres
- 一旦存储成功,它会将数据下的文件移动到另一个文件夹 Move/files.txt
树是
App.jar
Data/files.txt
Move
设想:
本地。在主机中安装 postgres 并在它存储在 postgres 中的主机中运行 jar 并移动到目标文件夹
如果我在 docker 中运行它,它不起作用,但只显示 postgres 数据库连接成功
Dockerfile
FROM openjdk:8
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
CMD ["java", "-jar", "cdrt.jar"]
我为他们运行 docker-compose
postgres
pgadmin
java-console
java-console
在用户目录下挂载到我的主机中/usr/src/myapp
我住所有 3
- 应用程序.jar
- 日期/文件
- 移动
有人可以帮我吗?
docker-compose 日志 -f java
java-console | Connected to the PostgreSQL server successfully.
java-console | timer alrady set
java-console | ERROR: could not open file "/home/app/doc/kyc/kyc_sample.txt" for reading: No such file or directory
java-console | Hint: COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as psql's \copy.
java-console | Where: SQL statement "COPY cdr_kYC (
java-console | CUSTOMER_PROFILE_ID ,
java-console | msisdn ,
java-console | NATIONAL_ID ,
java-console | CUSTOMER_NAME ,
java-console | GENDER ,
java-console | DATE_OF_BIRTH ,
java-console | TRANSACTION_ID ,
java-console | PERMANENT_DISTRICT ,
java-console | PERMANENT_THANA ,
java-console | PERMANENT_ADDRESS ,
java-console | PRESENT_DISTRICT,
java-console | PRESENT_THANA ,
java-console | PRESENT_ADDRESS ,
java-console | CUSTOMER_EMAIL,
java-console | ENTRY_TYPE ,
java-console | SUBMIT_TIME ,
java-console | VERSION_TYPE
java-console | ) FROM '/home/app/doc/kyc/kyc_sample.txt'DELIMITER '|' CSV HEADER"
java-console | PL/pgSQL function cdr_kyc_record(text) line 31 at EXECUTE
解决方案
推荐阅读
- rust - 如何从`FnMut`闭包中返回捕获的变量,它同时是一个捕获者
- c++ - 无法绘制存储在向量中的 sf::RectangleShape (俄罗斯方块克隆)
- r - 尝试在 ifelse 语句中使用 Merge 两次
- excel - 将文本框从 PowerPoint 复制到 Excel
- c - 从链表中删除第一个节点并返回它而不分配或释放内存。(C 编程)
- d3.js - 无法将动画添加到 d3js 中的堆叠条形图?
- flutter - 如何在颤动中删除 pubspec.yaml 中指定的资产?
- python - 将数据帧的索引传递给函数
- keras - 将 tf.keras.layers 与 keras.model 一起使用
- javascript - 如何在反应图标文件悬停时删除标签?