Ho configurato un contenitore Docker per eseguire Nginx e impostare il file/etc/nginx/sites-available/default come mostrato qui sottoNginx SSL all'interno di un contenitore finestra mobile
server
{
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.php index.html index.htm;
server_name example.com;
location/{
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
server
{
listen 443;
root /usr/share/nginx/html;
index index.php index.html index.htm;
server_name example.com;
ssl on;
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
location/{
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
traccio/etc/ssl/certs &/etc/ssl/cartelle private sul host quando corro il contenitore finestra mobile
docker run -dt -p 8080:443 -p 8081:80 -v /t-base/log:/var/log/nginx -v
/etc/ssl/certs:/etc/ssl/certs -v /etc/ssl/private:/etc/ssl/private nginx
Docker ps shows
Up n minutes 0.0.0.0:8081->80/tcp 0.0.0.0:8080->443/tcp <container-name>
e il file di log degli errori nginx all'interno della cartella/t-base/log mappato rimane vuota.
docker exec -it <container-name> /bin/bash
seguito da
service nginx status
arriva appena indietro e dice che nginx è in esecuzione.
Tutto ciò indica che tutto funziona correttamente. Tuttavia, ritengo che, mentre io sono in grado di navigare a
http://example.com:8080
salta fuori la pagina di default
https://example.com:8081
ha il Chrome mi mostra la sua pagina di errore predefinita "faccina triste". Non riesco a vedere cosa potrei fare storto qui. Apprezzerei molto qualsiasi aiuto.
vostro comando di marcia ha all'indietro da i tuoi test? 8080 = ssl, 8081 = nonssl. – user2105103