J'obtiens une erreur lorsque j'essaye de le monter sur un conteneur et de l'utiliser de la manière habituelle.
$ python -m venv .venv
Error: [Errno 71] Protocol error: 'lib' -> '/app/.venv/lib64'
Causé par l'émission d'un lien symbolique lors de l'utilisation de venv et son partage lors du montage local
Utilisez Comment exclure une pièce lors du montage de Volume avec Docker pour l'exclure du montage avec le lien symbolique.
La commande suivante mettra un lien symbolique sous ** {répertoire de travail} /. Venv / **, donc excluez-le.
python -m venv .venv
Fait partie de docker-compose.yml
version: "3.7"
services:
app:
...
volumes:
- {Directeur de travail}/.venv/
docker-compose.yml
Échantillon entier
version: "3.7"
services:
app:
build: ./app/
working_dir: /app
volumes:
- ./app:/app:cached
- /app/__pycache__
- /app/.venv/
- /app/.tox/ #pour tox
environment:
- FLASK_ENV=development
ports:
- "5000:5000"
Recommended Posts