Restart the container or composer?
On this question, I found the answer, just run the following code …
docker-compose up --detach --build
I changed the folder amazenametos to the Azure Blob - ok
ASSETSTORE__TYPE=AzureBlob
ASSETSTORE__AZUREBLOB__CONNECTIONSTRING=…
I’ve alter the upload to
- ASSETS__MAXSIZE=104857600
But even alerting the size of the upload, I still get the message …
Being that the file that I am uploading has 3.78 MB, which in theory is still within the standard size that is 5 MB
This is an nginx error. I will have a look what you have to configure there and ensure that the setup process is smoother.
The default docker config uses nginx with some default settings and the default option for nginx is 1MB upload size.
You can change it with client_max_body_size 1g
for example.
I created an own dockerfile for the proxy where I overwrite a settings: https://github.com/Squidex/squidex-docker/blob/master/standalone/proxy/Dockerfile
You could do the same and overwrite this setting. It would be great if we could make this dockerfile configurable with environment variable and then using a single variable in the .env file to overwrite the setting from nginx and Squidex.
Some help would be very welcome
Even with all the changes above, I am unable to upload files beyond 1MB. I added it to the docker-compose and the nginx my_proxy.conf but no luck so far.
The error is still “Asset is too big”
It is very likely that you have done something wrong then. It has been asked a few days ago as well if I remember correctly.
I am using the nginx-proxy. I could even get it to work via the Dashboard, but uploads via the .NET SDK still fail.
That’s weird, it is the same endpoint. What exception do you get in the SDK?
Asset exceeds the maximum size.
Status: 400
The 400 error message is bad, it comes from the generated code. It means that you have exceeded the included storage contingent in the cloud.
Usually you get a 413 for too big assets.
Its the self-hosted version
Yes, I understand that. Do you get a error dto in your object? It is a message showing the details.
Which version do you use? Can you show me your code?
Client Version: 5.5
Code:
private IAssetsClient _assetClient => _clientManager.CreateAssetsClient(); private AssetDto CreateAndUploadAsset(Stream content, Guid? parentId) { return AsyncHelper.RunSync(() => _assetClient.PostAssetAsync("xxx", content, parentId)); } public AssetDto CreateAndUploadPartnerAsset(Stream content) { return CreateAndUploadAsset(content, Guid.Parse("d607288f-f993-4d09-b961-be2bd7a1b22c")); }
Exception Message:
Asset exceeds the maximum size.
Status: 400
Response:
Stacktrace:
at Squidex.ClientLibrary.Management.AssetsClient.<PostAssetAsync>d__21.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at xxxx.Common.AsyncHelper.RunSync[TResult](Func
1 func) in C:\Projects\xxxx\AsyncHelper.cs:line 17
at xxxx.Models.Logic.SquidexCmsLogic.CreateAndUploadAsset(Stream content, Nullable`1 parentId) in C:\Projects\xxxx\Logic\Impl\SquidexCmsLogic.cs:line 142
at xxxx.Logic.SquidexCmsLogic.CreateAndUploadPartnerAsset(Stream content) in C:\Projects\xxxx\Logic\Impl\SquidexCmsLogic.cs:line 147
at SolverAndScoreAppointmentPlanningTester.Program.Main(String[] args) in C:\Projects\xxxx\SolverAndScoreAppointmentPlanningTester\Program.cs:line 295
I think your problem has nothing to do with the asset size.
The problem on my side is the descriptions that are generated by the SDK. At the beginning I made them very specific and then more and more error cases were introduced and the specific messages do not match anymore.
What kind of exception do you? if you get a SquidexManagementException you should get the details from the error dto using the debugger.
Can you also open the details? It is a bug, but only that the exception message is too specific.
I think exception.ToString() should also show a lot.
Furthermore you can enable ReadResponseAsString
via the response to get the response string in the exception, but this will hurt performance.
I think exception.ToString() should also show a lot.
Validation error: Request body has an invalid format.
HTTP Response:
Squidex.ClientLibrary.Management.SquidexManagementException`1[Squidex.ClientLibrary.Management.ErrorDto]: Asset exceeds the maximum size.
Status: 400
Response:
at Squidex.ClientLibrary.Management.AssetsClient.<PostAssetAsync>d__21.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at xxxx.Common.AsyncHelper.RunSync[TResult](Func`1 func) in C:\Projects\xxxx\xxxx.Common\AsyncHelper.cs:line 17
at xxxx.Models.Logic.SquidexCmsLogic.CreateAndUploadAsset(Stream content, Nullable`1 parentId) in C:\Projects\xxxx\xxxx.Models\Logic\Impl\SquidexCmsLogic.cs:line 142
at xxxx.Models.Logic.SquidexCmsLogic.CreateAndUploadPartnerAsset(Stream content) in C:\Projects\xxxx\xxxx.Models\Logic\Impl\SquidexCmsLogic.cs:line 147
at SolverAndScoreAppointmentPlanningTester.Program.Main(String[] args) in C:\Projects\xxxx\SolverAndScoreAppointmentPlanningTester\Program.cs:line 295
Please use version 5.4.
5.5. has a bug, I can reproduce it.