﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">docker. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=docker&amp;type=forum</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-08T16:39:10Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=docker&amp;type=forum" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/14971/</id>
    <title type="text">Прошу помощи с контейнеризацией</title>
    <published>2021-01-09T13:58:31Z</published>
    <updated>2021-01-11T11:26:17Z</updated>
    <author>
      <name>Павел</name>
      <uri>https://stocksharp.ru/users/114168/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Transaq" />
    <category term="docker" />
    <category term="txmlconnector" />
    <content type="html">&lt;p&gt;Здравствуйте!&lt;/p&gt;
&lt;p&gt;Написал робота на последней версии S#. Использую &lt;em&gt;Transaq Connector&lt;/em&gt;. Пытаюсь завернуть приложение в контейнер Docker. Локально, без контейнера, все работает отлично. Но при попытке соединения в приложении в контейнере выдает ошибку. Приходит exception на событие &lt;em&gt;Connector.ConnectionError:&lt;/em&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Error load library txmlconnector.dll. (Parameter 'dllPath')
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;   at Ecng.Interop.Marshaler.LoadLibrary(String dllPath)
   at Ecng.Interop.DllLibrary..ctor(String dllPath)
   at #=z$v7B9Iu3PqOtBWiwGjTeuTIBQG7A..ctor(String #=zWUnOCRY=, #=zGon05jN$zqu0 #=z$SosFX8=)
   at #=zfFAR89tKbzSwRbMRwZT08jN8htD7UjYzvw==..ctor(Action`1 #=z$SosFX8=, Action`1 #=zuVX1g4Bj32l1, String #=zWUnOCRY=, Boolean #=z1BrZqexflzIZ, Boolean #=zpNZ3xedpXleK, String #=zEYFvlw2lUDMt, ApiLogLevels #=z9eSLFMNKlQa7)
   at StockSharp.Transaq.TransaqMessageAdapter.#=zAxO2KDE=()
   at StockSharp.Transaq.TransaqMessageAdapter.OnSendInMessage(Message message)
   at StockSharp.Messages.MessageAdapter.SendInMessage(Message message)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;em&gt;Dockerfile&lt;/em&gt; стандартный:&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code&gt;
FROM mcr.microsoft.com/dotnet/runtime:5.0 AS base
WORKDIR C:/app

FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR C:/src
COPY [&amp;quot;OrdersExecutor.csproj&amp;quot;, &amp;quot;&amp;quot;]
RUN dotnet restore &amp;quot;./OrdersExecutor.csproj&amp;quot;
COPY . .
WORKDIR &amp;quot;C:/src/.&amp;quot;
RUN dotnet build &amp;quot;OrdersExecutor.csproj&amp;quot; -c Release -o C:/app/build

FROM build AS publish
RUN dotnet publish &amp;quot;OrdersExecutor.csproj&amp;quot; -c Release -o C:/app/publish

FROM base AS final
WORKDIR C:/app
RUN dir
COPY --from=publish C:/app/publish .
ENTRYPOINT [&amp;quot;dotnet&amp;quot;, &amp;quot;OrdersExecutor.dll&amp;quot;]
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Пробовал запускать на разных runtime (nano, core), не помогает. Код, собранный в конейнере (и выдернутый из него), запускается на локальной машине отлично. Т.е. проблема именно в среде выполнения и методе загрузки &lt;em&gt;txmlconnector.dll&lt;/em&gt;. Исходников &lt;em&gt;Ecng.Interop&lt;/em&gt;, чтобы подсмотреть, у меня нет и я не знаю куда копать. Помогите!&lt;/p&gt;
</content>
  </entry>
</feed>