由于项目需求,需要重新部署一个Vue前端程序,现在的问题是之前部署的前端项目是利用Docker中的Nginx容器,在创建初期使用的宿主机的dist绑定容器的目录,现在要在搞个前端应用部署有三种方式:
1.重新部署Nginx并且在绑定前对宿主机目录用一个全称来表示目录下的文件都是vue前端项目
2.使用原来的dist目录,然后以后部署时需要在目录下创建a项目名称然后里面存放a项目的dist文件,接着我们需要进入docker容器修改nginx的配置
3.直接修改已经存在的容器配置,把之前绑定宿主机的dist文件更改成vueProjects
查看容器详情
docker inspect 容器id


现在要把宿主机的dist目录改成vueProjects,然后把容器的目录也改成vueProjects
在需要绑定宿主机的目录下创建目录,我这里是需要改成vueProjects目录
使用命令创建:
mkdir vueProjects
这次我们使用的是修改已经存在的容器配置使我们的目录可以修改成功。
查看容器在宿主机上的位置信息,
docker inspect 容器id | grep ‘容器id’
查找该目录下的信息

进入目录查看文件信息:

注意:需要关闭容器。
docker stop 容器id
停止docker服务
systemctl stop docker
完成以上步骤,后在修改配置信息。
需要修改目录下的2个文件
hostconfig.jsonconfig.v2.jsonhostconfig.json文件打开然后需要把json格式化下,不然看不明白在哪里,百度一下在线json格式化就行,然后把文件中的json放进去格式化,找到Binds属性中的值,把自己需要该的宿主机目录和容器的目录名称修改成自己需要的。

或者直接进入文件找到后直接修改里面的内容信息,改好记得保存退出。

config.v2.json文件打开然后需要把json格式化下,不然看不明白在哪里,百度一下在线json格式化就行,然后把文件中的json放进去格式化,找到MountPoints属性中的值,把自己需要该的宿主机目录和容器的目录名称修改成自己需要的。

改成如下:

然后把改好的数据更改到文件中,并且保存退出。

更改完成后启动Docker服务:
systemctl start docker
然后查看容器修改的容器是否自己启动,没有自己启动的使用命令启动
docker start 容器id

我们在查看下容器的绑定信息:
docker inspect 容器id


可以看出已经都更改成功了。

在vueProjects目录下创建对应的文件这样我们再把对应项目的dist存放对应目录即可。
进入容器内部查看宿主机的目录创建完成,容器的也没有创建成功。
docker exec -it 容器id bash
我们找到容器映射的目录下查看。

把项目移动到对应的文件夹下:
项目一:

项目二:

进入容器
docker exec -it 容器id bash
进入容器后Nginx默认配置在 /etc/nginx/conf.d目录下,然后就按照自己需求配置项目了这边就不多展示了。
到这里通过修改已存在的Nginx目录实现项目的区分就完成了,如果对你有帮助,一键三连,一起加油!!!