image.png
image.png

打包jar文件

  • 进入renren-fast目录,执行mvn命令
  1. mvn clean install -Dmaven.test.skip=true

命令说明:

  • clean:表示清除之前的JAR文件;
  • install:意味着打包到本地;
  • -Dmaven.test.skip=true: 代表跳过测试代码

    运行Java容器,部署并运行JAR文件

    image.png

    命令1-程序运行不成功

    原因:数据卷没有映射成功

    1. # 创建数据卷
    2. docker volume create --name tomcatAdmin
    3. # 创建java容器
    4. docker run -it -d --name gxbgHt -v tomcatAdmin:/home/soft --net=host docker.io/java
    5. # 进入容器
    6. docker exec -it gxbgHt bash
    7. # 启动jar文件
    8. # -Dlogging.file=/home/user1/logs/a.log a.jar
    9. nohup java -jar -Dloging.file=/home/soft/log.log /home/soft/renren-admin.jar
    10. # 注意退出的时候,直接关连接窗口,不用按ctrl+c

    image.png
    image.png

    命令2

    1. # 创建数据卷
    2. docker volume create --name tomcatAdmin1
    3. # 创建java容器
    4. docker run -it -d -v tomcatAdmin1:/home/soft --privileged --name gxbgHt1 --net=host docker.io/java
    5. # 进入容器
    6. docker exec -it gxbgHt bash
    7. # 启动jar文件
    8. nohup java -jar -Dloging.file=/home/soft/log.log /home/soft/renren-admin.jar
    9. # 注意退出的时候,直接关连接窗口,不用按ctrl+c

    命令3

    1. docker run -it -d --name

    java -jar -Dlogging.file=/home/user1/logs/a.log a.jar

    后台程序负载均衡

  • Nginx是性能非常出色的反向代理服务器,最大可以支持8万/秒的并发访问

  • http协议 负载均衡做的最好的是:nginx

image.png

安装Nginx镜像

  • docker仓库中提供了Nginx镜像,下载安装即可

    1. docker pull nginx
    1. user nginx;
    2. worker_processes 1;
    3. error_log /var/log/nginx/error.log warn;
    4. pid /var/run/nginx.pid;
    5. events {
    6. worker_connections 1024;
    7. }
    8. http {
    9. include /etc/nginx/mime.types;
    10. default_type application/octet-stream;
    11. log_format main '$remote_addr - $remote_user [$time_local] "$request" '
    12. '$status $body_bytes_sent "$http_referer" '
    13. '"$http_user_agent" "$http_x_forwarded_for"';
    14. access_log /var/log/nginx/access.log main;
    15. sendfile on;
    16. #tcp_nopush on;
    17. keepalive_timeout 65;
    18. #gzip on;
    19. proxy_redirect off;
    20. proxy_set_header Host $host;
    21. proxy_set_header X-Real-IP $remote_addr;
    22. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    23. client_max_body_size 10m;
    24. client_body_buffer_size 128k;
    25. proxy_connect_timeout 5s;
    26. proxy_send_timeout 5s;
    27. proxy_read_timeout 5s;
    28. proxy_buffer_size 4k;
    29. proxy_buffers 4 32k;
    30. proxy_busy_buffers_size 64k;
    31. proxy_temp_file_write_size 64k;
    32. # 这里定义了java容器的负载均衡
    33. upstream tomcat {
    34. server 192.168.99.104:6001;
    35. server 192.168.99.104:6002;
    36. server 192.168.99.104:6003;
    37. }
    38. server {
    39. listen 6101;
    40. server_name 192.168.99.104;
    41. location / {
    42. proxy_pass http://tomcat;
    43. index index.html index.htm;
    44. }
    45. }
    46. }

    启动Nginx容器

    1. docker run -it -d --name n1 -v /home/n1/nginx.conf:/etc/nginx/nginx.conf --net=host --privileged nginx