запустить Pygame со звуком в Docker-контейнере - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь запустить pygame в док-контейнере, но у меня проблемы со звуком.

Это мой Dockerfile:

# This explains how to enable the video: https://skandhurkat.com/post/x-forwarding-on-docker/

FROM ubuntu:latest
MAINTAINER fnndsc "dev@babymri.org"

RUN apt-get update \
  && apt-get install -y python3-pip python3-dev \
  && cd /usr/local/bin \
  && ln -s /usr/bin/python3 python \
  && pip3 install --upgrade pip


RUN apt-get update
RUN apt-get install -qqy x11-apps

RUN pip3 install pygame

WORKDIR /app

ADD paper_rock_scissor_game /app
RUN python3 setup.py install

ENV NAME World


CMD ["python3", "rock_paper_scissor/run_game.py", "-w", "-d"]

и я запускаю его как: lpuggini@lpuggini-T3420:~/temporary/pygame_docker$ docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY --device /dev/snd --name dsgame rockpaperscissor

к сожалению игра вылетает из-за проблем со звуком:

lpuggini@lpuggini-T3420:~/temporary/pygame_docker$ docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix  -e DISPLAY=unix$DISPLAY --device /dev/snd  rockpaperscissor
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
  File "rock_paper_scissor/run_game.py", line 61, in <module>
    pygame.mixer.init()
pygame.error: No available audio device
lpuggini@lpuggini-T3420:~/temporary/pygame_docker$ 

Вы знаете, как я могу это исправить? Хост-машина - это Ubuntu.

Пара ссылок:

Как воспроизводить звук в док-контейнере

https://skandhurkat.com/post/x-forwarding-on-docker/

UPDATE:

добавление RUN apt-get install -y libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev в Dockerfile, кажется, частично решает проблему.

Теперь ноутбук выводит звук правильно. До сих пор не могу найти способ использовать наушники в качестве устройства вывода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...