Docker命令的介绍及使用
更新:HHH   时间:2023-1-7


本篇内容主要讲解“Docker命令的介绍及使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker命令的介绍及使用”吧!

1 删除所有停止的容器

# docker rm $(docker ps -a -q)

2 删除所有镜像:

# docker rmi $(docker images -q)

3 在使用doker run –it 镜像名 创建出来的镜像是直接进入到 容器内,在输入exit退出后镜像也会跟着停止了,若想退出容器而不使得镜像停止可以使用: ctrl + p +q 组合件实现:

此时已经退出发现 容器实例还在运行中,那么如何再次进入容器中呢?

可以使用docker attach <容器id|容器名称>

4 创建容器不启动:

使用: docker create –it –name 镜像名称

将其开起来:

# docker start -a -i <容器id|容器名称>

退出使用 exit

5查看 运行中容器状态:

时查看状态 包括cpu 内存 I/O

# docker status

查看所有的包括已经停止的:

# docker stats -a

查看某一台容器状态:

docker stats <容器id|容器名称>

查看 某个容器里面的 程序运行状态 可以使用 top:

# docker top <容器id|容器名称>

查看容器中的文件状态:

# docker diff <容器id|容器名称>
Diff : 下有几种状态
A 表示文件被添加
C 表示文件被修改
D 表示文件删除
6将文件拷贝到容器中

6将文件拷贝到容器中

Docker cp 原文 容器:目标目录
# docker cp ./anaconda-ks.cfg df9b:/root/

将容器中的文件 拷贝出来:

# docker attach df9b
/ # ls
bin   dev   etc   home  proc  root  run   sys   tmp   usr   var
# docker cp df9b:/var /root/data/

7 Docker events 实时事件

查看事件: events

# docker events

8 Docker wait 容器阻塞住容器直到停止停止 返回 0

# docker wait <容器id|容器名称>

9 查看镜像历史:

docker history <容器id|容器名称>

10 查看镜像或者容器的底层信息:

docker inspect 容器|镜像ID
# docker inspect ea096efd33cc

11查看容器的日志

Docker logs <容器id|容器名称>

查看容器日志附带时间:

Docker logs -t <容器id|容器名称>

查看实时日志:是不退出的

Docker logs -f -t <容器id|容器名称>

查看末尾若干行的日志信息:

Docker logs  -t --tail=行数 <容器id|容器名称>

12 动态修改容器的配置

ocker update : 只有内核是修改时需要重启容器的

设置docker 内存为1G: 主意在设置内存的时候 需要先设置 swap 因为测试可以设置成 -1 无限swap

# docker update -m 1024m --memory-swap -1 1e
说明内存上限时1G

13 端口映射:

docker port

端口映射使用 –p 或者-P

查看 映射 可以通过docker ps –a

或者使用 docker port ae

14 docker build  构建镜像

Docker build 构建镜像需要Dockerfile
docker build –t vker/box:0.3  .  

-t  tag 是指的是给镜像打一个标识

.  表示在当前目录的Dockerfile 构建镜像

15 创建一个临时测试容器,容器运行完毕后自动删除

 docker run -it --rm  centos sleep 10

16 创建容器并命名

docker run --name 容器名字 镜像名

17 docker 数据映射

docker run -itd -v 宿主机目录:容器目录 镜像名

18 docker 修改默认网桥 docker0网段配置

cat /etc/docker/daemon.json

{
 "bip":"10.244.1.1/24"
}

19 docker 查看网桥和创建删除网桥

docker network connect			将容器连接到网络
docker network create			创建一个网络
docker network disconnect		断开容器的网络
docker network inspect			显示一个或多个网络的详细信息
docker network ls				列出网络
docker network prune			删除所有未使用的网络
docker network rm				删除一个或多个网络



--attachable		--subnet		启用手动容器安装
--aux-address		map[]			网络驱动程序使用的辅助IPv4或IPv6地址
--driver, -d 		bridge 	        驱动程序管理网络
--gateway							用于主子网的IPv4或IPv6网关
--internal			false			限制对网络的外部访问
--ip-range							从子范围分配容器ip
--ipam-driver		default			IP地址管理驱动程序
--ipam-opt			map[]			设置IPAM驱动程序的具体选项
--ipv6				false			启用IPv6网络
--label								在网络上设置元数据
--opt, -o			map[]			设置驱动程序特定选项
--subnet							表示网段的CIDR格式的子网


1 创建一个网桥
docker network create k8s  
不是用-d 吗默认创建bridge类型网桥,使用 -d可以创建其他类型网桥比如overly
# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
54dc5bba7a69        bridge              bridge              local
5ac666271cee        host                host                local
d0bf1b8d6884        k8s                 bridge              local
1c029239966f        none                null                local
2 删除一个网桥
docker network rm k8s 
3 指定子网创建
docker network create -d bridge --subnet=10.243.0.0/16 k8s
4 制定网络范围
docker network create -d bridge --subnet=10.240.0.0/16 --ip-range=10.240.3.0/24 k8s1
5 容器绑定到指定网桥
docker run -itd --network=k8s1 --name testnetwork busybox

如果省略--gateway标志,引擎将从首选池中选择一个。对于覆盖网络和支持它的网络驱动程序插件,可以创建多个子网络
docker network create -d overlay \
  --subnet=192.168.0.0/16 \
  --subnet=192.170.0.0/16 \
  --gateway=192.168.0.100 \
  --gateway=192.170.0.100 \
  --ip-range=192.168.1.0/24 \
  --aux-address="my-router=192.168.1.5" --aux-address="my-switch=192.168.1.6" \
  --aux-address="my-printer=192.170.1.5" --aux-address="my-nas=192.170.1.6" \
桥接驱动程序选项
创建自定义网络时,默认的网络驱动程序(即bridge)具有可以传递的其他选项。
使用-o或--opt选项在发布端口时指定IP地址绑定:
$ docker network create \
    -o "com.docker.network.bridge.host_binding_ipv4"="172.19.0.1" \
    simple-network

到此,相信大家对“Docker命令的介绍及使用”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

返回云计算教程...