【Docker系列】Nginx

系统信息:

Linux ecs-205380 4.15.0-169-generic #177-Ubuntu SMP Thu Feb 3 10:50:38 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

本文章将Nginx安装在/home/docker/nginx

什么是Nginx

Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。

Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。

Nginx的稳定性、功能集、示例配置文件和低系统资源的消耗让他后来居上,在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。

编写docker-compose.yml

进入/home/docker/nginx

lilbai@: sudo vim docker-compose.yml

docker-compose.yml文件内输入如下内容:

version: '3.0'
services:
  nginx: # 服务名称
    image: nginx:latest # 镜像版本 默认最新
    restart: always # 启动方式
    container_name: nginx #容器名称
    volumes: # 本机路径:容器路径
      - /home/docker/nginx/conf/conf.d:/etc/nginx/conf.d   
      - /home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - /home/docker/nginx/html:/usr/share/nginx/html
      - /home/docker/nginx/logs:/var/log/nginx
      - /home/docker/nginx/ssl:/etc/ssl
    ports: # 端口映射,本机端口:容器端口
      - 80:80
      - 443:443

内容分析

version: '3.1'				# 版本
services:
  nginx:					# web程序
    restart: always
    image: nginx			# 镜像名,或者镜像下载地址也可以
    container_name: nginx	# 之后构建容器的名字
    ports:					# 端口映射
      - 80:80				# 主机端口:容器端口
    volumes:
      - /home/docker/nginx/conf.d/:/etc/nginx/conf.d
      - /home/docker/nginx/html/:/usr/share/nginx/html
      - /home/docker/nginx/logs:/var/log/nginx

构建docker容器

lilbai@: docker-compose build

更新docker-compose

lilbai@: docker-compose up -d

查看容器是否存在

lilbai@: docker ps

存在后即前面步骤操作成功

查看映射文件夹是否存在

进入/home/docker/nginx/查看

lilbai@: cd /home/docker/nginx/
lilbai@: ls
conf.d  docker-compose.yml  html  logs

conf.dhtmllogs映射的文件夹已经存在。

  • conf.d是server块配置文件夹
  • html是页面资源文件夹
  • logs是日志文件夹

编写server块

进入/home/docker/nginx/conf.d文件夹,编辑default.conf文件,如果没有default.conf文件,则新建即可。

lilbai@: sudo vi default.conf

将以下内容填入default.conf

server{
    
    
  listen 80;
  server_name localhost;
  
  location / {
    
    
    root  /usr/share/nginx/html;
    index index.html index.htm;
  }
  
  location /test {
    
    
    root /usr/share/nginx/html/test;
    index index.html index.htm;
  }
}

添加html访问资源

lilbai@: cd /home/docker/nginx/html
lilbai@: vi index.html
# 如果 vi index.html 不能保存的话,则使用 sudo vi index.html

随便在index.html写点东西即可

<h1>
    11111
</h1>

重启Nginx

编辑完资源文件,重启docker-compose或者nginx都可以

lilbai@: docker-compose restart
# 或者
lilbai@: docker restart nginx

猜你喜欢

转载自blog.csdn.net/m0_53896808/article/details/129059636