Windows Docker镜像构建之Oracle客户端
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,新版的Windows 2016已经支持原生Docker,现在也将部分服务往Docker上迁移进行测试。环境中有使用.net 3.5和.net 4.0以及有使用Oracle客户端,因此Web容器就需要安
千家信息网最后更新 2026年11月02日Windows Docker镜像构建之Oracle客户端
新版的Windows 2016已经支持原生Docker,现在也将部分服务往Docker上迁移进行测试。
环境中有使用.net 3.5和.net 4.0以及有使用Oracle客户端,因此Web容器就需要安装Oracle客户端
Dockerfile
FROM microsoft/iis# install .NET 3.5ADD sxs /sxsRUN Dism /online /enable-feature /featurename:NetFX3 /All /Source:C:\sxs /LimitAccess && del /S /Q C:\sxs# install ASP.NET 4.5RUN dism /online /enable-feature /all /featurename:NetFx4 /featurename:IIS-ApplicationInit /featurename:IIS-ASPNET45 /featurename:IIS-ASPNET /NoRestart# enable windows eventlogRUN powershell.exe -command Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\WMI\Autologger\EventLog-Application Start 1# set IIS log fieldsRUN /windows/system32/inetsrv/appcmd.exe set config /section:system.applicationHost/sites /siteDefaults.logFile.logExtFileFlags:"Date, Time, ClientIP, UserName, SiteName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, TimeTaken, ServerPort, UserAgent, Referer, HttpSubStatus" /commit:apphost# install Oracle ClientADD win64_11gR2_client.zip /win64_11gR2_client.zipADD unzip.exe /unzip.exeRUN /unzip.exe /win64_11gR2_client.zip && del /S /Q win64_11gR2_client.zipADD client.rsp /client/client.rspRUN /client/setup.exe -silent -force -noconsole -ignoreSysPrereqs -ignorePrereq -waitforcompletion -responseFile C:\client\client.rsp && del /S /Q client#RUN cacls c:\app /T /E /C /G users:r# deploy webapp#COPY publish /inetpub/wwwroot/html# set entrypoint scriptADD SetHostsAndStartMonitoring.cmd \SetHostsAndStartMonitoring.cmdENTRYPOINT ["C:\\SetHostsAndStartMonitoring.cmd"]# declare volumesVOLUME ["c:/inetpub/logs/LogFiles","C:/inetpub/wwwroot/html"]
Dockerfile涉及的文件内容有
sxs #在Windows Server 2016 安装包的\sources\sxs\目录
unzip.exe #Oracle Client客户端安装包的client\install目录下
win64_11gR2_client.zip #自行到官方下载
client.rsp #Oracle客户端安装响应文件
SetHostsAndStartMonitoring.cmd
client.rsp
oracle.install.responseFileVersion=http://www.oracle.com/2007/install/rspfmt_clientinstall_response_schema_v11_2_0ORACLE_HOSTNAME= UNIX_GROUP_NAME=INVENTORY_LOCATION=C:\Program Files\Oracle\InventorySELECTED_LANGUAGES=zh_CN,en ORACLE_HOME=C:\app\Administrator\product\11.2.0\client_1ORACLE_BASE=C:\app\Administratororacle.install.client.installType=Runtimeoracle.install.client.customComponents="oracle.precomp:11.2.0.1.0","oracle.ons:11.2.0.0.0","oracle.oraolap.mgmt:11.2.0.1.0","oracle.rdbms.scheduler:11.2.0.1.0"oracle.install.client.customComponents=oracle.install.client.oramtsPortNumber=49152oracle.install.client.schedulerAgentHostName=oracle.install.client.schedulerAgentPortNumber=
SetHostsAndStartMonitoring.cmd
echo %HOST% >>/Windows/System32/drivers/etc/hosts/windows/system32/inetsrv/appcmd.exe delete site "Default Web Site/"/windows/system32/inetsrv/appcmd.exe add apppool /name:"%site_name%" /managedRuntimeVersion:"v%site_version%.0" /managedPipelineMode:Classic -queueLength:65535/windows/system32/inetsrv/appcmd.exe add site /name:"%site_name%" /physicalPath:"c:\inetpub\wwwroot\html" -serverAutoStart:true /bindings:http://*:80 /windows/system32/inetsrv/appcmd.exe set site /site.name:"%site_name%" /[path='/'].applicationPool:"%site_name%"c:\ServiceMonitor.exe w3svc
文件中涉及到三个环境变量
HOST #因为windows Docker无法通过--add-host指host这里通过这种方法指host
site_name #站点域名
site_version #.net版本
Docker启动示例:
docker run -d -p 80 -e site_name=fengwan.blog.51cto.com -e site_version=4 -e host="192.168.2.2 db.51cto.com" -v c:/webroot/fengwan:c:/inetpub/wwwroot/html -v c:/logs:c:/inetpub/logs/logFiles p_w_picpath_name
客户
客户端
文件
环境
目录
三个
内容
变量
域名
官方
容器
方法
版本
示例
站点
部分
支持
服务
测试
镜像
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技官网
互联网络科技有限公司
互联网科技作文
以房互联网科技
互联网科技公司有哪些
互联网汽车科技小镇
农村开互联网科技讲堂
中国科技互联网公司收入
宁夏众和广鑫互联网科技有限公司
广州市恰铎互联网科技有限公司
健康食品互联网创新科技园项目
乌鲁木齐新华智原互联网科技学校
富国互联网金融科技混合基金
工业互联网科技创业
互联网科技平台产品运营
保山互联网科技靠谱吗
互联网科技品牌
青岛易易互联网科技
互联网金融金融科技
知域互联网科技有限公司官网
天津市摩尔互联网科技
科技与互联网
融贸通互联网科技
互联网科技论坛
科技大学互联网专业好不好
恒生科技互联网指数分析
北京市互联网新科技
四川互联网展示科技馆设计
扫呗互联网科技有限公司
马化腾互联网科技教学