在Docker实战中,Nginx是一个非常常见的应用,常被用作反向代理、负载均衡器以及静态内容服务器。以下是如何使用Docker与Nginx的常见操作:
-
拉取官方Nginx镜像:
docker pull nginx
这会从Docker Hub官方仓库下载最新版本的Nginx镜像。
-
运行Nginx容器:
docker run --name my_nginx -d -p 80:80 nginx
此命令将启动一个名为
my_nginx
的后台(detached)模式的Nginx容器,并将宿主机的80端口映射到容器内的80端口。 -
配置Nginx:
若要自定义Nginx配置文件,通常需要创建一个新的配置文件并挂载到容器内部:docker run --name my_nginx -d -p 80:80 -v /path/to/my/nginx.conf:/etc/nginx/nginx.conf nginx
其中
/path/to/my/nginx.conf
是宿主机上的自定义Nginx配置文件路径。 -
提供静态内容:
如果要服务本地的静态HTML文件,可以挂载宿主机目录作为数据卷:docker run --name my_nginx -d -p 80:80 -v /path/to/static/html:/usr/share/nginx/html nginx
-
上传Nginx镜像至私有仓库:
首先给镜像打标签指向你的私有仓库地址:docker tag nginx:latest your-registry.example.com/nginx:custom-tag
然后推送镜像到私有仓库:
docker push your-registry.example.com/nginx:custom-tag
-
使用Docker Compose部署Nginx:
在docker-compose.yml文件中配置Nginx服务:version: '3' services: nginx: image: nginx ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./html:/usr/share/nginx/html
使用
docker-compose up -d
命令启动Nginx服务。
以上涵盖了从拉取、运行、配置、存储静态内容到将Nginx镜像上传至私有仓库的常用步骤,以及如何利用Docker Compose进行部署。在实际生产环境中,可能还需要考虑更复杂的场景,例如SSL证书配置、多站点支持等。