一:Docker 鏡像相關命令
注:不做特別說明,容器相關操作的例子都是用的容器名,沒有使用容器ID
- 拉取鏡像
# docker pull IMAGE_NAME:TAG
docker pull ubuntu:16.04
# 解決下載鏡像過慢問題,在/etc/default/docker 中追加以下內容
DOCKER_OPTS=" --registry-mirror=http://xxx.m.daocloud.io"
# 自定義網橋
DOCKER_OPTS="-b=docker0"
- 顯示本地已有鏡像
docker images
- 導出鏡像
docker save -o ubuntu_16.04.tar ubuntu:16.04
- 導入鏡像
docker load < ubuntu_16.04.tar
- 刪除本地鏡像
# 刪除鏡像前要刪除在鏡像上運行的所有容器
docker rmi ubuntu:16.04
二:Docker 容器相關命令
- 創建并啟動一個容器
docker run
-i:讓容器的標準輸入打開
-t:讓 Docker 分配一個偽終端并綁定到標準輸入上
-d:在后臺運行該容器
--name:設置容器的名稱
-h:設置容器的主機名
-v:掛載本地目錄或文件到容器中
-p:端口映射
-e:設置容器內部的環境變量
# 示例
docker run -h mysql --name mysql -it -p 33006:3306 -p 8888:8888 \
-h mysql57 --name mysql \
-e MYSQL_ROOT_PASSWORD="123456" \
-v /docker/mysql/my.cnf:/etc/mysql/my.cnf \
-v /etc/localtime:/etc/localtime \
-v /docker/mysql/data:/var/lib/mysql mysql-5.7:v1 \
/bin/bash
- 停止一個啟動的容器
# docker stop [容器名|容器ID]
docker stop mysql
- 啟動一個停止的容器
# docker start [容器名|容器ID]
docker start mysql
- 查看運行中的容器
docker ps
docker ps -a #查看所有容器
- 獲取容器的輸出信息
# docker logs [容器名|容器ID]
docker logs mysql
- 連接容器
# docker exetc-it [容器名|容器ID] /bin/bash
docker exec -it mysql /bin/bash
- 不進入容器執行命令
docker exec -i py3 /bin/bash -c "py /root/Socket/test.py"
- 導出容器
docker export mysql > mysql.tar
- 導入容器為鏡像
dock import - mysql:v2 < mysql.tar
- 刪除容器
docker rm mysql
- 查看容器端口映射配置
docker port mysql
- 查看容器網絡相關參數
docker inspect mysql