Docker 安裝 (完整詳細版)
Docker 日常命令大全(完整詳細版)
說明:
Docker如果想安裝軟件 , 必須先到 Docker 鏡像倉庫下載鏡像。
Docker官方鏡像
1、尋找Nginx鏡像
2、下載Nginx鏡像
命令 | 描述 |
---|---|
docker pull nginx | 下載最新版Nginx鏡像 (其實此命令就等同於 : docker pull nginx:latest ) |
docker pull nginx:xxx | 下載指定版本的Nginx鏡像 (xxx指具體版本號) |
檢查當前所有Docker下載的鏡像
docker images
3、創建Nginx配置文件
啟動前需要先創建Nginx外部掛載的配置文件( /home/nginx/conf/nginx.conf)
之所以要先創建 , 是因為Nginx本身容器隻存在/etc/nginx 目錄 , 本身就不創建 nginx.conf 文件
當服務器和容器都不存在 nginx.conf 文件時, 執行啟動命令的時候 docker會將nginx.conf 作為目錄創建 , 這並不是我們想要的結果 。
# 創建掛載目錄mkdir -p /home/nginx/confmkdir -p /home/nginx/logmkdir -p /home/nginx/html
容器中的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/
4、創建Nginx容器並運行
Docker 創建Nginx容器
# 直接執行docker rm nginx或者以容器id方式關閉容器# 找到nginx對應的容器iddocker ps -a# 關閉該容器docker stop nginx# 刪除該容器docker rm nginx# 刪除正在運行的nginx容器docker rm -f nginx
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 命令換行 |
單行模式
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
5、結果檢測
6、修改內容進行展示
# 重啟容器docker restart nginx