帮助启动类命令
启动
docker:systemctl start docker停止
docker:systemctl stop docker重启
docker:systemctl restart docker查看docker'状态
systemctl status docker开机启动
systemctl enable docker查看docker概要信息
docker info查看docker.总体帮助文档
docker-help查看dockert命令帮助文档
docker 具体命令-help镜像相关命令
查看本机可运行镜像
各个选项说明: REPOSITORY:表示镜像的仓库源 TAG:镜像的标签I IMAGE ID:镜像ID CREATED:镜像创建时间 SZE:镜像大小 同一仓库源可以有多个TAG版本,代表这个仓库源的不同个版本,我们使用REPOSITORY:TAG来定义不同的镜像。 如果你不指定一个镜像的版本标签,例如你只使用ubuntu,docker将默认使用ubuntu:latest镜像
从仓库搜索镜像
各个选项说明 NAME(镜像名称) DESCRIPTION(镜像说明) STARS(点赞数量) OFFICIAL(是否是官方的) AUTOMATED(是否是自动构建的)
下载镜像
docker pull 镜像名字[:TAG]//下载指定版本 如 docker pull redis:6.0.8 docker pull 镜像名字 //下载lastet 下载最新 TAG是latest
查看镜像、容器、数据卷占用空间
删除指定镜像
有时docker可能会虚悬镜像 指:出现镜像 名字和id都是 none的 可以直接删除docker rmi [IMAGE ID] //如果在使用中不能删除 可以通过以下命令强删 docker rmi -f [IMAGE ID] //强制删除 docker rmi [IMAGE ID1] [IMAGE ID2]//批量删除 docker rmi -f ${docker images -qa} //可以理解为mysql 的delete where in(select id from table)
根据容器副本生成新镜像
提交容器副本使之成为一个新的镜像,执行后就可以通过docker images 看到新生成的镜像 场景:在某些镜像创建的容器 新增一些新的自定义扩展 再将容器打包成镜像 实现了镜像继承,具体看docker镜像原理docker commit -m="[提交的描述信息]" -a="[作者]" [需要打包成容器id]:[标签名]
docker镜像发布到阿里云仓库
1.登录阿里云https://promotion.aliyun.com/ntms/act/kubernetes.html 2.
3.
4.
5.
6..创建仓库 仓库和应用是一对一的 比如redis 仓库名字应该叫redis
7.
8.按照步骤
docker镜像发布到私有仓库
1.下载镜像仓库
docker pull registry2.启动 默认情况,仓库被创建在容器的/var/lib/registry目录下,建议自行用容器卷映射,方便于宿主机联调
docker run -d -p 5000:5000 -v /Users/liqiang/Desktop/javaEnvironmenta/dockerdemo/dockerRegistry:/tmp/registry --privileged=true registry #5000:5000左边是主机端口 右边是容器端口
3.curl查看私服仓库有哪些镜像
curl-XGET http://192.168.111.162:5000/v2/_catal0g
5.默认docker不支持http协议,修改配置文件使之支持http
vim /etc/docker/daemon.json
加上insecure=registries 并重启docke
6.通过docker push推送
docker push 192.168.111.162:5000/zyyubuntu:1.2
7.验证是否推成功
curl-XGET http://192.168.111.162:5000/v2/_catal0g
8.拉取使用
docker pull 192.168.111.162:5000/zyyubuntu:1.2
容器命令
启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...] docker run -d [容器名] #后台守护式容器注意: OPTIONS说明(常用):有些是一个减号,有些是两个减号 --name="容器新名字” 为容器指定一个名称; -d:后台运行容器并返回容器D,也即启动守护式容器(后台运行); -i:以交互模式运行容器,通常与t同时使用; -t:为容器重新分配一个伪输入终端,通常与ⅰ同时使用; 也即启动交互式容器(前台有伪终端,等待交互); 如 docker run -it [IMAGE ID] 交互式容器 比如我们docker安装 启动linux 镜像启动 下面/bin/bash 是执行此shell命令后再发挥一个交互式终端 -P:随机端口映射,大写P (端口映射 指的是 容器对外暴露端口 与 容器内应用的端口映射)
查看容器列表
docker ps 列出运行中的容器 docker ps -a 当前运行中和历史上运行过的 docker ps -l 最近创建的容器 docker ps -n 线上最近的n个 docker ps -q 寂寞模式只显示容器编号
列出现在所有运行中的容器
退出容器
exit #如果是run 进去通过exit会退出并关闭容器 ctrl+p+q #run进去不会关闭容器
启动已经停止的容器
docker start [容器id或者容器名字]
重启容器
docker restart [容器id或者容器名字]
停止容器
docker stop [容器id或者容器名字]
强制停止容器
docker kill [容器id或者容器名字]
删除容器
docker rm [容器id或者容器名字] #只能删除停止的 docker rm -f [容器id或者容器名字 #强删 docker rm -f $(docker ps -a -q) #组合命令 删除运行中的 docker ps -a -q |xargs docker rm #xargs linux 执行前面的结果 交给docker rm执行
查看容器日志
docker logs [容器id]
查看容器内运行的进程
每个容器可以理解成一个简易版的linux所以可以通过docker top [容器id]
查看容器内部细节
可以把容器看做是一个简易版的linux环境,只加载镜像所需环境其余不加载如:root用户权限、进程空间、用户空间、网格空间等docker inspect [容器id] #可以看到容器的镜像和网络配置相关
进入容器
docker exec -it [容器id] /bin/bash #是在容器中打开新的终端,并可以启动新的进程,用exit退出不会导致容器停止 推荐使用这种 docker attach [容器id] #重新进入 直接进入容器启动命令终端 不会启动新的进程 通过exit退出会导致容器停止
从容器拷贝文件到主机
场景:容器铭感文件备份到主机docker cp [容器id]:[容器路径] [主机路径]
导入导出
场景:容器备份docker export [容器id] ->abcd.tar #导出 整个容器备份 cat abcd.tar | docker import - [镜像用户]/[镜像名字]:[镜像版本号] #tar导入生成容器
根据镜像启动容器
2种启动形式
前台交互式启动
docker run -it [镜像id] #如果ctrl +C 就会自动退出
后台守护式启动
docker run -d [镜像id] #
监控命令
docker stats
缺点 试试实时的没有预警和历史记录 可以通过CAdvisor监控收集+InfluxDB存储数据+Granfana展示图表 替代CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS 767fd8102282 portainer 0.00% 10.31MiB / 7.676GiB 0.13% 1.25kB / 0B 30.8MB / 340kB 9 da7b63a710c1 nginx 0.00% 38.34MiB / 7.676GiB 0.49% 1.45kB / 240B 16.4MB / 24.6kB 8 83a029f1f6ce dubbo-admin 0.41% 849.2MiB / 7.676GiB 10.80% 485kB / 575kB 69MB / 594kB 56 f6a903450ce4 redis 0.38% 10.37MiB / 7.676GiB 0.13% 1.25kB / 0B 62.1MB / 4.1kB 6 b935b76626a8 zookeeper 0.33% 150.5MiB / 7.676GiB 1.91% 576kB / 484kB 70.7MB / 5.14MB 53
标签:容器,5000,启动,常用命令,镜像,docker,id From: https://www.cnblogs.com/LQBlog/p/16860475.html