DockerfileApache nicht automatisch auf Docker läuft komponieren bis
FROM phusion/baseimage:0.9.16
MAINTAINER Raheel <[email protected]>
# Apache
RUN apt-get update
RUN apt-get -y install apache2
# PHP
RUN apt-get -y install python-software-properties
RUN add-apt-repository ppa:ondrej/php
RUN apt-get update
RUN apt-get -y install php7.0
RUN apt-get -y install libapache2-mod-php7.0 php7.0-curl php7.0-json
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
Docker-composer.yaml
version: '2'
services:
frontend:
build: ./frontend
ports:
- "80:80"
volumes:
- ./frontend:/var/www/html/frontend
Ich versuche, meine Laravel App innerhalb Docker zu laufen. Ich habe zwei Probleme
1 - Wenn ich docker-compose up ausführen, startet der Apache-Server innerhalb des Containers nicht automatisch. Jedes Mal, wenn ich mich in den Container einloggen muss und service apache2 start
tun. Nach meiner Suche fand ich den CMD Befehl ich schrieb in der Dockerfile ist, wie wir Apache starten, aber nicht in meinem Fall
2 - Wenn ich mich in Container anmelden und gehen Sie zu meinem App-Ordner /var/www/html/frontend
seine Benutzer sind 1000: 1000 etwas . Ich möchte, dass sie unter www-data stehen: www-data. Aber ich möchte nicht, dass dies in meiner Docker-Datei hinzugefügt wird, da ich meine Docker-Datei nur für die Installation von Apache und PHP behalten möchte. Wie kann ich dies erreichen, indem Sie docker-compose.yaml
oder einen anderen Weg verwenden.
Aktualisiert: Docker Container Protokolle
*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 9
Jul 10 08:27:33 6d5c09e83a98 syslog-ng[15]: syslog-ng starting up; version='3.5.3'
Dank
Wenn der Befehl Apache nicht startet, was macht es dann? Schwer zu debuggen ohne Protokolle und die Ausgabe Ihrer Befehle. – BMitch
Wie kann ich Protokolle sehen? Ich bin auf ubuntu 16 –
'docker-compose logs frontend' – BMitch