当我们需要用到Nginx,做http服务器,静态服务器,反向代理,负载均衡,动静分离,其他,我们就需要用到它。
那么在docker中我们如何安装?
-
搜索nginx 镜像来源:docker search nginx
2.拉取nginx镜像,没有版本号代表最新镜像
3.查看本地镜像:docker images
4.创建nginx 配置文件,创建挂载目录
# 创建挂载目录
mkdir -p /home/nginx/conf
mkdir -p /home/nginx/log
mkdir -p /home/nginx/html
5.启动容器,将容器中的 nginx.conf 文件和 conf.d 文件夹复制到挂载目录
->生成容器 :docker run --name nginx -p 9001:80 -d nginx
->将容器nginx.conf文件复制到宿主机 :docker cp -nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf
->将容器conf.d文件夹下内容复制到宿主机 :docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d
->将容器中的html文件夹复制到宿主机:docker cp nginx:/usr/share/nginx/html /home/nginx/
访问: ip:9001 会出现如下图证明nginx安装成功
6.删除容器
->关闭该容器: docker stop nginx
->删除该容器: docker rm nginx
-> 删除正在运行的nginx容器 : docker rm -f nginx
7.启动容器:
文本模式:docker run \ -p 9002:80 \ --name nginx \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -d nginx:latest
或者单行模式:docker run -p 9002:80 --name nginx -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/conf/conf.d:/etc/nginx/conf.d -v /home/nginx/log:/var/log/nginx -v /home/nginx/html:/usr/share/nginx/html -d nginx:latest
命令 | 描述 |
---|---|
–name nginx | 启动容器的名字 |
-d | 后台运行 |
-p 9002:80 | 将容器的 9002(后面那个) 端口映射到主机的 80(前面那个) 端口 |
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf | 挂载 nginx.conf 配置文件 |
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d | 挂载 nginx 配置文件 |
-v /home/nginx/log:/var/log/nginx | 挂载 nginx 日志文件 |
-v /home/nginx/html:/usr/share/nginx/html | 挂载 nginx 内容 |
nginx:latest | 本地运行的版本 |
\ | shell 命令换行 |
服务器访问:127.0.0.1:9002
打完收工!!!