docker 安装 Nginx

查看版本

复制代码
https://hub.docker.com/_/nginx/tags

拉取镜像(挑选一个)

复制代码
docker pull nginx:stable-alpine3.23-perl

配置

创建nginx的配置文件
复制代码
nginx.conf
bash 复制代码
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
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;
    tcp_nodelay     on;

    # 长连接超时时间
    keepalive_timeout  65;

    # 开启gzip压缩(优化Vue静态资源加载速度)
    gzip  on;
    gzip_min_length  1k;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

    server {
		listen 80;
		
		location /app1/ {
        alias /usr/share/nginx/html/app1/dist/;
        try_files $uri $uri/ /app1/index.html;
        add_header Cache-Control "no-cache, no-store";
		}

		# 错误页配置
		error_page   500 502 503 504  /50x.html;
		location = /50x.html {
			root   /usr/share/nginx/html;
		}
	}
}
创建docker-compose.yml 文件
bash 复制代码
docker-compose.yml
bash 复制代码
services:
  nginx:
    image: nginx:stable-alpine3.23-perl
    # 容器名称
    container_name: db-nginx
    # 开机自启
    restart: unless-stopped
    # 端口映射:主机80端口 -> 容器80端口(可根据需要修改,如8080:80)
    ports:
      - "17779:80"
      # 如果需要HTTPS,添加443端口映射
      # - "443:443"
    # 目录挂载(将本地目录映射到容器内)
    volumes:
      - ./conf/nginx.conf:/etc/nginx/nginx.conf:ro
      - ./html:/usr/share/nginx/html:ro
      - ./logs:/var/log/nginx

初始化启动

bash 复制代码
docker-compose up -d

二次启动

bash 复制代码
docker-compose start

停止

bash 复制代码
docker-compose stop

停止并删除容器

bash 复制代码
docker-compose down
相关推荐
Ares-Wang4 小时前
Linux》》systemd 、service、systemctl daemon-reload、systemctl restart docker
linux·运维·docker
苏渡苇7 小时前
Docker 网络完全指南
网络·docker·容器·docker容器·容器通信
风向决定发型丶7 小时前
K8S CPU绑核详解
云原生·容器·kubernetes
Arvin6278 小时前
Nginx 添加账号密码访问验证
运维·服务器·nginx
斯普信云原生组9 小时前
Docker 开源软件应急处理方案及操作手册——镜像管理与构建故障
docker·容器·eureka
MichealChen01050811 小时前
Influxdb-cluster使用docker部署
运维·docker·容器
阿凤2112 小时前
nginx部署如何配置ssl证书
运维·nginx·ssl
斯普信云原生组12 小时前
Docker 开源软件应急处理方案及操作手册——安全漏洞与权限问题
运维·docker·容器
MonkeyKing_sunyuhua13 小时前
阿里云ECS安装docker compose
阿里云·docker·云计算
zhyoobo13 小时前
Nginx Gzip压缩全解析:原理、配置与性能优化指南
运维·nginx·性能优化