Open ismorphism opened 5 years ago
@morphism90 : Can you try to pass --user-id 1001
as a parameter to aicrowd-repo2docker
?
Thanks, it helped but now I face the communication problem between terminals. First terminal says:
sudo docker run --env OTC_EVALUATION_ENABLED=true --network=host -it obstacle_tower_challenge:latest ./run.sh
root
INFO:mlagents_envs:Start training by pressing the Play button in the Unity Editor.
Traceback (most recent call last):
File "run.py", line 26, in <module>
env = ObstacleTowerEnv(args.environment_filename, docker_training=args.docker_training)
File "/srv/conda/lib/python3.6/site-packages/obstacle_tower_env.py", line 45, in __init__
timeout_wait=timeout_wait)
File "/srv/conda/lib/python3.6/site-packages/mlagents_envs/environment.py", line 69, in __init__
aca_params = self.send_academy_parameters(rl_init_parameters_in)
File "/srv/conda/lib/python3.6/site-packages/mlagents_envs/environment.py", line 491, in send_academy_parameters
return self.communicator.initialize(inputs).rl_initialization_output
File "/srv/conda/lib/python3.6/site-packages/mlagents_envs/rpc_communicator.py", line 80, in initialize
"The Unity environment took too long to respond. Make sure that :\n"
mlagents_envs.exception.UnityTimeOutException: The Unity environment took too long to respond. Make sure that :
The environment does not need user interaction to launch
The Academy and the External Brain(s) are attached to objects in the Scene
The environment and the Python interface have compatible versions.
Second one says:
sudo docker run --env OTC_EVALUATION_ENABLED=true --env OTC_DEMO_EVALUATION=true --network=host -it obstacle_tower_challenge:latest ./env.sh
+ ENV_PORT=
+ ENV_FILENAME=
+ '[' -z '' ']'
+ ENV_PORT=5005
+ '[' -z '' ']'
+ ENV_FILENAME=/home/otc/ObstacleTower/obstacletower.x86_64
+ touch otc_out.json
+ APP_PID=7
+ xvfb-run --auto-servernum '--server-args=-screen 0 640x480x24' /home/otc/ObstacleTower/obstacletower.x86_64 --port 5005 2
+ TAIL_PID=8
+ wait 7
+ tail -f otc_out.json
Is there a problem with my ports? Or maybe I did smth wrong in commands? My OS is Ubuntu 16.04.5 LTS
Hi @morphism90
Can you try changing the timeout_wait
parameter of the ObstacleTowerEnv
? By default it is 30, but you may want it to be a larger value to give more time for Unity to start up and handshake with the python api. Please let us know if that resolves the issue.
I have the same OS and same issue. I am running it on my local machine with a monitor. I checked the logs that the 2nd command produces and it was complaining about xvfb. I tried setting up xvfb properly, but somehow ended up botching my graphics settings to the point where Ubuntu didn't boot. My question is - do we actually need the xvfb if we run this on a system with a monitor?
@awjuliani unfortunately it didn't solve the problem
Hi @KarolisRam
If you run it on a system with a monitor/display, then you don't need xvfb or a virtual x-server in order to run the environment. Those are only for headless systems, such as cloud instances.
Hi guys, does anybody know hot to solve the problem? I'm trying to build Docker image but get the following:
I used sudo rights to run build, in other way I cannot run as non-root user because of the following error