Après avoir fait de nombreuses recherches, je n'ai trouvé aucune solution qui fonctionnait pour moi. J'essaie d'exécuter la commande dans docker-composer pour démarrer le projet avec Django-admin
docker-compose run app sh -c "Django-admin startproject app ."
Chaque fois que je reçois l'erreur:
Traceback (most recent call last):
File "/usr/local/bin/Django-admin", line 10, in <module>
sys.exit(execute_from_command_line())
File "/usr/local/lib/python3.7/site-packages/Django/core/management/__init__.py", line 381, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.7/site-packages/Django/core/management/__init__.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.7/site-packages/Django/core/management/base.py", line 323, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.7/site-packages/Django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.7/site-packages/Django/core/management/commands/startproject.py", line 20, in handle
super().handle('project', project_name, target, **options)
File "/usr/local/lib/python3.7/site-packages/Django/core/management/templates.py", line 155, in handle
with open(new_path, 'w', encoding='utf-8') as new_file:
PermissionError: [Errno 13] Permission denied: '/manage.py'
Mon fichier docker
FROM python:3.7-Alpine
MAINTAINER anubrij chandra
ENV PYTHONUNBUFFERED 1
COPY ./requirements.txt /requirements.txt
RUN pip install -r /requirements.txt
RUN mkdir /app
COPY ./app /app
RUN adduser -D dockuser
USER dockuser
Mon docker-compose.yml
version: "3"
services:
app:
build:
context: .
ports:
- "8000:8000"
volumes:
- ./app:/app
command: >
sh -c "python manage.py runserver 0.0.0.0:8000"
J'ai appliqué la solution suggérée dans mais cela n'a pas fonctionné [ PermissionError: [Errno 13] Autorisation refusée: '/code/manage.py'
Version Ubuntu:
Distributor ID: Ubuntu
Description: Ubuntu 18.04 LTS
Release: 18.04
Codename: bionic
Si vous êtes sur Mac, cela pourrait fonctionner pour vous.
Après 4 jours de dépannage de cette erreur (et d'autres erreurs étranges), j'ai découvert que je devais corriger les autorisations des dockers dans mon système de fichiers. Pour ce faire, allez à:
Préférences Système -> Sécurité et confidentialité -> onglet Confidentialité -> Accès complet au disque (à gauche, quelque part dans la liste) -> Cliquez sur le + -> Application Docker
Problème terriblement frustrant à déboguer, j'espère que cela aide.