Docker 运行的 应用程序无法连接Oracle数据库的解决办法

1. 最近公司使用docker化部署运行 app  发现一个部门的 多数据源取数的功能连接不上 oracle数据库 报错提示为:

2. 公司平台部同事给出两个解决方案:

https://blog.csdn.net/daane_liang/article/details/83990286

https://wangyh-87.iteye.com/blog/2168540

3. 因为我的container 已经部署了很多个增量了,为了简化处理, 我这边直接使用 docker commit 的部署形成性的 docker images

docker commit gscloud1906b301 gscloudtest

4. 然后使用新的 docker run 指令:

docker run 
-p 5003:5000 
-e DBConn_DbType="PgSQL" 
-e DBConn_Conn="SERVER=n/rOqGlg4LBWxOMZfROlA==;USER Id=+mNLiqQxngR3Lpedhhb7BQ==;SCHEMA=+mNLiqQxngR3Lpedhhb7BQ==;PASSWORD=KOCDhFZ0LmYbo73En6WVKQ==;connpooling=True;PoolSize=100" 
-e TZ=Asia/Shanghai 
-d --name gscloud1906b302  gscloudtest

5. 同事使用新的 5003 端口进行验证 问题解决.

6. 其实 dockerfile 里面增加一个 环境变量 应该也可以.

(这个我不是很清楚对不对)

FROM microsoft/dotnet:2.1-sdk

ENV MONO_VERSION 5.18.0.225

ENV TZ Aisa/Shanghai

WORKDIR /app
COPY gspcloud /app/
EXPOSE 5000 5000
WORKDIR /app/runtime/libs
ENTRYPOINT ["dotnet","Inspur.Ecp.Caf.Communication.Service.dll"]
原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/11118232.html