nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > nginx镜像构建

nginx镜像构建的知识点及方法步骤详解

作者:毛毛虫的小小蜡笔

这篇文章主要为大家介绍了nginx镜像构建的知识点详解,<BR>有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1、如何进入nginx容器

// 通过exec命令可以进入到镜像里面。
docker exec -it nginx-alpine /bin/sh
// 退出镜像
exit

这里需要注意下,如果是标准的nginx镜像,一般是通过 docker exec -it nginx01 bash 来进入到镜像里面。

所以当通过 bash 进不去的时候,可换成其他命令试试。

比如:docker exec -it nginx-alpine sh

因为Dockerfile没有设置WORKDIR,所以进去后就到根目录了。而且因为当前的nginx镜像是alpine版本,进去后用不了 ll 命令,只能是 ls 命令。相当于精简了一些命令。

nginx配置文件在/etc/nginx

2、把文件从宿主机拷贝到容器里面

方法一:

通过docker的cp命令。

// 比如当前在 /data/docker目录,下面命令是拷贝目录下的nginx.conf配置文件到容器7d0b413ce005(容器id,可通过docker ps查看)的/etc/nginx目录里面
docker cp nginx.conf 7d0b413ce005:/etc/nginx/

方法二:

在创建镜像的时候,一起拷贝文件。这就需要在Dockerfile文件里面写命令了。

// 在Dockerfile文件中新增COPY命令。拷贝跟Dockerfile同目录下的index.html到容器的/usr/share/nginx/html目录下面。如果容器有该文件,则会替换掉。
COPY index.html /usr/share/nginx/html/

3、启停容器和nginx镜像以及查看nginx日志

容器的操作:

// 可以通过容器id来启动停止操作。比如改了nginx的配置,那可以通过容器的restart命令来应用刚才的nginx配置。
docker start 13e9f1a7c64f
docker stop 13e9f1a7c64f
docker restart 13e9f1a7c64f
// 查看nginx日志。logs后面加容器的名称或者容器的id
docker logs nginx-alpine
docker logs 13e9f1a7c64f
// 也可以通过容器名称来启动停止操作。nginx-alpine是容器名称,可通过docker ps和docker ps -a查看。
docker start nginx-alpine
docker stop nginx-alpine
docker restart nginx-alpine

nginx镜像的操作

// 13e9f1a7c64f是容器id,可通过docker ps查看。前提是容器在运行中。
docker exec 13e9f1a7c64f nginx -s stop
docker exec 13e9f1a7c64f nginx -s start
docker exec 13e9f1a7c64f nginx -s reload

执行上面命令的前提是容器在运行中。

如果容器不在运行中,可通过容器的操作来启动容器,再操作nginx。

所以一般不操作nginx命令,而是操作容器来启停nginx镜像服务。

如果想停止nginx服务,可以通过容器的stop,而不是用nginx的stop命令。启动,则是容器的start命令。重启,则是容器的restart命令。

比如改了nginx的配置,那可以通过容器的restart命令就可以。

4、镜像和容器的删除操作

// 删除镜像。可通过docker images查看imageid
docker rmi imageid
// 删除容器。可通过docker ps或者docker ps -a查看containerid
docker rm containerid

5、docker的启动等操作

systemctl start docker
systemctl stop docker
systemctl status docker

6、保存和导入镜像或容器

// 保存容器nginx-alpine:v1到tar文件。
save -o nginx-alpine.tar nginx-alpine:v1
// 导入镜像
docker load -i nginx-alpine.tar

7、使用nginx -g daemon off启动nginx容器的原因

简单来说,是为了保持nginx容器不退出,要关闭nginx后台运行。

以上就是nginx镜像构建的知识点及方法步骤详解的详细内容,更多关于nginx镜像构建的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文