背景
參考了狂神老師的 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
