前提:已经拉取或导入镜像
注:如下参数,根据实际端口,路径修改
挂载nginx配置文件 -v /home/user/nginx/conf.d:/etc/nginx/conf.d
挂载静态资源 -v /home/user/efm-ui:/efm-ui,这个地址和下文中的nginx配置文件中的路径保持一致,才能找到静态资源。

  1. docker run -it -d \
  2. --name nginx \
  3. --restart=always \
  4. -p 9020:9020 \
  5. -v /home/user/nginx/conf.d:/etc/nginx/conf.d \
  6. -v /home/user/efm-ui:/efm-ui \
  7. nginx:1.21.6

conf.d文件夹下的配置文件

efm-ui.conf内容如下:
注:下文中的 root /efm-ui/9020/dist/路径需在容器挂载路径之下

  1. server {
  2. listen 9020;
  3. server_name localhost;
  4. root /efm-ui/9020/dist/;
  5. location ~* ^/(code|auth|admin|gen|daemon|tx|act|monitor|mp|job|pay|ecms|acctinsp|gzno|equi|exam|prew|epms|knowledge|daily|prem|flowable) {
  6. proxy_pass http://127.0.0.1:9998;
  7. #proxy_set_header Host $http_host;
  8. proxy_connect_timeout 300s;
  9. client_max_body_size 20m;
  10. proxy_send_timeout 300s;
  11. proxy_read_timeout 300s;
  12. proxy_set_header X-Real-IP $remote_addr;
  13. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  14. }
  15. location ^~ /examfile/ {
  16. proxy_pass http://192.168.1.91:9000;
  17. proxy_set_header Host $host;
  18. proxy_set_header X-Forwarded-Proto $scheme;
  19. proxy_set_header X-Real-IP $remote_addr;
  20. proxy_set_header REMOTE-HOST $remote_addr;
  21. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  22. rewrite ^/examfile/(.*) /$1 break;
  23. }
  24. location /minio {
  25. proxy_set_header Host $host;
  26. proxy_set_header X-Real-IP $remote_addr;
  27. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  28. proxy_pass http://127.0.0.1:9000;
  29. client_max_body_size 50m;
  30. }
  31. }