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后,可以删除
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)