1. 程式人生 > >三分鐘掌握docker基本指令

三分鐘掌握docker基本指令

mysql `` ren 器) ner 定義 java 3.2 cli

一下內容是我用markdown編輯的,所以排版不是太ok~

# Docker

## 1.核心概念

docker主機(Host):安裝了docker程序的機器。docker直接安裝再操作系統上。

docker客戶端(Client):連接docker主機進行操作。

docker倉庫(Registry):軟件打包好的鏡像;放在docker倉庫中;

docker容器(Container):鏡像啟動後的實例稱為一個容器;容器是獨立運行的一個或一組應用。

##2.在linux上安裝docker(centos 7)

2.1 安裝docker =》 yum install docker

註意虛擬機內核版本必須 3.8+,查看內核版本 =》 uname -r

2.2 輸入y確認安裝

2.3 啟動docker => systemctl start docker

2.4查看docker版本號 =》 docker -v

2.5 設置開機啟動docker =》systemctl enable docker

2.6 停止docker =》 systemctl stop docker

## 3.常用操作

### 3.1鏡像操作

| 操作 | 命令 | 說明 |


| :--: | -------------------------------------------- | -------------------------------------------------------- |
| 檢索 | docker serach 關鍵字 eg:docker search redis | 我們經常去docker上檢索鏡像詳細信息,如鏡像的TAG. |
| 拉取 | docker pull 鏡像名:tag | :tag是可選的,tag表示標簽,多為軟件的版本,默認是latest |

| 列表 | docker images | 查看所有本的鏡像 |
| 刪除 | docker rmi image-id | 刪除制定的本地鏡像 |

docker鏡像倉庫:https://hub.docker.com/

### 3.2 容器操作

| 操作 | 命令 | 說明 |
| :------: | ------------------------------------------------------------ | -------------------------------------------------------- |
| 運行 | docker run -name container -name -d image-name eg: docker run -name myredis -d redis | -name: 自定義容器名 -d:後臺運行 image-name:指定鏡像模板 |
| 列表 | docker ps(查看運行中的容器) | 加上-a 可以查看所有容器 |
| 停止 | docker stop container-name/container-id | |
| 啟動 | docker start container-name/container-id | |
| 刪除 | docker rm container-id | |
| 端口映射 | -p 6379:6379 eg:docker run -d -p 6379:6379 -name myredis docker.io/redis | -p: 主機端口(映射到)容器內部的端口 |
| 容器日誌 | docker logs container-name/container-id | |
| 更多命令 | https://docs.docker.com/engine/reference/commandline/docker/ | |

## 4.環境搭建

### 4.1 安裝msql

```java
查看mysql > docker search mysql
下載mysql > docker pull mysql
查看已經下載的鏡像 > docker images
啟動mysql > docker run --name brianMysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
```

此時mysql可以正常啟動起來,但是端口沒有做映射

```java
先停掉myswl > docker stop contioner-id
再次啟動MySQL加上端口映射 > docker run -p 3306:3306 --name brianMysql02 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
```

mysql的一些高級操作:https://hub.docker.com/_/mysql/

三分鐘掌握docker基本指令