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
相关推荐
EterNity_TiMe_2 小时前
Docker服务越装越多记不住端口?我用Fenrus把NAS里的常用入口整理成一个导航页
运维·人工智能·docker·ai·容器·cpolar
吴声子夜歌3 小时前
Docker入门与实战——libnetwork插件化网络功能
网络·docker·容器
江湖有缘3 小时前
Docker实战 | 使用Docker部署HarborGuard容器安全扫描平台
安全·docker·容器
江湖有缘4 小时前
Docker实战 | 使用Docker部署Reubah文件转换器和图像处理器
docker·容器·eureka
七夜zippoe5 小时前
把 OpenClaw Agent 搬进 K8s:容器化部署全记录
ai·云原生·容器·kubernetes·openclaw
骑着蜗牛撵大象3275 小时前
ToolJet + PostgreSQL:后台表格、查询和流程,一次搭成可远程访问的业务系统
数据库·低代码·docker·postgresql·内部工具·tooljet
flytalei6 小时前
从 Docker Compose 到 K3s:逐浪笔记首次完整部署与故障排查实战
笔记·docker·容器
吴声子夜歌7 小时前
Docker入门与实战——高级网络功能
网络·docker
JavaPub-rodert16 小时前
Docker 日志为什么能把磁盘写爆?讲透 json-file、local、journald、日志轮转与 docker logs
docker·eureka·json
人生匆匆17 小时前
docker部署ceph集群
ceph·docker·容器