2016-12-29 2 views
0

Hier ist meine Konfiguration:Kann nicht starren Installation Seite von Wordpress Docker Container basierend auf alpine Linux

OS: Windows 10 Enterprise x64 [Version 10.0.14393]

Docker Toolbox: Docker Version 1.12. 5, bauen 7392c3b docker-compose Version 1.9.0, Build 2585387

Mein docker-compose.yml:

version: '2' 

services: 

    wordpress: 
    image: wordpress:4.7.0-php7.0-fpm-alpine 
    links: 
     - "mysql:mysql-database" 
    ports: 
     - 8080:80 
     - 9000:9000 
    expose: 
     - "3306" 
     - "8080" 
     - "80" 

    environment: 
     WORDPRESS_DB_PASSWORD: example 


    mysql: 
    image: mysql 
    ports: 
     - 3306:3306 
    expose: 
     - "3306" 
    environment: 
     MYSQL_ROOT_PASSWORD: example 

Inbetriebnahme th ist bei: docker-compose up -d

Danach nicht Wordpress-Installation Seite auf http://192.168.99.100:8080/

sehen, wenn ich Wordpress-Tag 4.7.0-php7.0-Apache ändern dann funktioniert alles einwandfrei .ist es Fehler in der alpinen Wordpress Bild oder muss ich nur ein paar Ports öffnen?

+0

Mit dem '4.7.0-php7.0- fpm-alpine' Tag ist es nicht möglich, dass Ihr Wordpress sich mit dem mysqldb verbindet. Die Verbindung wird abgelehnt. Überprüfen Sie 'docker logs'. Ich weiß nicht warum, aber wenn Sie den Unterschied in den Dockerfiles der Tags überprüfen, sollten Sie es wahrscheinlich finden. – lvthillo

+0

Protokolle von alipne Container: – Exeller666

+0

29-Dez-2016 12:30:36] HINWEIS: fpm läuft, pid 1 [29-Dec-2016 12:30:36] HINWEIS: bereit, Verbindungen zu behandeln – Exeller666

Antwort

0

Dieses alpine Bild wurde mit nur php-fpm gemacht und muss zusammen mit einem Webserver wie nginx verwendet werden.

Es ist mein Ansatz:

Im Docker-compose.yml

version: '2' 

services: 
    web: 
    image: nginx:latest 
    ports: 
     - 8080:80 
    volumes: 
     - ./site.conf:/etc/nginx/conf.d/default.conf:ro 
     - /etc/localtime:/etc/localtime:ro 
    volumes_from: 
     - wordpress 
    wordpress: 
    image: wordpress:4.7.0-php7.0-fpm-alpine 
    environment: 
     WORDPRESS_DB_PASSWORD: example 
     WORDPRESS_DB_HOST: mysql 
    mysql: 
    image: mysql 
    environment: 
     MYSQL_ROOT_PASSWORD: example 
     MYSQL_DATABASE: wordpress 

Und die site.conf:

server { 
    listen 80; 
    index index.php index.html; 
    server_name $hostname; 
    error_log /var/log/nginx/error.log; 
    access_log /var/log/nginx/access.log; 
    root /var/www/html; 

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass wordpress:9000; 
     fastcgi_index index.php; 
     include fastcgi_params; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     fastcgi_param PATH_INFO $fastcgi_path_info; 
    } 
} 
+0

Ich bekomme Fehler damit: Fehler: für Web kann Container für Service-Web nicht erstellen: ungültig bind mount spec "C: \\ Benutzer \\ ExelleR \\ Desktop \\ Work \\ wordpress \\ site.conf: /etc/nginx/conf.d/default.conf: ro": Ungültige Volume-Angabe: 'C: \ Benutzer \ ExelleR \ Desktop \ Arbeit \ wordpress \ site.conf: /etc/nginx/conf.d/default.conf: ro ' Fehler: Fehler beim Hochfahren des Projekts aufgetreten. – Exeller666

+0

Um Fehler im Zusammenhang mit Volume-Pfaden in Windows mit Docker Toolbox zu vermeiden, tun Sie: $ env: COMPOSE_CONVERT_WINDOWS_PATHS = 1 in PowerShell. Dies geschieht aufgrund von docker-compose 1.9.0. – Exeller666

Verwandte Themen