Docker(38)- docker 实战一之安装 Nginx
背景
参考了狂神老师的 Docker 教程,非常棒!
https://www.bilibili.com/video/BV1og4y1q7M4?p=14
#1. 搜索镜像 search 建议大家去docker搜索,可以看到帮助文档
搜索 Nginx 镜像
docker search nginx
第一个就是官方镜像
下载镜像到本地
docker pull nginx
查看镜像是否下载成功
docker images
运行镜像
- -p:端口映射,容器内部 80 映射到宿主机 3344 端口
- --name:自定义容器名
docker run -d --name nginx01 -p 3344:80 nginx
查看镜像运行状态
docker ps
进入容器内部终端模式
docker exec -it nginx01 /bin/bash
# 查找 nginx 所处位置
whereis nginx
# 退出容器内部终端模式
exit
验证容器运行成功
curl localhost:3344
停止容器
docker stop nginx01
重新运行容器
docker start nginx01
运行原理图
- 外网访问 Linux 的 3344 端口,需要阿里云安全组先开放 3344 端口,才能正常访问
- 打通宿主机和 Docker 容器,通过宿主机的 3344 端口访问容器内部的 80 端口,这就是端口映射
如果需要改动配置文件,难道每次都要 exec 进入容器内部吗?
- 不需要
- docker run 命令提供了 -v 参数,他可以做到目录映射,即数据卷挂载
具体可以参考下面两篇文章
- docker run 命令详解:https://www.cnblogs.com/poloyy/p/13926296.html
- 容器目录映射的几种方式:https://www.cnblogs.com/poloyy/p/13993832.html