-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Aspnet dependencies problems #862
Comments
Yes some modules will need updating after this, like |
@cschuchardt88, after the last commit some additional .dlls appearing to be requested. neo> FATAL [19:29:17.243] System.IO.FileNotFoundException
Could not load file or assembly 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829...ch()
at System.Thr...eadStart()
Unhandled exception. System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
File name: 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
at Neo.Plugins.RpcServer.StartRpcServer()
at Neo.Plugins.RpcServerPlugin.OnSystemLoaded(NeoSystem system)
at Neo.NeoSystem..ctor(ProtocolSettings settings, String storageEngine, String storagePath) in /opt/neoLib/src/Neo/NeoSystem.cs:line 130
at Neo.CLI.MainService.Start(String[] args) in /opt/neoLib/src/Neo.CLI/CLI/MainService.cs:line 379
at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
/opt/start_node.sh: line 2: 100 Aborted (core dumped) dotnet neo-cli.dll |
Did you see #863? I'll fix this for good. With adding |
As of now you have to |
Still produced error |
Maybe these dependencies should go in the root directory, not the plugin one |
That may be possible, @shargon Lets migrate these modules asap because the problem would had appeared and the PR not merged until fixed. |
We can revert this PR until solve the dependency problem |
It is up to you. |
neo> System.ArgumentException: Value does not fall within the expected range.
at Neo.SmartContract.Contract.CreateMultiSigRedeemScript(Int32 m, IReadOnlyCollection`1 publicKeys) in /opt/neoLib/src/Neo/SmartContract/Contract.cs:line 106
at Neo.SmartContract.Contract.GetBFTAddress(IReadOnlyCollection`1 pubkeys) in /opt/neoLib/src/Neo/SmartContract/Contract.cs:line 152
at Neo.NeoSystem.CreateGenesisBlock(ProtocolSettings settings) in /opt/neoLib/src/Neo/NeoSystem.cs:line 140
at Neo.NeoSystem..ctor(ProtocolSettings settings, String storageEngine, String storagePath) in /opt/neoLib/src/Neo/NeoSystem.cs:line 122
at Neo.CLI.MainService.Start(String[] args) in /opt/neoLib/src/Neo.CLI/CLI/MainService.cs:line 379
at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
/opt/start_node.sh: line 2: 110 Aborted (core dumped) dotnet neo-cli.dll
root@b7aceb7a4027:/opt/node/Neo.CLI# @shargon, got this error when dlls were copied to neo-cli folder. |
That's seems a different error, maybe related to a mismatch between the config and data stored |
You are correct. In this last tests something got corrupted....Aheuahuea |
I see...aheuaheuaea |
I will do different here and re-run |
neo> FATAL [23:21:26.356] System.IO.FileNotFoundException
Could not load file or assembly 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829...ch()
at System.Thr...eadStart()
Unhandled exception. System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
File name: 'Microsoft.AspNetCore.Hosting, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
at Neo.Plugins.RpcServer.StartRpcServer()
at Neo.Plugins.RpcServerPlugin.OnSystemLoaded(NeoSystem system)
at Neo.NeoSystem..ctor(ProtocolSettings settings, String storageEngine, String storagePath) in /opt/neoLib/src/Neo/NeoSystem.cs:line 130
at Neo.CLI.MainService.Start(String[] args) in /opt/neoLib/src/Neo.CLI/CLI/MainService.cs:line 379
at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
/opt/start_node.sh: line 2: 126 Aborted (core dumped) dotnet neo-cli.dll Still the same errors |
fixed by neo-project/neo#3067 (review) |
Than your image is corrupt or install PS: nvm |
I did not understand. |
I was late to the party |
@vncoelho could you check if you copy the libraries to root\Plugins it works? if it works we should release the plugin with the libraries there |
This could break |
Because they use a different asp net core version? or why?
My worries is that we should not only fix the current |
Well |
If tomorrow you want to use I think that we should fix the plugin release, the problem is if they have a different version of the dependency, but this is easy to solve. |
ExampleProcess searching for
|
I think that we don't search in point 1, because the event is static (not related to MyPlugin) |
I tried to copy to the root path as well, Shargon, but I will try again with the dlls in the Plugins folder. I do not understand the limitations of the image, @cschuchardt88 . |
https://hub.docker.com/_/microsoft-dotnet-sdk/ I am currently using dotnet/aspnet: ASP.NET Core Runtime I tried with dotnet/runtime: .NET Runtime but it was even more error because it does not have ASP.NET |
Still error @shargon (without the PR that adds directly to neo-cli) Unhandled exception. NEO-CLI v3.6.2 - NEO v3.6.2 - NEO-VM v3.6.2
neo> System.TypeInitializationException: The type initializer for 'Neo.NeoSystem' threw an exception.
---> System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.Options, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
File name: 'Microsoft.Extensions.Options, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
at System.Reflection.RuntimeAssembly.GetExportedTypes()
at Neo.Plugins.Plugin.LoadPlugin(Assembly assembly) in /opt/neoLib/src/Neo/Plugins/Plugin.cs:line 158
at Neo.Plugins.Plugin.LoadPlugins() in /opt/neoLib/src/Neo/Plugins/Plugin.cs:line 190
at Neo.NeoSystem..cctor() in /opt/neoLib/src/Neo/NeoSystem.cs:line 110
--- End of inner exception stack trace ---
at Neo.NeoSystem.CurrentDomain_UnhandledException(Object sender, UnhandledExceptionEventArgs e) in /opt/neoLib/src/Neo/NeoSystem.cs:line 162
/opt/start_node.sh: line 2: 84 Aborted (core dumped) dotnet neo-cli.dll
root@ec4eb4fef6b8:/# |
Looks like there are some libraries missing there, options are added in the @cschuchardt88 pull request |
|
"And attack surface" |
What they are saying there is, The don't load the unnecessary libraries that aren't needed to run. Reason so you don't have bloatware dependencies that are not required to run |
@cschuchardt88, I am kind of naive in this C# frameworks and libraries. I am sorry for that. I am native from C++ and have developed on that for years. But that is not the reality now. The PR removing Aspnet just crashed the development. |
Its just my |
@vncoelho whats the problem again? |
@cschuchardt88, On the other hand, as you should know, this docker has historically been working and adapted for 6 years. # https://hub.docker.com/_/microsoft-dotnet-sdk/
FROM mcr.microsoft.com/dotnet/sdk:7.0.404-jammy
LABEL maintainer="NeoResearch"
# libleveldb-dev libsnappy-dev libc6-dev are used for testing Neo.Plugins.Storage.Tests
RUN apt-get update \
&& apt-get install -y zip libleveldb-dev libsnappy-dev libc6-dev
#==========================================================================
#============== CLONING NEO-CORE ===============================
# get repo, the arguments should be supplied when building using this Dockerfile
ARG NEO_BLOCKCHAIN_URL
ARG LOCAL_NEO_BLOCKCHAIN
RUN mkdir /opt/neoLib
RUN if [ "$LOCAL_NEO_BLOCKCHAIN" = "false" ] ; then (git clone $NEO_BLOCKCHAIN_URL /opt/neoLib); fi
ARG NEO_BLOCKCHAIN_BRANCH
ARG NEO_BLOCKCHAIN_COMMIT
RUN if [ "$LOCAL_NEO_BLOCKCHAIN" = "false" ] ; then (cd /opt/neoLib && git pull && git checkout $NEO_BLOCKCHAIN_BRANCH && git checkout $NEO_BLOCKCHAIN_COMMIT); fi
#==========================================================================
#==========================================================================
#==========================================================================
#============== CHANGING DOCKER FOLDER TO A LOCAL FILE ====================
ARG TEMP_LOCAL_NEO_LIB=/opt/tempLocal_neoLib
RUN mkdir $TEMP_LOCAL_NEO_LIB
ARG LOCAL_NEO_BLOCKCHAIN_URL
ADD $LOCAL_NEO_BLOCKCHAIN_URL $TEMP_LOCAL_NEO_LIB
RUN if [ "$LOCAL_NEO_BLOCKCHAIN" = "true" ] ; then (rm -rf /opt/neoLib/; mv $TEMP_LOCAL_NEO_LIB /opt/neoLib); fi
#==========================================================================
#==========================================================================
#RUN dotnet pack /opt/neoLib/src/Neo --configuration Release --output /opt/neoLib/out
#RUN dotnet pack /opt/neoLib/src/Neo.Json --configuration Release --output /opt/neoLib/out
#RUN dotnet pack /opt/neoLib/src/Neo.VM --configuration Release --output /opt/neoLib/out
#RUN dotnet pack /opt/neoLib/src/Neo.ConsoleService --configuration Release --output /opt/neoLib/out
#==========================================================================
#========================== ALL THE MAGIC IS HERE =========================
WORKDIR /opt/neoLib/src/Neo.CLI
RUN dotnet restore
RUN dotnet publish -c Release -f net7.0 --output ./
WORKDIR /
#==========================================================================
#==========================================================================
ARG NEO_BLOCKCHAIN_RUN_TESTS
#---------------------- NEO CORE LIB UNIT TESTS ---------------------------
WORKDIR /opt/neoLib
RUN if [ "$NEO_BLOCKCHAIN_RUN_TESTS" = "true" ] ; then (dotnet format --verify-no-changes --verbosity diagnostic); fi
RUN if [ "$NEO_BLOCKCHAIN_RUN_TESTS" = "true" ] ; then (dotnet test --verbosity n ./tests/Neo.ConsoleService.Tests/Neo.ConsoleService.Tests.csproj); fi
RUN if [ "$NEO_BLOCKCHAIN_RUN_TESTS" = "true" ] ; then (dotnet test --verbosity n ./tests/Neo.Json.UnitTests/Neo.Json.UnitTests.csproj); fi
RUN if [ "$NEO_BLOCKCHAIN_RUN_TESTS" = "true" ] ; then (dotnet test --verbosity n ./tests/Neo.UnitTests/Neo.UnitTests.csproj); fi
RUN if [ "$NEO_BLOCKCHAIN_RUN_TESTS" = "true" ] ; then (dotnet test --verbosity n ./tests/Neo.VM.Tests/Neo.VM.Tests.csproj); fi
WORKDIR /
#---------------------- NEO CORE LIB UNIT TESTS ---------------------------
#==========================================================================
#==========================================================================
#============= CLONING, PUBLISHING AND ADDING PLUGINS DLL'S ===============
RUN mkdir /opt/neo-modules
ARG NEO_PLUGINS_URL
ARG LOCAL_NEO_PLUGINS
RUN if [ "$LOCAL_NEO_PLUGINS" = "false" ] ; then (git clone $NEO_PLUGINS_URL /opt/neo-modules); fi
ARG NEO_PLUGINS_BRANCH
ARG NEO_PLUGINS_COMMIT
RUN if [ "$LOCAL_NEO_PLUGINS" = "false" ] ; then (cd /opt/neo-modules && git pull && git checkout $NEO_PLUGINS_BRANCH && git checkout $NEO_PLUGINS_COMMIT); fi
#--------------------------------------------------------------------------
#--------------------- CHANGE PLUGINS PATH TO LOCAL FILES -----------------
ARG LOCAL_NEO_PLUGINS_URL
RUN mkdir /opt/tempLocal_neo-modules
ADD $LOCAL_NEO_PLUGINS_URL /opt/tempLocal_neo-modules
RUN if [ "$LOCAL_NEO_PLUGINS" = "true" ] ; then (rm -rf /opt/neo-modules; mv /opt/tempLocal_neo-modules /opt/neo-modules); fi
#--------------------------------------------------------------------------
#-------- FILES FOR BUILDING & TESTING PUGLINS ----------------------------
ADD neo-modules-publish_scripts/build_plugin_3x.sh /opt/
ADD neo-modules-publish_scripts/test_plugin_3x.sh /opt/
ADD neo-modules-publish_scripts/buildAllList_Plugins_3x.sh /opt/
#--------------------------------------------------------------------------
#-------- PLUGINS TO BE PUBLISHED & TESTED ARE LISTED BELOW ---------------
ARG ENVFILE
ADD $ENVFILE /opt/env-repositories.sh
#--------------------------------------------------------------------------
RUN dotnet remove /opt/neo-modules/Directory.Build.props reference Neo
RUN dotnet add /opt/neo-modules/Directory.Build.props reference /opt/neoLib/src/Neo/Neo.csproj
RUN sed -i 's|\.\.\\neoLib\\src\\Neo\\Neo.csproj|/opt/neoLib/src/Neo/Neo.csproj|' /opt/neo-modules/Directory.Build.props
# STILL NEED TO DO THAT FOR CONSOLE SERVICE ON EACH CSPROJ for EACH PLUGIN
RUN mkdir /opt/neoLib/src/Neo.CLI/Plugins/
RUN /opt/buildAllList_Plugins_3x.sh
#==========================================================================
#==========================================================================
#============ COMPACT NEO-CLI IN A ZIP FILE ==============================
WORKDIR /opt/neoLib/src/
RUN zip -r /opt/neo-cli-built.zip Neo.CLI
#==========================================================================
# ALL NIGHT LONG - STAY ALIVE
ENTRYPOINT ["tail", "-f", "/dev/null"] # https://github.com/neo-project/neo/commits/master
NEO_BLOCKCHAIN_URL=https://github.com/neo-project/neo.git
NEO_BLOCKCHAIN_BRANCH=master
NEO_BLOCKCHAIN_COMMIT=87863c6236d60cf3f7e85b90cf7bcbbd898036ae
# https://github.com/neo-project/neo-modules/commits/master
NEO_PLUGINS_URL=https://github.com/cschuchardt88/neo-modules.git
NEO_PLUGINS_BRANCH=RestServer
NEO_PLUGINS_COMMIT=26170fc
LOCAL_NEO_BLOCKCHAIN="false"
LOCAL_NEO_BLOCKCHAIN_URL="localfiles/neo"
LOCAL_NEO_PLUGINS="false"
LOCAL_NEO_PLUGINS_URL="localfiles/neo-modules"
PLUGINS_LIST_NEO_PACKAGE=(ApplicationLogs LevelDBStore MPTTrie OracleService RocksDBStore RpcClient RestServer RpcServer SQLiteWallet StateService StatesDumper TokensTracker DBFTPlugin)
PLUGINS_UT_LIST=(Neo.Cryptography.MPTTrie.Tests Neo.Network.RPC.Tests Neo.Plugins.OracleService.Tests Neo.Plugins.RpcServer.Tests Neo.Plugins.Storage.Tests)
NEO_BLOCKCHAIN_RUN_TESTS="true"
PLUGINS_RUN_TESTS="true" #!/bin/bash
PLUGIN_TO_INCLUDE=1
function usage {
echo "Usage: $0 [--plugin-name <plugin to build> --delete-neo-ref <bool>]"
}
while [[ "$#" > 0 ]]; do case $1 in
-h)
usage
exit 0
;;
--plugin-name)
echo "GETTING PLUGIN NAME AS PARAMETER $2";
PLUGIN_TO_INCLUDE=$2
shift; shift
;;
*)
usage
exit 1
;;
esac;
done
echo "GOING TO PUBLISH $PLUGIN_TO_INCLUDE..."
echo ""
(cd /opt/neo-modules/src/$PLUGIN_TO_INCLUDE; dotnet restore)
(cd /opt/neo-modules/src/$PLUGIN_TO_INCLUDE; dotnet publish -c Release -f net7.0 -o app)
ls -R /opt/neo-modules/src/$PLUGIN_TO_INCLUDE
ORIGIN_PATH=/opt/neo-modules/src/$PLUGIN_TO_INCLUDE/app
echo "GOING TO CHECK CREATED DLL $PLUGIN_TO_INCLUDE..."
echo ""
if [ ! -f $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll ]; then
echo "PLUGIN DLL File does not exist at $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll"
exit 1
fi
DEST_FOLDER=/opt/neoLib/src/Neo.CLI/Plugins/$PLUGIN_TO_INCLUDE/
mkdir $DEST_FOLDER
echo "GOING TO COPY DEPENDENCIES (IF NEEDED - CURRENTLY JUST ORACLE SERVICES)"
echo ""
# =========================================================
# cp -ri $ORIGIN_PATH/*.dll $DEST_FOLDER
# =========================================================
# OR COPY MANUALLY - TODO FOR SQLIT PLUGIN
if [ $PLUGIN_TO_INCLUDE = "OracleService" ]; then
echo "Going to copy file $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll TO $DEST_FOLDER - and some other dependencies"
cp -ri $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Neo.FileStorage.API.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.Net.Common.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.Net.ClientFactory.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.Net.Client.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.Core.Api.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.AspNetCore.Server.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Grpc.AspNetCore.Server.ClientFactory.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Google.Protobuf.dll $DEST_FOLDER
fi
if [ $PLUGIN_TO_INCLUDE = "RestServer" ]; then
echo "Going to copy file $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll TO $DEST_FOLDER - and some other dependencies"
cp -ri $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Microsoft.AspNetCore.JsonPatch.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Microsoft.AspNetCore.Mvc.NewtonsoftJson.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Microsoft.OpenApi.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Swashbuckle.AspNetCore.Swagger.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Swashbuckle.AspNetCore.SwaggerGen.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/Swashbuckle.AspNetCore.SwaggerUI.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/*.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/RestServer.xml $DEST_FOLDER
fi
if [ $PLUGIN_TO_INCLUDE = "RpcServer" ]; then
echo "Going to copy file $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll TO $DEST_FOLDER - and some other dependencies"
cp -ri $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll $DEST_FOLDER
cp -ri $ORIGIN_PATH/*.dll /opt/neoLib/src/Neo.CLI/Plugins
fi
echo "GOING TO COPY DLL ITSELF"
echo ""
if [ $PLUGIN_TO_INCLUDE != "OracleService" ]; then
echo "Going to copy file /opt/neo-modules/src/$PLUGIN_TO_INCLUDE/app/$PLUGIN_TO_INCLUDE.dll TO /opt/neoNode/neo-cli/Plugins/"
cp -ri $ORIGIN_PATH/$PLUGIN_TO_INCLUDE.dll $DEST_FOLDER
fi The generated .zip is usually run with: # NEO csharp-nodes network simulator
# https://hub.docker.com/_/microsoft-dotnet-aspnet/
FROM mcr.microsoft.com/dotnet/aspnet:7.0.14-jammy
LABEL maintainer="NeoResearch"
LABEL authors="imcoelho,vncoelho"
RUN apt-get update && apt-get install -y --no-install-recommends \
unzip \
screen \
expect \
libleveldb-dev \
wget \
curl \
nano \
iputils-ping \
net-tools \
iptables \
psmisc \
tcpdump \
iproute2 \
&& rm -rf /var/lib/apt/lists/*
# Add the neo-cli package
ADD ./neo-cli.zip /opt/neo-cli.zip
# Extract and prepare four consensus nodes
RUN unzip -q -d /opt/node /opt/neo-cli.zip
#Script used to start nodes on screen sessions
ADD ./scripts/run.sh /opt/
#Script used to simple start RPC
ADD ./scripts/start_node.sh /opt/
#Script used to modify neo-cli protocol characteristcs - currently, change secondsperblock
#ADD ./scripts/updateConsensusCharacteristics.sh /opt/
# On docker run, start the consensus nodes
CMD ["/bin/bash", "/opt/run.sh"] |
Notes:
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS Build
COPY neo /neo
COPY neo-modules /neo-modules
WORKDIR /neo
RUN dotnet restore
RUN dotnet publish src/Neo.CLI --framework net7.0 --no-restore --configuration Release --output /app
COPY libs /app
WORKDIR /neo-modules
RUN dotnet restore
RUN dotnet publish ./src/RestServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/RestServer
RUN dotnet publish ./src/RpcServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/RpcServer
RUN dotnet publish ./src/WebSocketServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/WebSocketServer
RUN dotnet publish ./src/LevelDBStore --framework net7.0 --no-restore --configuration Release --output /app/Plugins/LevelDBStore
FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS Final
RUN apt-get update && apt-get install -y \
screen \
libleveldb-dev \
libsqlite3-dev
RUN rm -rf /var/lib/apt/lists/*
WORKDIR /neo
COPY --from=Build /app .
# RestServer
EXPOSE 10339/tcp
# Node Procotol
EXPOSE 10333/tcp
# RPC Server
EXPOSE 10332/tcp
# WebSocket Server
EXPOSE 10340/tcp
ENTRYPOINT ["screen", "-DmS", "node", "dotnet", "neo-cli.dll", "-r"]
|
@cschuchardt88, I see that the main difference from this docker you send above is:
The |
you dont need them
|
Ok, @cschuchardt88 |
In additional, with this command Publishing direct to RUN dotnet publish ./src/RestServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/RestServer
RUN dotnet publish ./src/RpcServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/RpcServer
RUN dotnet publish ./src/WebSocketServer --framework net7.0 --no-restore --configuration Release --output /app/Plugins/WebSocketServer
RUN dotnet publish ./src/LevelDBStore --framework net7.0 --no-restore --configuration Release --output /app/Plugins/LevelDBStore The .zip of the |
We make this full client available and use in other projects as well. |
HERE IS AN EXAMPLEDownload neo-docker.zip Directory Structure
|
I do not see .dlls in this file you sent |
Run this in docker build --no-cache -t neo-docker .
docker run --rm -d --network bridge -p 10339:10339 -p 10333:10333 -p 10332:10332 -p 10340:10340 --name test-neo-cli neo-docker |
Add me in discord |
The main error was an auto injection from sqlitewallet module/plugin |
After neo-project/neo#3065
There should be other places to fix as well
The text was updated successfully, but these errors were encountered: