Docker-compose部署nginx

创建配置文件

mkdir -p /usr/local/docker/nginx
cat > /usr/local/docker/nginx/docker-compose.yml<<'EOF'
version: '3.1'
services:
nginx:
# 镜像名称
image: nginx
# 容器名字 docker run --name
container_name: nginx
# 开机自动重启
restart: always
ports:
- '8090:80'
- '8091:8080'
volumes:
- ./conf/nginx.conf:/etc/nginx/nginx.conf
- ./conf.d:/etc/nginx/conf.d
- ./stream.d:/etc/nginx/stream.d
- ./html:/usr/share/nginx/html
EOF
mkdir -p /usr/local/docker/nginx/conf
mkdir -p /usr/local/docker/nginx/conf.d
mkdir -p /usr/local/docker/nginx/stream.d
mkdir -p /usr/local/docker/nginx/html
touch /usr/local/docker/nginx/conf/nginx.conf
touch /usr/local/docker/nginx/conf.d/default.conf
cd /usr/local/docker/nginx
docker-compose up -d nginx

Nginx.conf

cat >/usr/local/docker/nginx/conf/nginx.conf<<'EOF'
user nginx;
worker_processes auto;
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
worker_rlimit_nofile 65535; error_log /var/log/nginx/error.log error;
pid /var/run/nginx.pid; events {
# 多路复用 内核2.6以上版本,大大提高Nginx性能
use epoll;
worker_connections 65535;
} http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
proxy_read_timeout 240s; 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;
access_log off;
client_header_buffer_size 10M;
sendfile on;
#tcp_nopush on; keepalive_timeout 60; #gzip on; include /etc/nginx/conf.d/*.conf;
}
stream {
include /etc/nginx/stream.d/*.conf;
}
EOF

网站配置

cat >/usr/local/docker/nginx/conf.d/web.conf<<'EOF'
server{
listen 80;
server_name 10.1.30.108;
location / {
root /usr/share/nginx/html/html80;
index index.html index.htm;
}
}
server{
listen 8080;
server_name 10.1.30.108;
location / {
root /usr/share/nginx/html/html8080;
index index.html index.htm;
}
} EOF
mkdir -p /usr/local/docker/nginx/html/html80
mkdir -p /usr/local/docker/nginx/html/html8080
echo 'Hello Html80' > /usr/local/docker/nginx/html/html80/index.html
echo 'Hello Html8080' > /usr/local/docker/nginx/html/html8080/index.html

END

[Docker]compose一键部署nginx的更多相关文章

  1. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  2. Docker Compose一键部署Nginx反向代理Tomcat集群

    目录结构如下 mysql/conf/my.cnf [mysqld] user=mysql port=3306 datadir=/var/lib/mysql socket=/var/lib/mysql/ ...

  3. Docker Compose 一键部署LNMP

    Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...

  4. Docker Compose 一键部署多节点爬虫程序

    Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── cento ...

  5. 开源跨境ERP - 小老板 Docker/Docker Compose一键部署

    先上部署成功后的截图,各个菜单点击均无报错 DockerCompose 包含: 1. 三个mysql5.7数据库 2. redis php会话存储+ memcached 3. 小老板php主程序 do ...

  6. Spring Boot 2 (五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    Spring Boot 2 (五):Docker Compose + Spring Boot + Nginx + Mysql 实践 Spring Boot + Nginx + Mysql 是实际工作中 ...

  7. Docker Compose + Spring Boot + Nginx + Mysql

    Docker Compose + Spring Boot + Nginx + Mysql 实践 我知道大家这段时间看了我写关于 docker 相关的几篇文章,不疼不痒的,仍然没有感受 docker 的 ...

  8. Git+Gitlab+Ansible的roles实现一键部署Nginx静态网站(一)--技术流ken

    前言 截止目前已经写了<Ansible基础认识及安装使用详解(一)--技术流ken>,<Ansible常用模块介绍及使用(二)--技术流ken><Ansible剧本介绍及 ...

  9. shell脚本一键部署nginx

    一键部署nginx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ...

随机推荐

  1. 【redis】redis

    一.redis简介: 1. reids 也是一个 key-value 存储系统,更加确切地说,它已经是一个非关系型数据库. 2. 关系型. SQL语言. 3. 非关系型. key - value. 4 ...

  2. VSCode 初次写vue项目并一键生成.vue模版

    VSCode 写vue项目一键生成.vue模版 1.新建代码片段 文件-->首选项-->用户代码片段-->点击新建代码片段--取名vue.json 确定 2.配置快捷生成的vue模板 ...

  3. ubuntu core文件

    ubuntu开启core 检查是否开启core ulimit -c //0表示没有开启 开启core ulimit -c unlimited sudo sh -c 'echo 1 > /proc ...

  4. java京东自动登录

    大部分代码都是参考的这边,我只是在他的逻辑上实现了自动通过验证码,放上主逻辑的代码吧,图片识别我用的若快,可以去接其他平台 https://blog.csdn.net/u013232789/artic ...

  5. pgsql中的行锁

    pgsql中的行锁 前言 用户可见的锁 regular Lock 行级别 FOR UPDATE FOR NO KEY UPDATE FOR SHARE FOR KEY SHARE 测试下加锁之后的数据 ...

  6. k8s~helm镜像版本永远不要用latest

    对于容器编排工具k8s来说,你可以使用它规定的yaml格式的脚本,使用客户端kubectl来与k8s进行通讯,将你定义好的yaml部署脚本应用到k8s集群上,而这对yaml脚本一般来说都是很像的,就是 ...

  7. Java成长第四集--文本处理IO流

    Java IO流在实际业务中使用的频率还是蛮高的,一些业务场景比如,文件的上传和导出,文件的读取等基本都是通过操作IO流来实现的,所以IO流是我们现在学习过程中必须要掌握的技能之一,熟练的使用IO流, ...

  8. 区块链 Hyperledger Fabric v1.0.0 环境搭建

    前言:最近项目涉及到超级账本,在有些理论知识的基础上,需要整一套环境来. 这是一个特别要注意的事情,笔者之前按照网络上推荐,大部分都是推荐ubuntu系统的,于是下载Ubuntu系统(16.04.5和 ...

  9. 别再问我 new 字符串创建了几个对象了!我来证明给你看!

    我想所有 Java 程序员都曾被这个 new String 的问题困扰过,这是一道高频的 Java 面试题,但可惜的是网上众说纷纭,竟然找不到标准的答案.有人说创建了 1 个对象,也有人说创建了 2 ...

  10. Python中有许多HTTP客户端,但使用最广泛且最容易的是requests

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:北京尚脑软件测试 PS:如有需要Python学习资料的小伙伴可以加点击 ...