docker pull nginx 命令安装

查找 Docker Hub 上的 nginx 镜像:

docker search nginx

这里我们拉取官方的镜像

docker pull nginx

等待下载完成后,我们就可以在本地镜像列表里查到 REPOSITORY 为 nginx 的镜像

docker images nginx

以下命令使用 Nginx 默认的配置,来启动一个 Nginx 容器实例

docker run --name nginx-test1 -p 8081:80 -d nginx

  • nginx-test1 容器名称
  • -d: 设置容器在后台一直运行
  • -p 端口进行映射,将本地 8081 端口映射到容器内部的 80 端口(host portcontainer port

执行以上命令会生成一串字符串,类似 13afb35cbc98ebd8ad451f0fda9bec24e814916c1e929b89363e7ca92c1746eb,这个表示容器的 ID,一般可作为日志的文件名。

我们可以使用 docker ps 命令查看容器是否有在运行:

docker ps 

PORTS 部分表示端口映射,本地的 8081 端口映射到容器内部的 80 端口。

在浏览器中打开 http://机器IP:8081/,效果如下:


nginx 部署

首先,创建目录 nginx, 用于存放后面的相关东西:

mkdir -p ./nginx/www ./nginx/logs ./nginx/conf

拷贝容器内 Nginx 默认配置文件到本地当前目录下的 conf 目录,容器 ID 可以查看 docker ps 命令输入中的第一列:

docker cp 13afb35cbc98:/etc/nginx/nginx.conf ./nginx/conf

  • www: 目录将映射为 nginx 容器配置的虚拟目录
  • logs:  目录将映射为 nginx 容器的日志目录
  • conf:  目录里的配置文件将映射为 nginx 容器的配置文件

部署命令

docker run -d -p 8081:80 --name nginx-web-test -v /opt/miracleTest/nginx/www:/usr/share/nginx/html -v /opt/miracleTest/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/miracleTest/nginx/logs:/var/log/nginx nginx

或者

docker run -d -p 8081:80 --name nginx-web-test -v $PWD/nginx/www:/usr/share/nginx/html -v $PWD/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/nginx/logs:/var/log/nginx nginx

此命令中的机器目录要是全路径!!

命令说明:

  • -p 8081:80: 将主机的 8081 端口 映射到 容器的 80 端口

  • --name nginx-web-test将容器命名为 nginx-web-test

  • -v $PWD/nginx/www:/usr/share/nginx/html:将我们自己创建的 www 目录挂载到容器的 /usr/share/nginx/html

  • -v $PWD/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:将我们自己创建的 nginx.conf 挂载到容器的 /etc/nginx/nginx.conf

  • -v $PWD/nginx/logs:/var/log/nginx:将我们自己创建的 logs 挂载到容器的 /var/log/nginx

启动以上命令后进入 ./nginx/www 目录:

cd $PWD/nginx/www

创建 index.html 文件,内容如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Docker Nginx</title>
</head>
<body>
<h1>我的第一个标题: Docker Nginx</h1>
<p>我的第一个段落: Hello, Nginx.</p>
</body>
</html>

刷新页面,输出结果为:


相关命令

如果要重新载入 Nginx 可以使用以下命令发送 HUP 信号到容器

docker kill -s HUP container-name

停止 Nginx 容器命令:

docker stop container-name

启动 Nginx 容器命令:

docker start container-name

重启 Nginx 容器命令:

docker restart container-name

docker update --restart=always

docker安装nginx挂载启动的更多相关文章

  1. Docker安装Nginx(含:Windows启动、重启、停止)

    Docker安装Nginx #docker pull nginx:latest (第一次启动Docker-Nginx) #docker run --detach \ --publish 80:80 \ ...

  2. 阿里云CentOS7.3服务器通过Docker安装Nginx

    前言 小编环境: 阿里云CentOS7.3服务器 docker 下面分享一次小编在自己的阿里云CentOS7.3服务器上使用Docker来安装Nginx的一次全过程 温馨小提示: 如果只是希望单纯使用 ...

  3. Linux、Docker安装Nginx

    Docker安装Nginx #docker images nginx #docker search nginx #docker pull nginx #docker run -it -p 8084:8 ...

  4. (五) Docker 安装 Nginx

    参考并感谢 官方文档 https://hub.docker.com/_/nginx 下载nginx镜像(不带tag标签则表示下载latest版本) docker pull nginx 启动 nginx ...

  5. Docker实战 | 第三篇:Docker安装Nginx,实现基于vue-element-admin框架构建的项目线上部署

    一. 前言 在上一文中 点击跳转 通过IDEA集成Docker插件实现微服务的一键部署,但 youlai-mall 是前后端分离的项目,除了后端微服务的部署之外,当然还少不了前端工程的部署.所以本篇讲 ...

  6. 【docker专栏4】使用docker安装nginx提供web服务

    一般学习一项技术,会先用一个最简单的例子或最典型的例子来向大家讲解入门内容,所以此文为大家介绍使用docker安装nginx容器服务.从基础使用的角度来讲,此文几乎涵盖了docker最核心的内容:镜像 ...

  7. Docker02 基本命令、开发环境搭建、docker安装nginx、Dockerfile、路径挂载

    1 基本命令 1.1 docker相关 centos6.5 安装docker环境 >sudo yum install -y http://mirrors.yun-idc.com/epel/6/i ...

  8. 【转载】Docker 安装 Nginx 并个性化挂载配置文件 nginx.conf

    首先,系统(3.8以上内核的linux)中安装好 Docker 这个运用程序.由于网络原因,我们下载一个Docker官方的镜像需要很长的时间,甚至下载失败.为此,阿里云容器镜像服务提供了官方的镜像站点 ...

  9. docker下安装nginx,启动ngixn,修改nginx配置等--超详细

    1.获取nginx版本 docker中nginx版本信息:https://hub.docker.com/_/nginx?tab=tags&page=1&ordering=last_up ...

  10. docker 安装nginx并挂载配置文件和www目录以及日志目录

    ---恢复内容开始--- 一 首先 docker pull nginx 二 docker run --name myNginx -d -p 80:80 -v e:/docker/nginx/www:/ ...

随机推荐

  1. 《Rust权威指南》学习笔记——8.通用集合类型

    Rust通用集合类型 动态数组Vec 字符串String 和&str 哈希映射HashMap

  2. KMS服务器 激活win 和 office

    环境:Debian 9.5 (Google Cloud) 切换到root用户:sudo su wget --no-check-certificate https://github.com/teddys ...

  3. python多线程的问题

    参考:https://stackoverflow.com/questions/20939299/does-python-support-multithreading-can-it-speed-up-e ...

  4. TP5--数据库基本操作

    /** * 插入数据 * 执行成功返回影响数据的条数,执行失败返回false */ //添加一条数据 $data = [ 'name'=>'wangwu', 'pwd'=>123456 ] ...

  5. Linux 释放内存及占用较高问题排查

    1. 查看内存情况 #按 k 查看 free #按兆M查看 free -m total:总计物理内存的大小. used:已使用多大. free:可用有多少. Shared:多个进程共享的内存总额. B ...

  6. C#和.NET Framework 简介

    C#是一种通用的类型安全且面向对象编程的语言.这种语言的目标是提高程序员的生产力,为此需要在简单性.可表达性和性能之间实现平衡.C#语言的首席架构师从第一个版本开始就是Anders Hejlsberg ...

  7. 二进制安装K8S kubctl get node 返回No resources found

    问题描述:node节点kubelet服务启动成功后,在集群master节点执行命令具体结果如下截图 原因:kubelet设置的cgroups和docker的不一致导致 修改docker的cgroup, ...

  8. STM32-USART打印字符、字符串函数自己犯的错误反思

    void UART_Send_Byte(USART_TypeDef *USARTx, uint8_t cha) { USART_SendData(USARTx, cha); while(USART_G ...

  9. The `.update()` method does not support writable nestedfields by default. Write an explicit `.update()` method for serializer `...`, or set `read_only=True` on nested serializer fields.解决办法

    原因 Serializers中,外表的字段如source="group.title"不能进行写入操作 解决办法 将外表字段设置为read_only=True,此时可能有人就会问了: ...

  10. lui - imageViewer - 图片查看器

    imageViewer - 图片查看器 ImageViewer Table Attributes 参数 说明 类型 可选值 默认值 urlList 图片列表 Array - [] onChange 图 ...