I can not run the same script on different machines

I have made a docker environment to run my software.This software only provides versions on windows.So
I set up an wine environment based on alpine.While tests passed with this docker on my 2 different machines.
But it run so slow via this docker . And then ,I have moved this docker to another machine throgh docker export and docker impot .But this time, I cannot run it at all .
keyword:wine MGI zebracal
Have you met this error ? Three machines has different on cpu and cpu numbers .I can run it onIntel(R) Xeon(R) Gold 6132 CPU @ 2.60GHzwith 1 physical cpu. i cannot run it on Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz
with 4 physical cpus.

  1. I would never run Docker on Wine. If it is slow that is not a surprise.
  2. You should create a new container on each machine instead of exporting containers. docker export exports the filesystem only. You will lose the metadata like “CMD”. If you really want to move containers (not recommended) use docker commit to save the container as an image, docker save to export that image and docker load to import that image so you can use docker run to run a container from the new image.

Thank you for your reply.My English may not that good which may confuse you .I run a wine in a docker,not run docker in a wine :rofl: .And when I change the running threads of my software ,it runs well.Because this software was designed to run on windows such as some BGI-sequencer,these maches usually have single physical cpu.When I ignore the threads params,the software use all the cpu as it can ,So it occurs error on my 144-cpus machines.
It is also kind of you that you tell me how to migrate docker containers with docker save and docker load .
Best Wishes;
Jay

Thanks for the clarification! I understand that part of your question now, however I am more confused then before :smiley:

Do you mean it runs in the imported container too? I am trying to find how it is related to Docker. Can you share some commands or compose file how you run those containers and what is the difference between the working and the non-working containers?

OK.I should say i run it in container not in Docker.When i establish the enviroment .I quit the container ,and use
docker commit -m “fix some bugs” $containerid apline:bgi2
docker export apline:bgi2|tar -cf | pigz -c > work.tar.gz (maybe,it was a long time ago)
and i transfer work.tar.gz to another machine .then use
docker import work.tar.gz alpine:bgi2 .Then i go into the container,and change the threads.and save it use
docker commit -m “change threads” ${container_id} alpine:bgi3
And then I use alpine:bgi3 ,it works fine .

The problem was result in the software itself .not the container or docker :sleepy:

The difference between two machines was I change the threads .And I transfer the container between machines
using docker export and docker import and it works fine (after i change the threads). :grinning: