docker 常用命令总结
安装新版 docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
启动 docker
sudo systemctl start docker
设置 docker 开机启动
sudo systemctl enable docker
重新启动docker
sudo systemctl restart docker
查看镜像配置
docker info
运行 hello-world 镜像,验证 docker
sudo docker run hello-world
docker镜像操作
下载centos镜像:
docker pull centos:7
查看centos7镜
docker images 或者docker image ls
运行 centos7
docker run -it xxxx bash xxxx: 表示镜像名, 或者是image id的前面几位
docker image rm 501
删除指定仓库的镜像:
docker image rm centos
镜像导出
docker save mysql:5.7 node:8 | gzip > app.tar.gz
镜像导入
docker load < apps.tar.gz
容器操作:
启动容器
docker run -it centos:7 bash
后台运行容器
docker run -dit centos:7
查看后台运行的容器输出结果
docker container logs 802
查看容器
docker ps -a
终止容器
docker container stop 802
重新启动容器:
docker container restart 802
进入容器:
docker exec -it 802 bash 802估计是容器的id
删除容器
docker container rm 802 如果删除运行中的容器,需要添加 -f 参数
清理所有终止状态的容器
docker container prune
数据卷:
创建数据卷
docker volume create my-vol
查看所有的数据卷:
docker volume ls
查看指定数据卷的信息
docker volume inspect my-vol
启动挂载数据卷的容器
docker run -it -v my-vol:/webapp centos:7 bash
删除数据卷:
docker volume rm my-vol
清理无主数据卷:
docker volume prune
挂载主机目录
docker run -it -v /usr/app:/opt/app centos:7 bash
网络
自动分配映射端口: docker run -d -P tomcat
映射指定端口:
docker run -d -p 8080:8080 tomcat ##8080:8080 本机端口:容器端口
映射多个端口:
docker run -d
-p 5000:5000
-p 80:8080 tomcat
映射指定端口(指定网卡):
docker run -d -p 192.168.64.150:8080:8080 tomcat
映射自动分配映射端口(指定网卡):
docker run -d -p 192.168.64.150::8080 tomcat
查看端口配置:
docker port 8af
容器互联
新建网络
docker network create -d bridge my-net
-d driver,网络类型,默认 bridge,也可以是 overlay(Swarm mode)
列出网络.
docker network ls
查看网络信息
docker inspect 67d
连接容器
docker run -it --name app1 --network my-net centos:7
新开终端执行:
docker run -it --name app2 --network my-net centos:7
在两个终端分别执行
ping app1
ping app2