docker 命令
查看docker 版本:docker version
.启动docker :systemctl start docker
.重启docker:systemctl restart docker
systemctl:
Linux 服务管理两种方式service和systemctl
systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,
尽可能启动较少的进程,尽可能更多进程并发启动。
systemd对应的进程管理命令是systemctl
1、镜像管理
查看所有镜像:docker images
搜索镜像:docker search 镜像名
拉取镜像: docker pull 镜像名:版本—>docker pull nginx:latest
导出:docker save 镜像名:版本 > 新镜像名.tar
导入:docker load < 新镜像名.tar
删除镜像:docker rmi 镜像名:版本
更改镜像名:docker tag 原镜像名:版本 新镜像名:版本 ps:更改tag后,新旧镜像相同
查看镜像创建历史:docker history 镜像名
查看镜像信息: docker inspect 镜像名
2、容器管理
运行容器:docker run -d –name=容器名 镜像名:版本
docker run -d -it python /bin/bash
查看运行的容器:docker ps -a/docker ps
查看容器中运行的所有进程:docker top 容器名/容器id
查看资源占用:docker stats 容器名
容器开始/重启/停止/杀掉:docker start/restart/stop/kill 容器名
暂停/恢复容器:docker pause/unpause 容器名
强制删除容器:docker rm -f kill 容器名
执行命令:docker exec -it 容器名 ls
复制文件:docker cp 容器名:/etc/hosts new_hosts_name
查看容器日志:docker logs -f 容器名
查看容器/镜像元信息:docker inspect 容器名
提取并格式化输出元信息中的内容:docker inspect -f ‘{{,Id}}’ 容器名
查看容器内文件结构变化:docker diff 容器名
查看运行的容器暴露的端口:docker container port 容器名
列出制定容器运行过的所有历史命令:
docker history 容器名
查看容器的进程和资源利用情况:
查看容器内部的进程:
docker top 容器id
查看容器的资源利用情况:
docker stats 容器id
开启/暂停/停止容器
开启容器:
docker restart 容器名/容器id
暂停容器:
docker pause 容器名/容器id
取消暂停容器:
docker unpause 容器名/容器id
停止容器:
docker stop 容器名/容器id
docker 内的网络模式:
docker network ls 查看网络
ifconfig查看宿主机网络
当docker安装后,会在宿主机中创建一个docker0的虚拟网卡,这个docker0就是用与容器与宿主机网络互相访问的接口。当容器内部要去访问一个网址时,会通过docker0做转发。
网络类型:
bridge: nat 网络模型,虚拟交换机
host: 与宿主机共享网络
–net=host
docker network create -d host net_host1:创建host类型的网络,当docker容器加入host类型的
网络后,docker容器内的网络接口就与宿主机的网络接口完全一致了。
容器加入net_host1网络:docker run -it -d –-net net_host1 -p xxx:xxxx 容器名
none: 不配置网络,容器不适用网络。
–net=none
overlay: 不同网段的容器之间进行通信
与另一个容器共享网络(网络互通):–net=container:容器名
查看已创建某个网络详情:
docker network inpect net_host1
删除网络:docker network rm net_bridge1
volume 数据卷:数据持久化和备份
挂载数据卷后,容器内部的数据就会存储在宿主机的挂载目录中,即使容器被删除,宿主机中数据卷的数据还是存在,起到数据持久化的作用。
docker run -d –name nginx -v $PWD/xx目录名:/usr/share/nginx/html
-v 参数:将宿主机的目录与容器内部的目录进行映射,前面为宿主机目录:后面为容器目录
,映射后操作宿主机目录就是操作容器目录,数据会互通。
创建数据卷:docker volume create data_volume1
查看数据卷:docker volume inspect data_volume1
挂载: docker run -d –name xxx -v data_volume1:容器目录
删除数据卷:docker volume rm data_volume1