基于docker+nginx打包部署java前后台分离项目

这几天老板让写一个后台对接前台实现智能分析的一个demo。用到了docker+nginx部署项目,在这里给大家分享一下本人的心得,刚开始接触,也是在探索阶段请大家指正。

docker pull nginx:1.17.6    
        创建外接目录:
            mkdir -p /home/nginx/smart_police/{conf,conf.d,html,logs}
 
直接运行这一句:
docker run \
  --name smart_tpolice \
  -d -p 9521:80 \
  -v /home/nginx/smart_police/html:/usr/share/nginx/html \
  nginx:1.17.6
就可以启动一个docker,把项目放到html里面就可以运行了。
 
挂载配置文件:
       一般情况下docker启动时进行配置,只要把配置文件的目录挂载出来就可以,简洁方便,但是nginx却是先加载一个主配置文件nginx.conf,在nginx.conf里再加载conf.d目录下的子配置文件(一般最少一个default.conf文件)。这比单独挂载一个目录麻烦了不少,但只要思路清晰,倒也不难。
 
 1:从docker里面copy 配置信息 nginx.conf 和 default.conf 。c596a4279249 这个是容器ID(运行命令:docker ps可以查看)
docker cp c596a4279249:/etc/nginx/nginx.conf /home/nginx/smart_police/conf/nginx.conf
docker cp c596a4279249:/etc/nginx/conf.d/default.conf  /home/nginx/smart_police/conf.d/default.conf
 
然后把上面那个删除了:docker stop smart_tpolice ;
                                    docker rm smart_tpolice 
重新跑一个nginx项目:
docker run \
--name nginx_smart_police \
-d -p 9521:80 \
-v /home/nginx/smart_police/html:/usr/share/nginx/html \
-v /home/nginx/smart_police/conf/nginx.conf/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /home/nginx/smart_police/conf.d:/etc/nginx/conf.d \
nginx:1.17.6
 
  成功!
    跑项目jar包::::    在/usr/local/project/新建smart_police文件夹,新建Dockerfile文件
FROM openjdk:8-jdk-alpine
WORKDIR /usr/local/project/smart_police
ENV LANG en_US.UTF-8
RUN apk add --update --no-cache ttf-dejavu fontconfig && rm -rf /var/cache/apk/*
VOLUME /tmp
ARG JAR_FILE
ADD ${JAR_FILE} /huc-1.0-SNAPSHOT.jar
# RUN apk add  tzdata  && \
#     cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
#     echo "Asia/Shanghai" > /etc/timezone && \
#     apk del tzdata && \
CMD ["java","-jar","huc-1.0-SNAPSHOT.jar
        在当前文件夹下面运行命令建立镜像: docker build -t smart_police . --network=host
         docker run -d --name smart_police -p 9520:9520 -v /usr/local/project/smart_police:/usr/local/project/smart_police  -v /home/smart_police/logs:/home/smart_police/logs  smart_police
运行成功~
        
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值