## **名詞解析**
* 鏡像 image
* 容器container
## **命令**
* 查看鏡像信息
` docker inspect XXX`
* 顯示本地已有鏡像
`docker images`
* 從 Docker 鏡像倉庫獲取鏡像的命令是`docker pull`。其命令格式為:
~~~bash
docker pull [選項] [Docker Registry 地址[:端口號]/]倉庫名[:標簽]
~~~
~~~bash
docker pull ubuntu:18.04
~~~
* 你可以通過以下命令來便捷的查看鏡像、容器、數據卷所占用的空間。
~~~bash
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 24 0 1.992GB 1.992GB (100%)
Containers 1 0 62.82MB 62.82MB (100%)
Local Volumes 9 0 652.2MB 652.2MB (100%)
Build Cache 0B 0B
~~~
* 接列出鏡像結果,并且只包含鏡像ID和倉庫名:
~~~bash
docker image ls --format "{{.ID}}: {{.Repository}}"
~~~
* 以表格等距顯示,并且有標題行,和默認一樣,不過自己定義列
~~~bash
docker image ls --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"
~~~
## **demo**
> 運行一個nginx服務器
~~~bash
$ docker run -d -p 80:80 --name webserver nginx
~~~
> 停止 Nginx 服務器并刪除執行下面的命令:
~~~bash
$ docker stop webserver
$ docker rm webserver
~~~
~~~bash
$ docker run -it --rm \
ubuntu:18.04 \
bash
~~~
`docker run`就是運行容器的命令,具體格式我們會在[容器](http://www.hmoore.net/docker_practice/container)一節進行詳細講解,我們這里簡要的說明一下上面用到的參數。
* `-it`:這是兩個參數,一個是`-i`:交互式操作,一個是`-t`終端。我們這里打算進入`bash`執行一些命令并查看返回結果,因此我們需要交互式終端。
* `--rm`:這個參數是說容器退出后隨之將其刪除。默認情況下,為了排障需求,退出的容器并不會立即刪除,除非手動`docker rm`。我們這里只是隨便執行個命令,看看結果,不需要排障和保留結果,因此使用`--rm`可以避免浪費空間。
* `ubuntu:18.04`:這是指用`ubuntu:18.04`鏡像為基礎來啟動容器。
* `bash`:放在鏡像名后的是**命令**,這里我們希望有個交互式 Shell,因此用的是`bash`。
進入容器后,我們可以在 Shell 下操作,執行任何所需的命令。這里,我們執行了`cat /etc/os-release`,這是 Linux 常用的查看當前系統版本的命令,從返回的結果可以看到容器內是`Ubuntu 18.04.1 LTS`系統。
最后我們通過`exit`退出了這個容器。
- 空白目錄
- 前端知識
- bower
- yarn
- 命令列表
- requirejs
- http
- mysql
- mysql配置參數
- 優化
- 常用命令
- 鎖
- 并發控制
- 權限控制
- 批量刪除表
- btree 高度計算
- 索引
- 事務隔離級別
- 用戶管理語句
- 用戶授權管理
- 庫管理語句
- 表管理語句
- 約束管理、索引管理、鍵管理語句
- 視圖管理語句
- insert
- delete 與 update
- mysql自動備份
- PHP
- swoole
- hyperf
- php內置方法
- curl
- class_alias
- array
- string字符串
- 迭代器
- preg_replace
- phpunit
- composer
- code
- spl
- 高級擴展
- yaconf
- 命名規則轉化方法
- 魔術方法
- 切面編程
- PhpSpreadsheet
- read
- debug
- facade 支持靜態方法
- doctrine
- monolog
- redis
- linux
- curl
- vim
- grep
- crontab
- cut
- sort
- awk
- sed
- 用戶管理
- 網絡操作
- 磁盤文件系統
- 系統權限
- 查看文件&內容處理
- scp
- shell
- 資源占用情況
- ssh
- 正則
- php正則使用
- 服務器
- 獲取服務器ip
- docker
- commond
- tips
- 容器的修改與保存
- 容器操作:端口映射、文件掛載、容器互聯
- dockerfile
- 搭建php環境
- 框架
- thinkphp
- 自動加載
- 配置文件
- 容器以及門面模式facade
- laravel
- 路由
- 模版
- migration
- 模型
- tinker
- 工具IDE
- phpstorm
- redis
- 保證事務
- 通用列表數據格式
- 設計模式
- 分類
- 創建型模式
- 建造者模式
- 單例模式
- 適配器模式
- 橋接模式
- 結構型模式
- 合成模式
- git
- gitflow
- nginx
- 正向代理/反向代理
- HTTP
- header
- 狀態碼
- https
- 代碼簡潔之道
- 第2章 有意義的命名
- go
- 簡介
- 搭建環境
- 入門一
- 入門二
- go 的位運算
- 秒殺系統
- 本質
- 第2章 基礎工具與知識介紹
- 2-1 壓測工具對使用
- 2-2 Nginx限流配置
- 2-3 限流算法和CDN原理
- 2-4 大型網站架構
- 第3章 秒殺系統的分析
- 3-1 秒殺系統的重難點
- 3-2 秒殺系統的架構
- 第4章 秒殺系統的核心實現
- 4-1 秒殺系統基本需求分析
- 4-2 極致性能的扣庫存服務如何實現
- 4-3 扣庫存分布式實現方案
- 4-4 扣庫存代碼演示
- 4-5 商品信息頁及搶購進度查詢實現
- 4-6 高性能的查庫存服務實現
- 4-7 基本需求實現總結
- 4-8 鏈路如何實現漏斗形流量
- 面試
- 進程、線程、協程
- 消息隊列
- kafka
- zookeeper
- 計算機基礎