Установка PyGame на Codenvy
Начинающий Python/Linux здесь! Я использую Codenvy ( https://codenvy.com/) в качестве IDE для проекта PyGame. Я изменил свой файл require.txt одной строкой:
pygame
Но когда я пытаюсь запустить его, я получаю следующее сообщение из консоли:
[DOCKER] Collecting pygame (from -r requirements.txt (line 1))
[DOCKER] Could not find any downloads that satisfy the requirement pygame (from -r requirements.txt (line 1))
[DOCKER] Some externally hosted files were ignored as access to them may be unreliable (use --allow-external pygame to allow).
[DOCKER] No distributions at all found for pygame (from -r requirements.txt (line 1))
[DOCKER][ERROR] The command [/bin/sh -c cd /tmp/application && sudo virtualenv /env && sudo /env/bin/pip install -r requirements.txt] returned a non-zero code: 1
[ERROR] We are having trouble starting the runner and deploying application snakes_for_python. Either necessary files are missing or a fundamental configuration has changed.
Docker image build failed
Я обнаружил, что есть еще один пост, в котором описана подобная проблема, и обнаружил, что это означает, что у Codenvy нет моей зависимости (PyGame). В этом посте были ссылки на две части документации: как создать собственную среду выполнения в Codenvy и как создать собственную машину.
Работая над этим, я скопировал файл Docker Django + Python 2.7 по умолчанию Codenvy в новый файл Docker. Я изменил строку, которую программа использует для установки из файла require.txt. Вот что у меня сейчас:
RUN cd /tmp/application && \
sudo virtualenv /env && \
sudo /env/bin/pip install -r requirements.txt && \
sudo apt-get install python-pygame
Финал && \ был моим собственным дополнением. К сожалению, я получаю ошибку прямо здесь.
[DOCKER] The following NEW packages will be installed:
...
[DOCKER]ore-soundfont-gm python-numpy python-pygame tcpd x11-common
[DOCKER] 0 upgraded, 58 newly installed, 0 to remove and 12 not upgraded.
...
[DOCKER]ant to continue? [Y/n]
[DOCKER] Abort.
[DOCKER][ERROR] The command [/bin/sh -c cd /tmp/application && sudo virtualenv /env && sudo /env/bin/pip install -r requirements.txt && sudo apt-get install python-pygame] returned a non-zero code: 1
[ERROR] We are having trouble starting the runner and deploying application snakes_for_python. Either necessary files are missing or a fundamental configuration has changed.
Может кто-нибудь объяснить, почему я получаю заявление об отмене? Если команда, которую я использовал для установки pygame, была неверной, что в ней плохого, и как мне исправить ее?
РЕДАКТИРОВАТЬ 1:
Я попытался использовать флаг -y для автоматического подтверждения выбора (я считаю, что именно поэтому я получаю прерывание, исходя из того, что было напечатано на консоли). Это теперь мое дополнение.
RUN sudo apt-get install python-pygame -y --fix-missing
И я получаю следующие ошибки:
...
[DOCKER] Get:7 http://http.debian.net/debian/ jessie/main libcap-ng0 amd64 0.7.4-2 [13.2 kB]
[DOCKER] Err http://http.debian.net/debian/ jessie/main libdbus-1-3 amd64 1.8.16-1
[DOCKER]ot Found [IP: 108.59.10.97 80]
...
[DOCKER] Get:40 http://http.debian.net/debian/ jessie/main libjbig0 amd64 2.1-3.1 [30.7 kB]
[DOCKER] Err http://http.debian.net/debian/ jessie/main libtiff5 amd64 4.0.3-12.2
[DOCKER]ot Found [IP: 108.61.5.92 80]
...
[DOCKER] Get:46 http://http.debian.net/debian/ jessie/main libsmpeg0 amd64 0.4.5+cvs20030824-7.1 [91.3 kB
[DOCKER] Err http://http.debian.net/debian/ jessie/main libtiff5 amd64 4.0.3-12.2
[DOCKER] Not Found [IP: 108.61.5.92 80]
...
[DOCKER] Get:55 http://http.debian.net/debian/ jessie/main tcpd amd64 7.6.q-25 [22.9 kB]
[DOCKER] Fetched 23.1 MB in 6s (3407 kB/s)
[DOCKER]o correct missing packages.
[DOCKER] [91mE: Failed to fetch http://http.debian.net/debian/pool/main/d/dbus/libdbus-1-3_1.8.16-1_amd64.deb 404 Not Found [IP: 108.59.10.97 80]
[DOCKER]
[DOCKER] [91mFailed to fetch http://http.debian.net/debian/pool/main/t/tiff/libtiff5_4.0.3-12.2_amd64.deb 404 Not Found [IP: 108.61.5.92 80]
[DOCKER]d to fetch http://http.debian.net/debian/pool/main/d/dbus/dbus_1.8.16-1_amd64.deb 404 Not Found [IP: 108.61.5.92 80]
[DOCKER]ing install.
[DOCKER]
[DOCKER][ERROR] The command [/bin/sh -c sudo apt-get install python-pygame -y --fix-missing] returned a non-zero code: 100
[ERROR] We are having trouble starting the runner and deploying application snakes_for_python. Either necessary files are missing or a fundamental configuration has changed.
Docker image build failed
Эти 404 связаны с Debian, а не с Pygame. Что я могу сделать, чтобы это исправить?
1 ответ
Попробуйте обновить менеджер пакетов:
RUN sudo apt-get update && sudo apt-get install python-pygame -y