docker --version
访问Nginx镜像库地址。
三.安装Nginx
- 拉取nginx镜像
docker pull nginx:1.21.4
- 查看镜像是否拉取成功
images命令查看已安装docker镜像列表
docker images
- 创建并运行Redis容器 docker run 表示创建并运行一个容器,当容器创建完成之后想要启动它的时候,可以使用命令docker start imageID;
–name:容器名,此处命名为redis;
p:端口映射,此处映射 宿主机6379端口 到 容器的6379端口;
-d:后台运行容器,并返回容器ID;
-v: 绑定一个卷,简单点说就是将主机的目录或者文件与容器的容器的目录或者文件做映射。
redis:5.0.8:要运行的镜像;
docker run --name nginx -p 80:80 -d nginx:1.21.4
- 测试安装效果
访问宿主机地址,ip:port(默认是80端口,可省略)
出现此页面则说明nginx已经安装成功了!
截止到这里,nginx实际上就已经装好了,借助docker可以轻松快速的装好一个nginx,但是如果此时需要部署项目就会比较麻烦,我们需要将自己的文件拷贝进入容器内部,然后进入容器内部操作,所以我们需要借助-v参数,将宿主机文件与容器文件做映射;
- 进入刚刚创建容器的内部,查看nginx相关配置文件的位置;
镜像中nginx.conf配置文件路径:/etc/nginx/nginx.conf
default.conf配置文件的路径:/etc/nginx/conf.d/default.conf
默认首页文件夹html路径:/usr/share/nginx/html
日志文件路径:/var/log/nginx
docker exec -it nginx bash
- 在宿主机上创建相对应的文件夹,如果权限不够加上sudo;
conf:放置nginx.conf,这个是nginx的主配置文件;
conf.d:放置default.conf以及自定义的配置,这里主要放置nginx的子配置文件;
html:放置首页需要展示的html文件;
logs:放置nginx运行过程中产生的日志文件;
mkdir -p /home/nginx/{conf,conf.d,html,logs}
- 接下来将nginx里的主要配置文件复制出来一份(自己写容易出错,也记不住);
docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf docker cp nginx:/etc/nginx/conf.d/default.conf /home/nginx/conf.d/default.conf docker cp nginx:/usr/share/nginx/html /home/nginx
- 最后环节,创建一个新的挂在卷的nginx容器;
先将之前创建的nginx容器关闭,然后创建启动新的容器即可;
在创建是可增加相应的需要部署项目的端口,是具体情况而定;
docker run --name nginx_v -p 80:80 -p 18080:18080 -v /home/nginx/html:/usr/share/nginx/html -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/conf.d:/etc/nginx/conf.d -v /home/nginx/logs:/var/log/nginx -d nginx:1.21.4
- 最后,刷新我们的页面,看看nginx的主页是否显示正常,如果显示正常,则意味着创建成功啦!
记录一下自己安装创建的过程,以后有新的内容将继续补充!
Docker 部署Nginx 并且挂载默认请求路径和配置文件