### Docker常用命令

### 基礎實戰
### 1、找鏡像
去docker hub,找到nginx鏡像
搜索nginx官方鏡像,通過Tag選項卡,可以查看到nginx各個版本,右側可以查看到pull命令:

```bash
docker pull nginx #下載最新版
鏡像名:版本名(標簽)
docker pull nginx:1.20.1
docker pull redis #下載最新
docker pull redis:6.2.4 #下載指定版本
## 下載來的鏡像都在本地
docker images #查看所有鏡像
redis = redis:latest
docker rmi 鏡像名:版本號/鏡像id
```
docker images查看本地鏡像示例:

### 2、啟動容器
啟動nginx應用容器,并映射88端口,測試的訪問
```bash
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
【docker run 設置項 鏡像名 】 鏡像啟動運行的命令(鏡像里面默認有的,一般不會寫)
# -d:后臺運行
# --restart=always: 開機自啟
docker run --name=mynginx -d --restart=always -p 88:80 nginx
# 查看正在運行的容器
docker ps
# 查看所有
docker ps -a
# 刪除停止的容器
docker rm 容器id/名字
docker rm -f mynginx #強制刪除正在運行中的
#停止容器
docker stop 容器id/名字
#再次啟動
docker start 容器id/名字
#應用開機自啟
docker update 容器id/名字 --restart=always
```
docker ps 命令示例:

### 3、修改容器內容
修改默認的index.html 頁面
1、進容器內部修改
```bash
# 進入容器內部的系統,修改容器內容
docker exec -it 容器id /bin/bash
```
2、掛載數據到外部修改
```bash
docker run --name=mynginx \
-d --restart=always \
-p 88:80 -v /data/html:/usr/share/nginx/html:ro \
nginx
# 修改頁面只需要去 主機的 /data/html
```
### 4、提交改變
將自己修改好的鏡像提交
```bash
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
docker commit -a "leifengyang" -m "首頁變化" 341d81f7504f guignginx:v1.0
```
### 鏡像傳輸
```bash
# 將鏡像保存成壓縮包
docker save -o abc.tar guignginx:v1.0
# 別的機器加載這個鏡像
docker load -i abc.tar
```
### 5、推送遠程倉庫
推送鏡像到docker hub;應用市場
給鏡像打標簽
```bash
docker tag local-image:tagname new-repo:tagname
docker push new-repo:tagname
```
```bash
# 把舊鏡像的名字,改成倉庫要求的新版名字
docker tag guignginx:v1.0 leifengyang/guignginx:v1.0
# 登錄到docker hub
docker login
docker logout(推送完成鏡像后退出)
# 推送
docker push leifengyang/guignginx:v1.0
# 別的機器下載
docker pull leifengyang/guignginx:v1.0
```
### 6、補充
docker logs 容器名/id 排錯
docker exec -it 容器id /bin/bash
```bash
# docker 經常修改nginx配置文件
docker run -d -p 80:80 \
-v /data/html:/usr/share/nginx/html:ro \
-v /data/conf/nginx.conf:/etc/nginx/nginx.conf \
--name mynginx-02 \
nginx
#把容器指定位置的東西復制出來
docker cp 5eff66eec7e1:/etc/nginx/nginx.conf /data/conf/nginx.conf
#把外面的內容復制到容器里面
docker cp /data/conf/nginx.conf 5eff66eec7e1:/etc/nginx/nginx.conf
```
- 云平臺介紹
- Docker介紹
- Docker架構
- Docker安裝
- Docker命令實戰
- Docker進階實戰
- 常用Docker容器構建
- Kubernetes簡介
- Kubernetes架構
- kubeadm創建集群
- kubeadm引導集群
- Kubernetes資源
- Kubernetes-Deployment
- Kubernetes-Service
- Kubernetes-Ingress
- Kubernetes存儲抽象
- Kubernets-PV&PVC
- Kubernetes-ConfigMap
- Kubernetes安裝KubeSphere
- Linux單節點部署KubeSphere
- Linux多節點部署KubeSphere
- 中間件部署實戰
- RuoYi-Cloud部署實戰
- DevOps