Dockerfile 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # Version 0.1
  2. # 基础镜像
  3. FROM centos:7
  4. # 维护者信息
  5. MAINTAINER XinTong
  6. VOLUME /tmp
  7. #自动安装依赖
  8. RUN cd /etc/yum.repos.d/ \
  9. && yum -y install wget \
  10. && wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo \
  11. && yum clean all \
  12. && yum makecache \
  13. && yum update -y \
  14. && yum -y install nginx \
  15. && yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel \
  16. && yum -y install redis \
  17. #这里可以设置 域名
  18. # 可以送本地加载 使用ADD 也可以直接写
  19. && echo "server { \
  20. listen 81; \
  21. location ^~ /prod-api { \
  22. proxy_pass http://127.0.0.1:8090/api; \
  23. proxy_set_header Host 127.0.0.1; \
  24. proxy_set_header X-Real-IP \$remote_addr; \
  25. proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; \
  26. } \
  27. #解决Router(mode: 'history')模式下,刷新路由地址不能找到页面的问题 \
  28. location / { \
  29. root /var/www/html/; \
  30. index index.html index.htm; \
  31. if (!-e \$request_filename) { \
  32. rewrite ^(.*)\$ /index.html?s=\$1 last; \
  33. break; \
  34. } \
  35. } \
  36. access_log /var/log/nginx/access.log ; \
  37. } " > /etc/nginx/conf.d/default.conf \
  38. # 设置启动脚本
  39. && touch /etc/init.d/start.sh \
  40. && touch yjzh.log \
  41. && chmod +x /etc/init.d/start.sh \
  42. && echo "#!/bin/bash " >> /etc/init.d/start.sh \
  43. && echo "/usr/bin/redis-server & " >> /etc/init.d/start.sh \
  44. && echo "/usr/sbin/nginx -c /etc/nginx/nginx.conf" >> /etc/init.d/start.sh \
  45. && echo " java -jar /app.jar " >> /etc/init.d/start.sh \
  46. && mkdir -p /var/www \
  47. && mkdir -p /var/www/html
  48. # 前端迁移到系统文件中 默认是80端口 同级目录下的html地址
  49. ADD ruoyi-ui/dist /var/www/html/
  50. # 拷贝相关的jar包
  51. ADD ruoyi-admin/target/ruoyi-admin.jar app.jar
  52. EXPOSE 80 8090 81
  53. ENTRYPOINT /bin/sh -c /etc/init.d/start.sh
  54. #启动脚本
  55. #docker rmi $(docker images | grep "^<none>" | awk "{print $3}") 删除<none>
  56. #docker build -t docker.xt.wenhq.top:8083/docker_r/yjzh_test:1.0 .
  57. #docker run --privileged=true -itd --name yjzh_test -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 81:81 -p 8080:8080 -p 82:80 959e5d6a26e7
  58. # 删除镜像
  59. #curl -I -X DELETE http://docker.xt.wenhq.top:8083/v2/docker_r/yjzh_test/manifests/sha256:af0a8819