docker 安装nginx

dcoker安装nginx

  • docker 安装,硬件要求,linux内核必须是3.10+,uname -r 命令查看内核版本 *

  • docker pull nginx 拉取最新的nginx版本, 如果有版本需要, nginx:版本.例:nginx:1.17

  • docker ps 查看运行中的实例

  • docker ps -a 查看所有实例,包含未运行的实例

  • docker stop 实例ID 停止容器

  • docker rm 实例ID 删除容器

  • docker images 查看所有镜像

  • docker rmi 镜像ID 删除镜像ID

    • 删除镜像ID之前,必须确保该镜像没有运行中的实例,如果有运行中的实例,则停止该实例,建议同时删除该实例(容器)*
  • 创建一个实例,方便复制我们需要的文件

  • docker run --name nginx1 -p 8080:80 -d nginx 第一个8080代表的是宿主机,第二个80代表的是该实例的port(该实例仅用来拷贝文件,宿主机port随便定义,反正会被删除)

  • 通过挂载的方式,让我们自定义外部文件,方便我们配置nginx

  • mkdir -p /opt/nginx/html /opt/nginx/conf /opt/nginx/logs(依次对应静态页面,配置文件,日志文件)

  • 复制文件到指定的路径

  • docker cp nginx1:/etc/nginx/nginx.conf /opt/nginx/conf
    docker cp nginx1:/etc/nginx/conf.d/default.conf /opt/nginx/conf

    • 运行如下命令,启动nginx
      docker run -d -p 80:80 --name mynginx2 -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/conf/default.conf:/etc/nginx/conf.d/default.conf -v /opt/nginx/logs:/var/log/nginx nginx
注意:启动时候,可能会如下错误
* 1 directory index of "/usr/share/nginx/html/" is forbidden, client: 121.35.101.255, server: localhost, request: "GET / HTTP/1.1", host: 
* 原由: /opt/nginx/html:/usr/share/nginx/html, 可能会存在找不到该文件的映射路径,
解决方案:
可手动上传nginx的静态index.html文件到/opt/nginx/html目录里面,即可解决该问题  
* 配置文件在 /opt/nginx/conf/default.conf这个文件里面,原来的nginx.conf包含了该文件

输入IP地址进行nginx访问了

你可能感兴趣的:(docker,nginx,docker部署nginx)