【微服务】docker安装nginx,docker安装nginx


1、搜索nginx镜像

docker search nginx

2、下载nginx镜像

docker pull nginx

3、映射nginx工作目录

为了方便修改nginx中的配置、网页。我们再宿主机上创建nginx相关的目录,命令如下:

sudo mkdir -p /opt/nginx /etc/nginx /var/log/nginx

4、运行容器,拷贝配置

首先使用默认参数运行容器,然后将容器内部的默认配置拷贝到第三步准备的工作目录中。

默认参数运行容器,命令如下:

docker run -p 443:443 -p 80:80 -p 8088:8088 --name mynginx -d nginx  

之后进入该容器内部查看默认的配置文件:

docker exec -it 32e505a54570 bash

其中32e505a54570表示的是docker ps之后查看到的容器id。查看容器内默认的配置存放地址,本次默认的参数存放地址如下:

/usr/share/nginx/html/

/etc/nginx

/var/log/nginx

其中我们需要将etc下的nginx配置复制到宿主机,方便后面直接修改宿主机上的配置,将html目录也映射到宿主机方便更新静态资源。

可以使用如下命令复制容器内的目录到宿主机的指定目录:

sudo docker cp mynginx:/etc/nginx /etc

表示将名称为mynginx的容器内的/etc/nginx 目录拷贝到etc目录下。用类似的方法可以拷贝其他的配置到宿主机。

5、使用宿主机的配置运行nginx

从默认的容器中拷贝出配置到宿主机后,需要重新运行新的容器将宿主机的目录映射到容器中。

(1)、停止nginx服务

sudo docker ps
sudo docker kill d504e14eb5b8

先通过ps查看到在运行的nginx容器的id,然后通过kill命令停止在运行的容器。

(2)、删除旧容器

通过如下命令删除旧的容器:

sudo docker ps -a
sudo docker rm d504e14eb5b8

先通过ps查看已经创建的容器id,然后通过docker rm id删除已存在的容器。

(3)、带参数运行nginx

可以通过如下带参数的命令重新运行nginx服务:

docker run -p 443:443 -p 80:80 -p 8088:8088 --name mynginx -v /opt/nginx/html:/usr/share/nginx/html/ -v /etc/nginx:/etc/nginx -v /opt/nginx/logs:/var/log/nginx  -d nginx  

6、重新加载nginx配置

 在修改了nginx配置后我们常常需要重新加载nginx参数。可以使用如下命令使nginx reload。

docker exec -i 32e505a54570 nginx -s reload

其中32e505a54570表示docker ps看到的nginx在运行的服务id。

相关内容

    暂无相关文章