0
点赞
收藏
分享

微信扫一扫

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署


简介:

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

查看容器详情

查看容器详情

docker inspect 容器id

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_json


Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_json_02

现在要把宿主机的​​dist​​​目录改成​​vueProjects​​​,然后把容器的目录也改成​​vueProjects​

需要绑定宿主机的目录下创建目录,我这里是需要改成​​vueProjects​​​目录
使用命令创建:

mkdir vueProjects

修改已经存在的容器配置

这次我们使用的是修改已经存在的容器配置使我们的目录可以修改成功。

查看容器位置

查看容器在宿主机上的位置信息,

docker inspect 容器id | grep ‘容器id’

查找该目录下的信息

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_前端_03


进入目录查看文件信息:

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_前端_04

关闭服务

注意:需要关闭容器

docker stop 容器id

停止docker服务

systemctl stop docker

完成以上步骤,后在修改配置信息。

修改容器配置

需要修改目录下的2个文件

  • ​hostconfig.json​
  • ​config.v2.json​
修改hostconfig.json

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

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_json_05


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

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_nginx_06

修改config.v2.json

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

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_json_07


改成如下:

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_前端_08


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

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_前端_09

启动服务

更改完成后启动Docker服务:

systemctl start docker

然后查看容器修改的容器是否自己启动,没有自己启动的使用命令启动

docker start 容器id

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_docker_10


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

docker inspect 容器id

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_json_11


Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_docker_12


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

Nginx改造读取不同的目录

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_nginx_13


在​​vueProjects​​目录下创建对应的文件这样我们再把对应项目的dist存放对应目录即可。

进入容器

进入容器内部查看宿主机的目录创建完成,容器的也没有创建成功。

docker exec -it 容器id bash

我们找到容器映射的目录下查看。

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_docker_14

回到宿主机

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

项目一:

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_docker_15


项目二:

Docker已存在Nginx容器对宿主机映射容器的目录进行修改,完成不同前端项目的部署_docker_16

配置Nginx映射

进入容器

docker exec -it 容器id bash

进入容器后Nginx默认配置在 ​​/etc/nginx/conf.d​​目录下,然后就按照自己需求配置项目了这边就不多展示了。

🍥结束:

       到这里通过修改已存在的Nginx目录实现项目的区分就完成了,如果对你有帮助,一键三连,一起加油!!!


举报

相关推荐

0 条评论