Docker实用指令整理
1、docker帮助命令:
docker version --显示版本的信息docker info --显示系统及容器的信息docker --help --帮助命令
2、镜像命令:
docker images --查看本机所有的镜像命令可选项:--filter=STARS=3000 --过滤STARS大于3000的镜像docker images --filter=stars=3000docker search 镜像名 --从仓库中搜索镜像名docker pull 镜像名:版本 --从仓库中下载指定的镜像版本docker rmi -f 镜像名:版本或镜像ID --删除镜像docker rmi -f $(docker images -aq) --删除所有的镜像docker images -qa --将所有的镜像ID显示出来docker ps -qa --将所有的容器ID显示出来
3、容器命令:【先有镜像,才有创建容器】
docker run [option]IMAGE[COMMAND][ARG...]说明:option,设置项;COMMAND 以什么命令形式启动,镜像一般都有,所以不用特殊指定。--option--name="name" 拟定一个容器名字-d 后台运行,如果不加这个参数,docker容器启动后不能退出[这里的退出指定的是:docker run 镜像名的界面不能退出],否则就会终止;-it 使用交互方式运行,进入容器查看内容-p 指定容器端口 主机端口:容器端口(常用)-P 随机端口--restart=always 开机自启,如果不加这个参数,系统重启后,运行的容器都会停止。例子:启动并执行一个镜像docker run --name="容器名" -it 镜像名或镜像ID /bin/bash[docker run -it 容器名 /bin/bash:该命令的-it是交互方式进行的,也就是能够在宿主机跟容器中来回切换。如果不加,容器一运行就停止;/bin/bash:该命令是执行进入容器中。如果不可加这个,进入容器需要执行:docker exec/attach 容器名或容器ID才能进入容器/bin/bash ----是运行命令 如果不加这个,不能进入容器中]docker update 容器名/ID --restart=always 更新容器开机自启[update不能更新端口映射,容器启动的时候是在Linux的内网中,如果外网/公网需要访问容器的服务,需要将公网的端口映射内网的容器端口中]注意:进入当前正在运行的容器【通常容器都是使用后台方式运行的,有时需要进入容器,修改一些配置】docker exec -it 容器名或容器ID /bin/bashdocker attach 容器名或容器ID查看运行的容器命令:docker ps 查看所有正在运行的容器docker ps -a 查看所有历史运行的容器docker ps -n=? 显示最近运行过的几个命令docker ps -qa 显示容器所有的ID退出容器命令:exit:直接退出并停止ctrl+P+Q:退出容器不停止删除容器:docker rm 容器ID或容器名 【不能删除正在启动的容器,如果要强制一个删除一个容器,如果加-f】docker rm -f $(docker ps -aq) 递归删除容器docker ps -aq | xargs docker rm 递归删除容器停止容器:docker stop 容器名或容器ID 停止正在运行的容器docker kill 容器名或容器ID 杀死正在镜像的容器进行docker start 容器名或容器ID 启动一个容器查看容器内部的元素信息命令:docker inspect 例子:docker inspect 9252bd718b306d
4、查看docker日志命令:
docker logs 容器名docker logs --helpdocker logs -t -f --tail n 容器名或容器ID 显示容器多少条日志,注意加了tail参数,必须要指定条数
5、查看容器内部的进程命令:
docker top 容器名或容器ID
6、commit[将正在运行的容器提交成一个新的镜像]
语法:docker commit [options] CONTAINER [REPOSITY[:TAG]]docker commit 容器ID 提交一个容器作为新的镜像例子:docker commit -a="FengYu" -m="add webapps app" 容器ID 镜像名:版本参数说明:-a 是作者;-m是描述
7、卷挂载【本机目录与容器内的目录同步】
docker run -it -p 8081:8081 -p 8082:8082 -v /usr/local/tomcat/bin1:/usr/local/tomcat11/bin -v /usr/local/tomcat/webapps1:/usr/local/tomcat11/webapps/sguap-server -v /usr/local/tomcat/bin2:/usr/local/tomcat22/bin -v /usr/local/tomcat/webapps2:/usr/local/tomcat22/webapps:ro mytomcat-cx:1.0 /bin/bashro:表示容器内的目录只能读;rw:表示容器内的目录可以读写。注意:卷挂载强调的是目录与目录的同步。不需要指定到目录下的某一个文件,当然可以指定到某一个文件。卷挂载的容器不能作为镜像提交。容器数据卷:容器跟容器同步--volumes-from子容器 --volumes-from 父容器docker run -it --name cs01 镜像名:版本/镜像IDdocker run -it --name cs02 --volumes-from cs01 镜像名:版本/镜像IDcs01跟cs02是容器
8、CMD跟ENTRYPOINT的区别:
CMD指定容器启动时要运行的命令,只有最后一个有效,可被代替,指的是在追加命令的情况下ENTRYPOINT指定这个容器启动的时候要进行运行的命令,可以追加。CMD ["ls","-a"]
指令篇:
1、删除镜像:
docker rmi 镜像名 :版本号docker search 镜像名下载镜像docker pull 镜像名发布镜像docker push 镜像名---下载及发布镜像是针对镜像仓库而言的
2、删除容器
docker rm 容器IDdocker rm -f 容器ID [强制删除正在运行的容器]
3、运行容器
docker run [option] 镜像名:版本号(容器ID)/bin/bashoption:--name:给容器取个名字-a:作者-d:后台运行-p:暴露外网端口-P:随机端口-v:挂载卷
4、给镜像打标记
docker tag 作者/镜像名:版本
5、进入容器
docker exec --会启动一个新的容器docker attach --不会启动一个新的容器CP拷贝命令:----------- docker cp 容器内的文件 宿主机指定目录下;docker cp 宿主机指定目录下 容器内的文件;如:docker /home/nginx.conf 58355eab288e:/etc/nginx/nginx.confdocker cp 容器ID:容器文件 宿主机目录下cp是从容器内将文件拷贝到宿主机指定的目录下;从宿主机将容器拷贝到容器内用卷命令。例子:将容器(ID58355eab288e)中一个test文件拷贝到宿主机上home目录下docker cp 58355eab288e:/home/test /home
6、指定端口访问地址
docker run -d -it --name tomcat -p 9000:8080 tomcat-jdk-imagesdocker stats 查看内存使用情况docker run -e 系统简称名_JAVA_OPTS=“-Xms64m -Xms512m”镜像名【-e 参数是设置环境变量的】
7、用完就删的镜像指令
docker run -it --rm tomcat 【该命令一般用于测试】
8、将自己制作的镜像打包
docker save -o 镜像名.tar 镜像名:标签
9、将自己的镜像导入系统中
docker load -i 镜像名.tar
10、swarm
1、集群的管理和编号。docker可以初始化一个swarm,其他节点加入(工作者、管理者);2、Node就是一个docker节点,多个节点就组成可一个网络集群。(管理、工作者)3、service任务,可以在管理节点或者工作节点来运行。核心!用户访问!4、task 容器内的命令,细节。------------docker swarm --helpdocker swarm init --初始化一个集群节点(主节点,后面的worker跟manager节点都是在其之下)docker swarm init --help 查看初始命令-----------------------------------------docker swarm init --advertise-add ip --初始化一个集群并添加IP(IP有公网跟私网,私网是对内的,不需要前,公网是对外的,需要钱)。通过改命令,可以获取令牌,选择需要添加的是worker还是manager节点。docker swarm join-token worker --向集群中添加一个工作节点(敲入该指令可以生成需要添加到集群的工作节点命令)docker swarm join-token manager --向集群中添加一个管理节点(敲入该指令可以生成需要添加到集群的管理节点命令)-------------------------------------------docker swarm leave --将管理节点或工作节点脱离集群docker swarm update --更新一个集群-------------------------------------------docker node ls --查看节点信息
11、Raft协议
双主双从节点:manager and workerRaft协议:保证大多数节点存活才可以用。普通的manager至少>1台,集群至少3台。
12、systemctl stop docker 停止docker容器
13、docker service --help
create --创建一个新的服务docker service create --help --查看帮助docker service create -p 8080:80 --name my-nginx nginx --这里的nginx是镜像inspect --展示服务的详细信息 docker service inspect my-nginxlogs --查看服务或副本的日志docker logs 容器名/容器ID [查看容器运行错误日志]ls --展示服务列表docker service ls --查看服务列表ps --展示一个或多个服务的副本状态docker service ps my-nginx --查看副本列表rm --移除一个或多个服务rollback --取消服务配置,还原初始设置scale --扩缩一个或多个副本服务docker service scale --help --查看帮助docker service scale my-nginx=5 动态扩展5个副本update --更新一个服务docker service update --help --查看帮助docker service update --replicas 3 my-nginx调整service以什么方式运行:--mode replicated docker service create --mode replicated --name mytom tomcat:7 -- 默认的,在副本节点运行--mode globaldocker service create --mode global--name mytom tomcat:7 --全局的,在任何节点都可以运行
14、灰度发布:平滑升级项目,不用中断项目,停止服务。
docker run 容器启动!不具有扩缩容器docker service 服务!具有扩缩容器,滚动更新!命令->管理->api->调度->工作节点 (创建task容器、维护创建!)kubectl service api--wordpress 博客
15、docker stack --集群启动
docker compose --单机启动----docker secret --安全docker config --配置
16、Linux 、docker、k8s(适合10台以上的服务器)
Go语言(由B语言、C语言、unix跟谷歌V8引擎组合而成)---------Docker、K8S、Etcd(存储)是Go开发的。
Docker实用指令整理相关推荐
- linux关闭网卡休眠_CentOS_Linux常用实用指令整理三:高级指令
主要介绍了linux下的常用的一些高级指令用法举例并说明作用.没有花里胡哨的概念介绍仅以实际的使用方法举例.相当于是个中文的帮助文档. 1.hostname[读取和设置主机名称] 用法1:hostna ...
- Docker必备知识整理
Docker简介 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之 ...
- 0-3 Docker实用篇
Docker实用篇 0.学习目标 1.初识Docker 1.1.什么是Docker 微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦. 分布式系统中,依赖的组件非常多,不同组件之间 ...
- Docker 学习资源整理
Docker 是近年来非常火的容器技术,而且啊 Docke r不仅仅是红帽和Canonical等Linux巨头眼里的宠儿,微软等专有软件公司也在热烈拥抱 Docker,所以就知道 Docker 为啥这 ...
- Linux(4) 实用指令
Linux(4) 实用指令 学习视频:https://www.bilibili.com/video/BV1Sv411r7vd?p=25&spm_id_from=pageDriver 一.指令运 ...
- Linux学习笔记 -- 实用指令
目录 概述 Linux应用领域 网络连接的三种模式 目录结构 实操篇 --- 实用指令 vi / Vim 关机重启登录注销 用户管理 指定运行级别 找回 root 密码 --- 面试题 帮助指令 文件 ...
- NumPy的实用函数整理之percentile
NumPy的实用函数整理之percentile percentile() NumPy函数percentile()用于计算指定维度上数组元素的第 n 个百分位数,返回值为标量或者数组. percenti ...
- Linux笔记1(安装,目录结构,远程登录,vi和vim,用户管理,实用指令。定时调度,挂载。)
1.linux的安装 1.先安装virtualmachine15.5 2.再安装Linux(CentOS7.6/centOS8.1) 首先在自己的window电脑上安装虚拟机,然后虚拟机相当于一台电脑 ...
- 【Linux CentOS】 实用指令之帮助指令
正在学习Linux,主要的操作系统是CentOS,学习不易,贵在坚持,不知道自己能不能坚持,希望坚持下去吧,有的内容并不是很理解,希望大家一起指正进步,有一起的小伙伴可以一起学习哦,大家一起加油,冲, ...
- 第六章 Linux实际操作——实用指令
第六章 Linux实际操作--实用指令 6.1 指定运行级别 6.2 找回root密码 6.3 帮助指令 6.3.1 man获得帮助信息 6.3.2 help指令 6.3.3 搜索引擎帮助更直接 6. ...
最新文章
- matlab两个多项式相除,C++和MATLAB混合编程求解多项式系数(矩阵相除)
- Linux下安装rabbitmq3.7.8
- 家用机器人风口来临,但巨头围猎背后的前景不容乐观
- conda (picard)
- XamarinAndroid组件教程RecylerView自定义适配器动画
- java和python的比较-java和python的比较
- 【Flutter】ListView 列表高级功能 ( ScrollController 上拉加载更多 )
- android ViewPager使用遇到的问题
- you-get 一个下载视频的好工具
- cuda gpu相关汇总
- day3-python学习笔记(三)字典、元组
- jsonp模拟获取百度搜索相关词汇
- Airflow 中文文档:用Celery扩大规模
- (原創) 如何為Blog加上簡體中文(繁體中文)翻譯? (Web) (CSS) (JavaScript)
- html5用户输入后自动显示用户名已重复_IT兄弟连 HTML5教程 HTML5表单 HTML5新增表单元素...
- asp.net将图片变成圆形
- Windows下设备ID的查询
- 【感恩】为做运维的重病老同事李静波寻求帮助
- Mac Parallels Desktop 安装 Centos 虚拟机
- VUE router 导航重复点击报错的问题解决两种方案