nginx111报错重启docker恢复

nginx111报错重启docker恢复,第1张

1、查看nginx日志,排查错误原因。

2、检查nginx配置文件,检查是否存在错误。

3、检查系统资源,查看是否存在资源不足问题。

4、重启docker容器,重新载入nginx配置文件,恢复系统正常运行。

5、更新docker容器,使用最新的nginx版本,解决潜在的bug。

6、重新构建docker镜像,以更新配置文件,修复出现的错误。

7、检查docker容器是否被恶意攻击,清除恶意文件,确保安全。

基于 Docker 安装 Nginx

查找Nginx镜像

语法:docker search nginx

示例:

获取Nginx镜像

示例:

启动nginx容器实例

说明:--name nginx nginx 第一个nginx是通过--name指定的nginx容器实例的名称,另一个nginx表示nginx仓库的名称。

查看nginx容器实例的进程信息

通过ps -ef | grep nginx查看

进入nginx容器内

杀死nginx容器实例

停止nginx实例

启动nginx容器实例

重启nginx容器实例

移除nginx容器实例

案例

暴露外部端口

基于docker run -d --name nginx nginx方法启动nginx后,Docker 容器并没有对外暴露访问的端口,即无法通过当前主机外部浏览器器访问nginx。那么该怎么样呢?

语法:

-p 80:80:通过-p来指定Docker容器中nginx实例对外开放的端口。本例中,第一个80端口是对外开放的端口,第二个80端口指对外开放的端口映射到容器里的端口号。

示例:

通过当前主机外的浏览器访问nginx,如下图:

指定外部的配置文件

语法:

说明:

-v: 表示挂载一个本机目录或文件到容器里。

-v /develop/nginx/nginx.conf:/etc/nginx/nginx.conf:将/develop/nginx/nginx.conf配置文件挂载到容器中/etc/nginx/nginx.conf这个配置文件中。

-v /develop:/develop:将/develop这个目录挂载到容器里的/develop这个目录里。

示例:

注意事项:指定外部配置文件,同时需要指定nginx的首页面,否则会抛出404错误,原因就是因为nginx找不到配置文件中默认的index页面。

本例中,使用/develop/apps/static/index.html替代了容器里的nginx默认的index页面,同时,-v /develop:/develop挂载根目录即可访问子目录。

指定网络模式:--net=bridge 默认模式

其中8080是指主机的端口,而80是指容器的端口

我们先看一下端口的状态

docker是运行在Linux上的,在Windows中运行docker,实际上还是在Windows下先安装了一个Linux环境,然后在这个系统中运行的docker。也就是说,服务中使用的localhost指的是这个Linux环境的地址,而不是我们的宿主环境Windows。我们可以通过命令:

找到这个Linux的ip地址,一般情况下这个地址是192.168.99.100,然后在Windows的浏览器中,输入这个地址,加上服务的端口即可启用了。

访问 http:localhost:8080,可以看到安装成功。

把本地路径 /Users/zhangliyuan/Programming/nginxdk 挂载到 /etc/nginxdk 下。

容器内/etc/nginxdk没有,会自动创建。

如果/etc/nginxdk已经存在,启动则会报错,不适合挂载已存在文件的文件夹。

这个命令主要是方便把容器内的一些文件复制到挂载文件夹,方便宿主机查看。

如果想多挂载几个配置文件,需要多写几个 -v

stop后,可以删除


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8343137.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存