Bootstrap

Docker安装Nginx

本文前言

在Docker中安装Nginx


一、下载Nginx镜像

省流下载: docker pull nginx:1.25
(有时需要魔法,其他版本可以自己去Docker镜像官网下载:Docker镜像官网,搜索nginx。)


示例:
在这里插入图片描述

二、创建Nginx挂载目录

大家都知道Nginx需要频繁的修改,所以将需要的文件挂载出来最合适

// 先创建nginx目录(以下是示例路径)
[root@192 ~]# mkdir nginx
[root@192 ~]# cd nginx/
// 创建配置文件挂载
[root@192 nginx]# mkdir conf
// 创建静态文件挂载
[root@192 nginx]# mkdir html
// 创建日志文件挂载
[root@192 nginx]# mkdir log
// 列出目录
[root@192 nginx]# ls
conf  html  log

示例:
在这里插入图片描述

三、将所需文件在容器中复制出来

因为挂载时,如果宿主机挂载目录为空,则可能会将容器中挂载的目录给覆盖
1、先创建nginx容器

// 列出镜像
[root@192 nginx]# docker images
// 启动容器 注意 -d 镜像名称:版本
[root@192 nginx]# docker run -d docker.io/nginx:1.25

示例:
在这里插入图片描述
2、获取挂载文件

//将容器nginx.conf文件复制到宿主机
[root@192 nginx]# docker cp 容器id:/etc/nginx/nginx.conf /root/nginx/conf/nginx.conf
//将容器conf.d文件夹复制到宿主机
[root@192 nginx]# docker cp 容器id:/etc/nginx/conf.d /root/nginx/conf/conf.d
//将容器静态文件夹html复制到宿主机
[root@192 html]# docker cp 容器id:/usr/share/nginx/html/ /root/nginx

示例:
在这里插入图片描述

3、停止容器,并删除

// 停止容器,ce869a为容器id
[root@192 html]# docker stop 容器id
//删除容器
[root@192 html]# docker rm 容器id

示例:
在这里插入图片描述

启动Nginx容器

启动并挂载目录:

docker run -d -p 80:80 --name nginx --privileged --restart always -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.con -v /root/nginx/conf/conf.d:/etc/nginx/conf.d -v /root/nginx/html:/usr/share/nginx/html -v /root/nginx/log:/var/log/nginx docker.io/nginx:1.25

命令:

-d:后台运行
-p:将主机80端口和容器80端绑定,
–name:容器命名
–privileged:容器获得对主机上设备的直接访问权限
–restart always:设置自动昂重启
-v:挂载目录,格式 主机目录 :容器目录

测试访问

在这里插入图片描述


总结

当有新的项目需要部署时,可直接操作宿主机对应的目录即可,因为容器的目录跟宿主机进行绑定了,宿主机修改,容器也会跟着修改。

修改配置文件后记得重启!!!

命令:docker restart 容器id

到此Docker安装Nginx结束。

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;