本文图文讲解docker中安装nginx以及相关配置。由于我的服务器中经常会用到nginx而且很多教程中也涉及到nginx,因此我决定单独讲解安装nginx。
一、安装nginx
1、搜索镜像
docker search nginx
2、拉取镜像
docker pull nginx
3、创建Nginx挂载配置文件
# 创建挂载目录 mkdir -p /install/nginx/conf mkdir -p /install/nginx/log mkdir -p /install/nginx/html
# 生成容器 # 将容器nginx.conf文件复制到宿主机 # 将容器conf.d文件夹下内容复制到宿主机 # 将容器中的html文件夹复制到宿主机
docker run --name nginx -p 8080:80 -d nginx docker cp nginx:/etc/nginx/nginx.conf /install/nginx/conf/nginx.conf docker cp nginx:/etc/nginx/conf.d /install/nginx/conf/conf.d docker cp nginx:/usr/share/nginx/html /install/nginx/
4、创建nginx容器并运行
先将现有的容器删除。直接执行docker rm nginx或者以容器id方式关闭容器
# 删除正在运行的nginx容器 docker rm -f nginx
# 找到nginx对应的容器id docker ps -a # 关闭该容器 docker stop nginx # 删除该容器 docker rm nginx
运行容器: nginx版本查看
docker run \ -p 8080:80 \ --name nginx \ -v /install/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /install/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /install/nginx/log:/var/log/nginx \ -v /install/nginx/html:/usr/share/nginx/html \ -d nginx:1.23.3
5、错误解决
如果直接 -d nginx:latest会出现以下错误:
Error response from daemon: manifest for nginx:lates not found: manifest unknown: manifest unknown.
需要将latest替换成相应的版本号
二、安装nginx-gui控制面板
1、拉取镜像
docker pull crazyleojay/nginx_ui
2、创建容器并运行
配置文件路径:/install/nginx/conf/nginx.conf
docker run --detach \ --publish 80:80 --publish 8889:8889 \ --name nginx_ui \ --restart always \ --volume /home/nginx.conf:/install/nginx/conf/nginx.conf \ crazyleojay/nginx_ui:latest
默认登录用户名及密码均为admin