Implemente proyectos front-end en nginx con contenedores docker

Utilice los contenedores docker para implementar proyectos de front-end en nginx y resolver problemas entre dominios

Preparación

1, el extremo frontal del embalaje de artículos, en / descompresión casa, almacenados en / home / la dist
2, el extremo posterior del proyecto en marcha y funcionando

Operación de host

El nuevo volumen de datos se llama nginx

docker volume create nginx

volumen del acoplador ls

volumen del docker inspeccionar nginx

Inicialice un contenedor llamado nginx, -d se ejecuta en segundo plano, -p mapeo de puertos, el puerto 8089 del host docker se asigna al puerto 80 del contenedor
-v parámetro asigna archivos estáticos en dist a la carpeta html de nginx, y el archivo de configuración El archivo de configuración predeterminado correspondiente asigna la carpeta del host (/ var / lib / docker / volume / nginx / _data) vinculada al volumen de datos nginx
a la carpeta / etc / nginx del contenedor nginx

docker run  --name nginx -d -p 8089:80  -v /home/dist:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v nginx:/etc/nginx  nginx

docker ps view contenedores en ejecución

Vaya a la carpeta donde está montado el host

cd / var / lib / docker / volume / nginx

cd _date /

Copie la carpeta estática en la carpeta montada
cp / home / dist.

Vaya a la carpeta donde está almacenado el archivo de configuración y edite el archivo de configuración

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

   include /etc/nginx/conf.d/*.conf;


        server{
        listen  80;
        server_name ip;

        location / {
                proxy_pass http://ip:8081/api/; #ip为你的后端ip地址
                }

        location ~ .*\.(js|css|ico|png|jpg|eot|svg|ttf|woff|html)$ {
                root /etc/nginx/dist;
                expires 30d;
                }
        }


}




Ingrese la carpeta del contenedor nginx

/ data / nginx / conf

1, docker exec -it nginx (nombre del contenedor) / bin / bash

2 、 cd / etc / nginx

3. Puede ver los archivos estáticos en la carpeta del host que acaba de copiar

Reinicie el contenedor nginx para actualizar la configuración

docker ps
docker reiniciar XXX

Supongo que te gusta

Origin www.cnblogs.com/whiplasher/p/12719101.html
Recomendado
Clasificación