docker安装nginx及部署项目
本篇博客所需文件:链接: 点击前往获取
提取码: 9jr5
一、java项目部署到Docker容器
(1)把后台项目上传到虚拟机
①创建文件夹
mkdir -p /dong/java/oa
②rz上传文件(oa.jar、 Dockerfile、 start.sh)到oa目录下
(2)编写Dockerfile
# 运行环境
FROM jre:v1.0
#复制文件到容器
ADD oa.jar /app.jar
#配置容器启动后执行的命令
ENTRYPOINT java -jar /app.jar
上传的dockerfile文件多余的可以删除
(3)编写start.sh
#!/bin/bash
docker stop oa
docker rm oa
docker rmi oa
#构建docker镜像
docker build -t oa .
#运行docker镜像
docker run -itd --name oa -p 8081:8080 --restart=always oa:latest
#查看日志
docker logs -f -t --tail 100 oa
(4)启动容器
进入cd/dong/java目录
sh start.sh
这里需要部署多个项目可以安装上面步骤接着来Dockerfile直接就不需要再改了只需要把start.sh的端口和jar包名字修该就行了
二、安装nginx服务器,反向代理和负载均衡
(1)安装nginx
①搜索nginx镜像
docker search nginx
②拉取镜像
docker pull nginx
③在宿主机中创建挂载目录(见之前直接在虚拟机里面安装nginx后,会生成一些文件)
mkdir -p /zking/nginx/{conf,conf.d,html,log}
mkdir /zking/nginx/conf
mkdir /zking/nginx/conf.d
mkdir /zking/nginx/html
mkdir /zking/nginx/log
④根据nginx镜像创建nginx容器
docker run --name mynginx01 -d -p 80:80 nginx:latest
⑤查看本地的容器,可以看到nginx容器已经创建成功了
docker ps -a
⑥测试nginx是否安装成功
打开浏览器输入“http://宿主机ip:80”,正常情况下会显示nginx的欢迎页面
(2)构建nginx容器用于发布vue项目
①上传nginx.conf配置文件到宿主机/zking/nginx/conf目录下
②创建nginx容器
docker run \
--name mynginx02 \
-d -p 80:80 \
-v /dong/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /dong/nginx/log:/var/log/nginx \
-v /dong/nginx/html:/usr/share/nginx/html \
nginx:latest
注1:如果容器创建失败,可通过如下命令,查看在docker容器启动日志
docker logs -f -t --tail 行数 容器名
docker logs -f -t --tail 100 mynginx02
注2:进入容器内部(/bin/bash 还是/bin/sh取决于跟镜像是centos还是alpine)
docker exec -it mynginx02 /bin/sh
三、部署静态资源+静态资源分离
(1)前台项目打包步骤
①点击需要打包的项目
②点击运行/运行到终端
③点击npm run build之后就会出现dist文件在文件夹中打开
④压缩
(2)上传dist.zip的包到宿主机/zking/nginx/html目录下
(三)解压dist.zip
unzip dist.zip
(三)访问vue项目首页
http://192.168.194.140/index.html