Hier ist meine Dockerfile:nginx nicht in Docker Ausgangs
FROM ubuntu:14.04.4
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
RUN apt-get install -y software-properties-common
RUN add-apt-repository ppa:nginx/stable
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y nginx
ADD configurations/nginx.conf /etc/nginx/nginx.conf
ADD configurations/app.conf /etc/nginx/sites-available/default.conf
RUN ln -sf /etc/nginx/sites-available/default.conf /etc/nginx/sites-enabled/default.conf
RUN chown -Rf www-data.www-data /var/www/
ADD scripts/start.sh /start.sh
RUN chmod 755 /start.sh
EXPOSE 443
EXPOSE 80
CMD ["/bin/bash", "/start.sh"]
Das start.sh Skript:
cat scripts/start.sh
service nginx start
echo "test" > /tmp/test
Wenn ich log, um den Behälter:
docker exec --interactive --tty my_container bash
weder der Test Datei existiert noch Nginx wird ausgeführt. Das nginx-Protokoll enthält keine Fehler.
Es ist wahrscheinlich, dass Docker Ihre App anfangen zu laufen erwartet und niemals zurückkehren, wie in einem Vordergrundprozess. Wenn Ihr Startskript zurückkehrt, wird Docker beendet. Versuchen Sie also die oben verlinkte Lösung. – spokeadoke
Sie können offizielle Bild wie ein Beispiel verwenden https://github.com/nginxinc/docker-nginx/blob/19799fa644461ed6c5ea07c0bc0ea0cc277c2d77/mainline/jessie/Dockerfile – ashatrov
Was passiert, wenn Sie sich einloggen mit 'exec' zu Ihrem Container und versuchen zu laufen'/bin/bash/start.sh'. Es gibt Ihnen die genauen Fehler, die auftreten können, wenn es versucht, start.sh am Einstiegspunkt auszuführen. – Rahul