docker之安装nginx的教程
作者:java阿杜
docker安装nginx教程
在平常的开发工作中,我们经常会用到 nginx,那么在 docker 中 如何安装 nginx呢?又有哪些需要注意的事项呢?
简单来说:
- 第一步:拉取 nginx 镜像;
- 第二步:创建 挂载目录并设置 nginx.conf 文件;
- 第三步:启动容器。第四步:测试 nginx。
1:拉取 nginx 镜像:docker pull nginx:版本号
拉取镜像,如果不指定版本号,那么默认拉取最新的镜像。如果拉取成功,可以通过 docker ps 命令查看:
注意:
如果拉取镜像失败,可能是 docker 配置文件的问题。
在 /etc/docker/ 目录下,修改 daemon.json 文件中的配置的镜像加速器。镜像加速器网上搜索很多,尝试修改配置,修改完后一定要重启docker服务,不然不生效。重启docker命令:systemctl restart docker
2:创建挂载目录,设置 nginx.conf 配置文件
1)创建挂载目录:
- mkdir -p /docker/nginx/conf
- mkdir -p /docker/nginx/html
2)配置 nginx.conf 文件:
在 /docker/nginx/conf 目录下 新建 nginx.conf 文件,设置文件内容如下:
user nginx; worker_processes auto; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 60; server { listen 80; server_name localhost; charset utf-8; location / { root /usr/share/nginx/html; index index.html index.htm; } } }
3:启动 nginx:docker compose up -d nginx
version: '3' services: nginx: image: nginx:latest container_name: nginx-web environment: TZ: Asia/Shanghai ports: - "80:80" - "443:443" volumes: # 配置文件映射 - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf - /docker/nginx/conf:/etc/nginx/conf # 页面目录 - /docker/nginx/html:/usr/share/nginx/html privileged: true network_mode: "host"
进入 docker-compose.yml 文件所在的目录,使用命令 docker compose up -d nginx 启动,启动完成后,可通过 docker ps 查看 正在运行的docker容器,docker ps -a 查看所有的 docker 容器,包括已停止的,如果 docker ps 查看,没有运行中的 nginx 容器,那么可以通过 docker logs 容器id 或者 docker logs 容器名称,查看对应的 nginx日志。
docker ps:
注意:如果修改了 nginx.conf 配置文件,先停止 nginx 容器,再删除 nginx 容器,重新启动,这样防止可能缓存造成的问题,导致配置修改不生效。
命令如下:
- a:停止 nginx 容器:docker stop nginx 容器id / 容器名称
- b:删除 nginx 容器:docker rm 容器id / 容器名称
- c:启动 nginx 容器:docker compose up -d nginx
4:测试 nginx
通过浏览器访问 http://ip地址:80,查看是否安装成功,页面如下:
总结
以上为 docker 下安装 nginx 的主要步骤,一定要 注意 nginx.conf 配置文件的挂载目录。
仅为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。