Docker(十):Docker实战 Docker 安装 Nginx
Docker 安装 Nginx
Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务 。
1、查看可用的 Nginx 版本
访问 Nginx 镜像库地址: https://hub.docker.com/_/nginx?tab=tags。
可以通过 Sort by 查看其他版本的 Nginx,默认是最新版本 nginx:latest。
你也可以在下拉列表中找到其他你想要的版本:
此外,我们还可以用 docker search nginx 命令来查看可用版本:
$ docker search nginx
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
nginx Official build of Nginx. 3260 [OK]
jwilder/nginx-proxy Automated Nginx reverse proxy for docker c... 674 [OK]
richarvey/nginx-php-fpm Container running Nginx + PHP-FPM capable ... 207 [OK]
million12/nginx-php Nginx + PHP-FPM 5.5, 5.6, 7.0 (NG), CentOS... 67 [OK]
maxexcloo/nginx-php Docker framework container with Nginx and ... 57 [OK]
...
2、取最新版的 Nginx 镜像
这里我们拉取官方的最新版本的镜像:
$ docker pull nginx:latest
3、查看本地镜像
使用以下命令来查看是否已安装了 nginx:
$ docker images
在上图中可以看到我们已经安装了最新版本(latest)的 nginx 镜像。
4、运行容器
安装完成后,我们可以使用以下命令来运行 nginx 容器:
$ docker run --name nginx-test -p 8080:80 -d nginx
参数说明:
- –name nginx-test:容器名称。
- -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
- -d nginx: 设置容器在在后台一直运行。
5、安装成功
最后我们可以通过浏览器可以直接访问 8080 端口的 nginx 服务:
自定义挂载配置nginx
docker run \--name nginx \-d -p 80:80 \-v /Users/andy/docker/nginx/html:/usr/share/nginx/html \-v /Users/andy/docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \-v /Users/andy/docker/nginx/conf.d:/etc/nginx/conf.d \-v /Users/andy/docker/nginx/logs:/var/log/nginx \nginx
# 1. 第一个“-v”,是项目位置,把项目放到挂载到的目录下即可
# 2. 第二个“-v”,是挂载的主配置文件"nginx.conf",注意"nginx.conf"文件内有一行
# "include /etc/nginx/conf.d/*.conf;" ,
# 这个include指向了子配置文件的路径,此处注意include后所跟的路径一定不能出错
# 3. 第三个“-v”,把docker内子配置文件的路径也挂载了出来,注意要与 “2.” 中include指向路径一致
# 4. 第四个“-v”,把nginx日志挂载出来
# 5. nginx.conf是挂载了一个文件(docker是不推荐这样用的),conf.d挂载的是一个目录
准备挂载的 nginx.conf :(放入/Users/andy/docker/nginx/nginx.conf中)
user nginx;
worker_processes 1;error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;events {worker_connections 1024;
}http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log /var/log/nginx/access.log main;sendfile on;#tcp_nopush on;keepalive_timeout 65;#gzip on;include /etc/nginx/conf.d/*.conf;
}
准备挂载的 default.conf (/Users/andy/docker/nginx/conf.d):
erver {listen 80;server_name localhost;#charset koi8-r;#access_log /var/log/nginx/host.access.log main;location / {root /usr/share/nginx/html;index index.html index.htm;}location /api{proxy_pass http://192.168.1.1:9999/api;# access_log "logs/test.log";}
}
Docker(十):Docker实战 Docker 安装 Nginx相关推荐
- Docker(十二):Docker+Jenkins+Nginx+Spring Boot 自动化部署项目
前言 虽然Docker已经是风靡全球的容器技术了,统一环境避免环境问题上是Docker的主要吸引点之一,但使用时详细还是会遇到不少问题的,比如个人搭建时曾思考过这些问题: Jenkins官网既然有Do ...
- 【docker】第二节:安装nginx、mysql、php
教程:centos下docker的安装教程 范围:用于docker的nmp环境的安装,nmp全称是nginx.mysql.php. 安装前先创建一个dockerHub的帐号 步骤一:先注册一个dock ...
- docker容器企业级实战——docker部署与操作实践
docker介绍 什么是docker Docker使用Go语言开发,基于Linux内核的cgroup.namespace以及Unionfs等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术,由于 ...
- Docker笔记:常用服务安装——Nginx、MySql、Redis(转载)
转载地址:https://www.cnblogs.com/spec-dog/p/11320513.html 开发中经常需要安装一些常用的服务软件,如Nginx.MySql.Redis等,如果按照普通的 ...
- Docker 入门到实战 之 安装RocketMQ
--- Don`t be the same, be better!--- RocketMQ 是一个队列模型的消息中间件,具有高性能.高可靠.高实时.分布式特点. 具体的描述可参考官网文 ...
- Docker(十五):Docker实战 使用 docker-compose
本章通过一个具体的demo来了解 docker-compose docker-compose 是做什么的 在构建一个完整的服务时,我们通常启动一个容器, 一旦出现多个容器需要同时启动的时候手打是下下之 ...
- Docker 入门到实战 之 安装SVN
1.镜像下载 查找镜像 docker search svn 拉取镜像 docker pull docker.io/garethflowers/svn-server 查看镜像 docker images ...
- Docker(十四):Docker:网络模式详解
Docker作为目前最火的轻量级容器技术,牛逼的功能,如Docker的镜像管理,不足的地方网络方面. Docker自身的4种网络工作方式,和一些自定义网络模式 安装Docker时,它会自动创建三个网络 ...
- Docker虚拟化命令实战
Docker虚拟化命令实战 Docker典型命令演练 docker search命令实战 docker pull命令实战 docker images命令实战 docker run命令实战 docker ...
- Docker基础、利用Docker Compose部署Vue项目
前言 最近,接触了Docker,写一个笔记记录一下学习的成果.参考了docker官网和一个b站老师的讲解教程Docker快速上手教程,受益良多! 一.Docker安装和重要概念 1.安装docker ...
最新文章
- zabbix trapper方式监控
- Ansible — 示例与最佳实践
- 下载了python在哪里写代码-通过python下载FTP上的文件夹的实现代码
- 理解 Delphi 的类(十一) - 深入类中的方法[3] - 方法在实现时的参数省略
- Boost:是否支持sse2指令的测试程序
- python二维高斯分布生成_python 多维高斯分布数据生成方式
- 万能门店小程序_关于传统门店开发微信小程序的优势
- C语言高级编程:二级指针的赋值
- [MVC学习笔记]1.项目结构搭建及单个类在各个层次中的实现
- Linux 高性能服务器编程——多线程编程
- cocos2d c 调用java_cocos2d-x之C++ 调用Java函数并接收返回值
- duplicate database的时候,rman连接 auxiliary database的后状态不正确
- modelsim多模块联合仿真时,同一signal,一边有信号另一边没有的问题
- 语言包常用语言对应代码
- 优锘|ThingJS-X零代码平台:七大智慧场景全新Demo
- 项目管理包含了哪些特征?
- Windows7快捷方式图标丢失的解决方案
- 闲鱼双11端侧实践总结
- 什么是UV贴图和展开?没有他们3D建模会变成什么样?来看看!
- Android Surface 介绍
热门文章
- 重磅!「肠道菌群」项目征集,百万科研经费助力细分领域全新突破
- SPIEC-EASI的微生物网络构建示例
- 国自然基金标书构思及撰写经验分享会
- 2019年上半年国内学者在植物领域共发表6篇Science, 1篇Nature,1篇Cell!
- Nature-2012-拟南芥根系微生物组的结构
- Error: Discrete value supplied to continuous scale
- R语言ggplot2可视化、在可视化区域中自定义添加多个大小不同矩形阴影区域、自定义配置大小不同矩形阴影区域的颜色(Adding multiple shadows/rectangles)
- R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置图例位置、移除图例)实战
- R将dataframe数据保存为csv文件
- R构建鲁棒回归模型(Robust Regression)