网站首页 > 精选教程 正文
目标
通过dockerfile定制自己的nginx,可生产使用
模版
一个需要三个文件
[root@localhost nginx]# ls default.conf Dockerfile nginx.repo
- default.conf 是我的nginx转发配置文件
- Dockerfile 是docker的配置文件
- nginx.repo 容器安装nginx的yum镜像
分别看下
//default.conf server { listen 80; server_name localhost; location / { // 测试地址,我采用宿主机的ip端口,开的web服务 proxy_pass http://192.168.1.110:8080/; proxy_set_header Host $host:80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; } } //Dockerfile,采用centos7作为标准镜像,不用nginx标准镜像原因是因为那样启动的容器是mina版的linux,太简单 FROM centos:centos7 #MAINTAINER 维护者信息 MAINTAINER fendo kai.yang@yeepay.com ADD default.conf /etc/nginx/conf.d/ ADD nginx.repo /etc/yum.repos.d/ #RUN 执行以下命令 RUN yum install -y nginx #EXPOSE 映射端口 EXPOSE 80 #CMD 运行以下命令,daemon off后台运行,否则启动完就自动关闭 CMD ["/usr/sbin/nginx", "-g","daemon off;"] // nginx.repo ,用于yum直接安装nginx [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1
操作
- 首先进入文件所在目录
[root@localhost nginx]# cd /apps/nginx/
- 构建镜像,切记最后有个点,否则会报错( requires exactly 1 argument)
- [root@localhost nginx]# docker build -t nginx10 .
- 查看镜像
[root@localhost nginx]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx10 latest dd7d54fef2f3 12 minutes ago 283MB
- 运行镜像
[root@localhost nginx]# docker run -d -p 8888:80 -p 90:80 dd7d54fef2f3
解释一下,-p 8888:80 -p 90:80表示将宿主机的8888和90都映射到容器的80端口,因为nginx.conf配置的是监听容器的80端口,所以访问宿主机的这两个端口都会触发转发逻辑。同理,如果容器中nginx需要监听多个端口时,也可以借用这种方式配置。看下效果
访问90端口
猜你喜欢
- 2024-09-24 使用 Docker Swarm(集群) 和Docker Stack(堆栈)部署容器化应用
- 2024-09-24 容器集群管理工具--k8s部署(三)
- 2024-09-24 防止绕过NGINX直接访问TOMCAT
- 2024-09-24 记一次ip映射以及nginx的反向代理配合
- 2024-09-24 Centos7 Harbor企业级镜像管理系统实战
- 2024-09-24 Nginx docker 镜像使用
- 2024-09-24 Docker数据卷备份恢复、桥接网络设置
- 2024-09-24 在docker中运行第一个实例Nginx
- 2024-09-24 nginx反向代理实战
- 2024-09-24 K8S中Service使用nginx控制器实现Ingress负载均衡器的一个Demo
你 发表评论:
欢迎- 最近发表
-
- java 服务之间调用(rpc)(java实现服务器)
- Java机器学习库(Java ML)(二、聚类)
- 「Java库」如何使用优秀的加密库Jasypt来保护你的敏感信息?
- GitHub精选 | 轻量级Android和Java日志库
- Java面试官:MySQL binlog 有什么作用?主从延迟的了解么?
- Excel函数核武器库:50个高频场景公式——第二弹
- Excel函数核武器库:50个高频场景公式——第一弹
- Spring Cache高性能缓存库 - Caffeine简介
- Java通过Kafka Streams库来实现数据流处理
- 一连问了好几个大佬,竟然都不知道Redis为什么默认16个数据库?
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)