sql >> Database >  >> RDS >> Mysql

Docker php:5.6-Apache Development Environment ontbrekende rechten op volume mount

Alle bestanden die u deelt in een gekoppeld volume, moeten hetzelfde uid:guid-eigendom hebben van de gebruiker die de CMD in uw container uitvoert. Ik heb in mijn dagelijkse werk een aantal tijdelijke oplossingen kunnen gebruiken, hopelijk kan een van deze voor u werken:

  • KOPIE de bronbestanden op een andere locatie en in het ingangspunt cp ze naar het juiste pad, aangezien de gebruiker die het ingangspuntscript uitvoert dezelfde is die de CMD uitvoert, zullen uw bestanden dezelfde uid:guid hebben. Je kunt dit patroon zien in de openbare jenkins docker-afbeelding
  • Nabootsen het gebruikers- en groepseigendomsschema voor de benodigde bestanden in uw docker-host, op die manier hebben zowel container als host dezelfde UID/GUID voor de bestanden die u wilt gebruiken, daarom zal de webserver zichzelf niet doden wanneer deze probeert te lezen die bestanden.
  • Eigendom wijzigen on-the-fly met een entrypoint-script zoals postgresql public docker image doet.

Ik hoop dat het helpt!



  1. Best practices voor PostgreSQL-beveiliging

  2. Extraheer alle waarden uit json in sql-tabel

  3. Hoe gebruik je meerdere databases met php?

  4. Zoekresultaten van 2 db-tabellen krijgen, zelfs als de tweede tabel geen overeenkomstige vermeldingen heeft