docker 安装 nginx 并且挂载数据卷

Docker 挂载

准备工作

配置docker 镜像

vim  /etc/docker/daemon.json 

{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}

重启

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

检查效果

$ docker info
Registry Mirrors:
 https://reg-mirror.qiniu.com/
Live Restore Enabled: false
Registries: docker.io (secure)
[root@cyt ~]# 

下载 nginx

docker pull nginx

配置本地文件

新建文件夹

mkdir nginx
cd nginx
mkdir conf
mkdir conf.d
mkdir logs
mkdir html

在这里插入图片描述

编写文件

conf / 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;
}

/opt/nginx/conf.d/default.conf

server { 
  listen    80; 
  server_name localhost; 
 
  #charset koi8-r; 
  #access_log /var/log/nginx/log/host.access.log main; 
 
  location / { 
    # root  /opt/nginx/html; 
    root   /usr/share/nginx/html;  
    index index.html index.htm; 
    autoindex on; 
    #try_files $uri /index/index/page.html; 
    #try_files $uri /index/map/page.html; 
  } 
 
  #error_page 404       /404.html; 
 
  # redirect server error pages to the static page /50x.html 
  # 
  error_page  500 502 503 504 /50x.html; 
  location = /50x.html { 
    root  /usr/share/nginx/html; 
  } 
 
  # proxy the PHP scripts to Apache listening on 127.0.0.1:80 
  # 
  #location ~ \.php$ { 
  #  proxy_pass  http://127.0.0.1; 
  #} 
 
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
  # 
  #location ~ \.php$ { 
  #  root      html; 
  #  fastcgi_pass  127.0.0.1:9000; 
  #  fastcgi_index index.php; 
  #  fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 
  #  include    fastcgi_params; 
  #} 
 
  # deny access to .htaccess files, if Apache's document root 
  # concurs with nginx's one 
  # 
  #location ~ /\.ht { 
  #  deny all; 
  #} 
}


/opt/nginx/html/index.html

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>系统时间</title>
</head>
<body>
<div id="datetime">
    <script>
        setInterval("document.getElementById('datetime').innerHTML=new Date().toLocaleString();", 1000);
    </script>
</div>
</body>

开始挂载

docker 查看镜像

[root@cyt conf.d]# docker images
REPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE
docker.io/jenkinsci/blueocean       latest              0577399033d7        2 days ago          579 MB
docker.io/nginx                     latest              08393e824c32        4 days ago          132 MB
docker.io/redis                     latest              f9b990972689        3 months ago        104 MB
docker.io/centos/mysql-57-centos7   latest              f83a2938370c        10 months ago       452 MB
docker.io/tiangolo/nginx-rtmp       latest              ab0f3f3dcb6f        2 years ago         845 MB
[root@cyt conf.d]# 

创建容器

[root@cyt conf.d]# docker run --name nginx81 -d -p 81:80 -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/logs:/var/log/nginx -v /opt/nginx/conf.d:/etc/nginx/conf.d -d nginx
548c53bb6c05406e9892b54f1d0f17027ab7150df88bae574e68298907be4a2d
[root@cyt conf.d]# docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                     NAMES
548c53bb6c05        nginx               "/docker-entrypoin..."   12 minutes ago      Up 12 minutes       0.0.0.0:81->80/tcp        nginx81
e6446a9ec573        f83a2938370c        "container-entrypo..."   3 months ago        Up About an hour    0.0.0.0:33306->3306/tcp   tensquare_mysql
[root@cyt conf.d]# 
#将容器中nginx的80端口映射到本地的81端口
docker run --name nginx81 -d -p 81:80 
-v /opt/nginx/html:/usr/share/nginx/html 
-v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf 
-v /opt/nginx/logs:/var/log/nginx 
-v /opt/nginx/conf.d:/etc/nginx/conf.d 
-d nginx:latest

测试

在这里插入图片描述

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值