文章目录
- 一、镜像操作
- 获取镜像
- 查询镜像的详细信息
- 镜像导出和导入
- 给镜像自定义标签
- 二、容器的操作和管理
- 查看正在运行的容器
- 关闭/开启容器
- 三 容器的网络构成
- 容器的网络模式
- 容器网络指令
一、镜像操作
获取镜像
docker search centos 搜索镜像
docker pull mysql:5.7 搜索具体的镜像版本
docker pull nginx 搜索镜像 不指定版本时默认为最新版本
docker image ls 查看镜像
查询镜像的详细信息
docker image inspect mysql:5.7 也可以用镜像id查询
docker image ls -q 只查看镜像id
镜像导出和导入
在容器和宿主机导出和导入
docker image save 2c9028880e58 >/opt/mysql.5.7.tar.gz
docker image load -i /opt/mysql.5.7.tar.gz
docker image rm [-f] 9f266d35e02c(-f 为强制删除) 杀伤力大 在生产环境慎用 这里不演示了
docker image rm -f `docker image ls -q` (删除全部镜像)
给镜像自定义标签
docker image tag 2c9028880e58 mysql:5.7
二、容器的操作和管理
查看正在运行的容器
docker container ls
docker ps -a 查看所有的容器
docker ps -a -q 查看容器的运行id
docker container inspect 镜像id 查看容器的具体信息
docker container top 镜像id 查看容器内的进程
docker container logs -t 查看容器的日志
关闭/开启容器
docker container stop/start 容器id 开关容器
三 容器的网络构成
容器的网络模式
1 host模式
在此模式下 docker不会虚拟出网络 也就是在系统里面看不到docker0网桥 和宿主机共用端口和ip 但是文件系统 进程还是隔离的
host模式的好处是和宿主机共用端口 不需要net来联通外网 网络性能好 但是会占用宿主机的端口 所以隔离性不好
2 container
多个容器共享一个命名空间 通俗说就是一个容器一拖多 利用回环网口通讯 好处是可以增加连接 但会怎加其中一个容器的负载
3 none
又叫自闭模式 该模式容器之间互相不联通 安全性高 适合做测试环境
4 bridge
默认模式 类似于dhcp 连接后每个容器和veth对和网桥上的veth对连接 来分配地址
容器网络指令
docker network ls 查看网络列表
docker run -itd -p 80:80 nginx /bin/bash 暴露端口