二、docker创建nginx容器
2021/9/10 7:06:33
本文主要是介绍二、docker创建nginx容器,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、拉取nginx镜像
拉取最新的nginxdocker镜像
docker pull nginx
2、在主机创建挂载目录
mkdir -p /data/01-nginx/{conf,html,log}
3、在文件夹/data/nginx/conf下新建nginx.conf文件
user nginx; #设置nginx服务的系统使用用户 worker_processes 1; #工作进程数 error_log /var/log/nginx/error.log warn; #nginx的错误日志 pid /var/run/nginx.pid; #nginx启动时候的pid events { worker_connections 1024; #每个进程允许的最大连接数 } http { #http请求配置,一个http可以包含多个server #定义 Content-Type include /etc/nginx/mime.types; default_type application/octet-stream; #日志格式 此处main与access_log中的main对应 #$remote_addr:客户端地址 #$remote_user:http客户端请求nginx认证的用户名,默认不开启认证模块,不会记录 #$timelocal:nginx的时间 #$request:请求method + 路由 + http协议版本 #status:http reponse 状态码 #body_bytes_sent:response body的大小 #$http_referer:referer头信息参数,表示上级页面 #$http_user_agent:user-agent头信息参数,客户端信息 #$http_x_forwarded_for:x-forwarded-for头信息参数 log_format main '$http_user_agent' '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #访问日志,后面的main表示使用log_format中的main格式记录到access.log中 access_log /var/log/nginx/access.log main; #nginx的一大优势,高效率文件传输 sendfile on; #tcp_nopush on; #客户端与服务端的超时时间,单位秒 keepalive_timeout 65; #gzip on; server { #http服务,一个server可以配置多个location listen 80; #服务监听端口 server_name localhost; #主机名、域名 #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { try_files $uri $uri/ /index.html;#刷新页面重定向 root /usr/share/nginx/html; #页面存放目录 index index.html index.htm; #默认页面 } #error_page 404 /404.html; # 将500 502 503 504的错误页面重定向到 /50x.html error_page 500 502 503 504 /50x.html; location = /50x.html { #匹配error_page指定的页面路径 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; #} } include /etc/nginx/conf.d/*.conf; }
4、服务器配置安全组端口号
5、运行容器并把nginx容器的配置文件挂载到主机
docker run --name 01-nginx -d -p 8090:80 --restart=always --privileged=true -v /data/01-nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/01-nginx/log:/var/log/nginx -v /data/01-nginx/html/dist:/usr/share/nginx/html nginx
// 运行容器并挂载命令 docker run --name 01-nginx//容器起名为nginx -d //后台运行 -p 8090:80 //把主机80端口映射到容器80端口 --restart=always --privileged=true //防止挂载时权限不够 -v /data/01-nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/01-nginx/log:/var/log/nginx -v /data/01-nginx/html/dist:/etc/nginx/html //把文件挂载到主机目,主机文件目录:容器文件目录 nginx //运行镜像的名称REPOSTITORY
6、在 html/dist 中创建index.html 随便输入一些内容
7、打开浏览器访问主机ip
127.0.0.1:8090
这篇关于二、docker创建nginx容器的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-20Docker部署资料:新手入门教程
- 2024-12-19Docker部署实战:新手入门教程
- 2024-12-19Docker部署教程:新手入门详解
- 2024-12-09云原生周刊:在Docker上部署大语言模型
- 2024-12-05Docker教程:新手快速入门指南
- 2024-12-05Docker项目实战:新手教程与案例解析
- 2024-12-04Docker入门教程:快速掌握基础操作
- 2024-12-04Docker入门教程:轻松搭建你的第一个容器化应用
- 2024-12-04Docker-Compose 入门教程:全面解析基础命令与应用场景
- 2024-12-04Docker入门:新手必读的简单教程