docker之docker基础命令集合

【Docker】docker基础命令和DockerFile 需要注意的是,上下文路径下不要放无用的文件,因为会一起打包发送给docker引擎,如果文件过多会造成这个过程缓慢的问题。sudo docker run -it --name 容器名字 --restart=always 镜像:标签 /bin/bash -c "/home/test/start.sh /home/test/"sudo docker run -it --name 容器名字 --restart=always 镜像:标签 /bin/bash -c "/home/test/start.sh" 阅读详情

1、 docker参数

docker  
useage of docker  
-D 默认false 允许调试模式(debugmode)  
-H 默认是unix:///var/run/docker.sock tcp://host:port来绑定
或者unix://[/path/to/socket]来使用(二进制文件的时候),当主机ip
host=[0.0.0.0],(端口)port=[4243] 或者 path=[/var/run/docker.sock]是缺省值,做为默认值来使用  
-api-enable-cors 默认flase 允许CORS header远程api  
-b 默认是空,附加在已存在的网桥上,如果是用'none'参数,就禁用了容器的网络  
-bip 默认是空,使用提供的CIDR(ClasslessInter-Domain Routing-无类型域间选路)
标记地址动态创建网桥(dcoker0),和-b参数冲突,通过该参数修改docker0上默认的子网段
-d 默认false 允许进程模式(daemonmode)  
-dns 默认是空,使docker使用指定的DNS服务器  
-g 默认是"/var/lib/docker":作为docker使用的根路径  
-icc 默认true,允许inter-container来通信  
-ip 默认"0.0.0.0":绑定容器端口的默认Ip地址
-iptables 默认true 禁用docker添加iptables规则  
-mtu 默认1500 : 设置容器网络传输的最大单元(mtu)  
-p 默认是/var/run/docker.pid进程pid使用的文件路径  
-r 默认是true 重启之前运行的容器  
-s 默认是空 ,这个是docker运行是使用一个指定的存储驱动器  
-v 默认false 打印版本信息和退出 

2、docker run命令

Usage: docker run [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]  
Run a command in a new container  
-a=map[]: 附加标准输入、输出或者错误输出  
-c=0: 共享CPU格式(相对重要)  
-cidfile="": 将容器的ID标识写入文件  
-d=false: 分离模式,在后台运行容器,并且打印出容器ID  
-e=[]:设置环境变量  
-h="": 容器的主机名称  
-i=false: 保持输入流开放即使没有附加输入流  
-privileged=false: 给容器扩展的权限  
-m="": 内存限制 (格式:<number><optional unit>, unit单位 = b, k, m or g)  
-n=true: 允许镜像使用网络,可选择不同的网络类型,bridge,none,host
-p=[]: 匹配镜像内的网络端口号  
-rm=false:当容器退出时自动删除容器 (不能跟 -d一起使用)  
-t=false: 分配一个伪造的终端输入  
-u="": 用户名或者ID  
-dns=[]: 自定义容器的DNS服务器  
-v=[]: 创建一个挂载绑定:[host-dir]:[container-dir]:[rw|ro].如果容器目录丢失,docker会创建一个新的卷  
-volumes-from="": 挂载容器所有的卷  
-entrypoint="": 覆盖镜像设置默认的入口点  
-w="": 工作目录内的容器  
-lxc-conf=[]: 添加自定义-lxc-conf="lxc.cgroup.cpuset.cpus = 0,1" 
-sig-proxy=true: 代理接收所有进程信号(even in non-tty mode)  
-expose=[]: 让你主机没有开放的端口  
-link="": 连接到另一个容器(name:alias)  
-name="": 分配容器的名称,如果没有指定就会随机生成一个  
-P=false: Publish all exposed ports to thehost interfaces 公布所有显示的端口主机接口 

3、docker常用操作命令

docker pull <镜像名:tag> #从官网拉取镜像  
docker search <镜像名> #搜索在线可用镜像名 

3.1查询容器、镜像、日志

docker top <container> #显示容器内运行的进程  
docker images #查询所有的镜像,默认是最近创建的排在最上。  
docker ps #查看正在运行的容器  
docker ps -l #查看最后退出的容器的ID  
docker ps -a #查看所有的容器,包括退出的。  
docker logs {容器ID|容器名称} #查询某个容器的所有操作记录。  
docker logs -f {容器ID|容器名称} #实时查看容易的操作记录。 

3.2删除容器与镜像

docker rm$(docker ps -a -q) #删除所有容器  
docker rm <容器名or ID> #删除单个容器  
docker rmi <ID> #删除单个镜像  
docker rmi$(docker images | grep none | awk '{print $3}' | sort -r) #删除所有镜像 

3.3启动停止容器

docker stop <容器名or ID> #停止某个容器  
docker start <容器名or ID> #启动某个容器  
docker kill <容器名or ID> #杀掉某个容器 

3.4容器迁器

docker export <CONTAINER ID> > /home/export.tar #导出  
cat /home/export.tar | sudo docker import - busybox-1-export:latest # 导入export.tar文件  
docker save debian> /home/save.tar #将debian容器打包  
docker load< /home/save.tar #在另一台服务器上加载打包文件 
save和export的对比参考地址:
http://www.fanli7.net/a/bianchengyuyan/C__/20140423/452256.html

3.5运行一个新容器

#运行一个新容器,同时为它命名、端口映射。以debian02镜像为例  
docker run -h="redis-test" --name redis-test -d -p 51000:22 -p51001:3306 -p 51003:6379 -p 51004:6381 -p 51005:80 -p 51006:8000 -p 51007:8888 debian02 /etc/rc.local  

#从container中拷贝文件,当container已经关闭后,在里面的文件还可以拷贝出来。  
sudo docker cp 7bb0e258aefe:/etc/debian_version . #把容器中的/etc/debian_version拷贝到当前目录下。 

3.6 docker Dockfile镜像制作

root@yangrong:/data# cat Dockerfile  
FROM ubuntu/testa #这是基础镜像  
CMD ["/root/start.sh"] #这是启动命令  
root@yangrong:/data# docker build -t <新镜像名> ./ #生成新的镜像 
Dockfile更多参数参考:
http://www.tuicool.com/articles/FRvAbe
http://www.colorscode.net/2014/01/04/howto-build-image-with-automatic-startup-ssh-service-from-dockerfile/

4、docker使用过程实践

4.1 在测试机启动容器,安装ssh

docker run -i -t ubuntu /bin/bash #此方式运行的容器,退出后容器就会关闭。  
apt-get install openssh-server #安装ssh  
#需要修改/etc/sshd/sshd_config文件中内容  
PermitRootLogin yes  
UsePAM no 

4.2 启动ssh,容器以后台方式运行

docker run -d -p 50001:22 <容器id> /usr/sbin/sshd-D  
#容器id可通过 docker ps-a查看,最上面的为最新的。 

4.3 通过ssh连接到容器安装软件

ssh root@127.0.0.1-p 50001  
#连上后想装什么就装什么,可使用exit退出容器,但后台还会运行。 

4.4 服务安装完成后,停止容器。

docker stop <容器id> #停止运行的容器 

4.5 把容器提交生成最新的镜像

docker commit <容器id> debian02 #把这个容器提交生成新的debian02镜像(该镜像是原始镜像与容器的整合) 

4.6 打包镜像

docker save debian02 >/root/debian02.tar #debian02镜像打包 

4.7 在另外的机器上导入镜像

docker load < debian02.tar #导入镜像  
docker images #查看存在的镜像 

4.8 启动容器

docker run -h="redis-test" --name redis-test -d -p 51000:22 -p51001:3306 -p 51003:6379 -p 51004:6381 -p 51005:80 -p 51006:8000 -p 51007:8888 debian02 /etc/rc.local  
#此处是我测试机器启动命令,指定主机名与端口映射。  
#启动后,后面又装了程序,开机自启动命令可放在/etc/rc.local文件中。  
docker容器迁移简单方便,可以任意的拷贝部署,以后再也不怕新部署环境了,一堆依赖装的想死有木有。

本文衔接

Docker 基础命令简介 【代码】【无标题】 阅读详情

相关推荐

Docker容器管理的10个基础命令

Docker作为目前最流行的容器化平台之一,极大地简化了应用的部署、运行和管理。掌握Docker的基本命令是每个开发者和运维工程师的必备技能。本文将为大家介绍Docker容器管理的一些基础且常用的命令,帮助大家快速上手Docker容器管理。

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 5661

Docker 配置参数详解

docker run:运行一个新的容器。docker ps:列出当前运行的容器。:停止一个运行中的容器。docker rm:删除一个容器。:列出本地镜像。docker rmi:删除一个镜像。:在运行的容器中执行命令。:查看容器的日志。:查看容器或镜像的详细信息。

WenZhang的博客 4264

vuecil3+版本下,兼容ie等不支持es6的低版本浏览器

*综上,完成兼容性涉及到的配置的文件有,对应在页面中查看代码,就不单独附代码了:main.js。

yhr0322的博客 833

Docker的run命令-p参数

p后边的5000:80代表把容器里的80端口映射给宿主机的5000端口。这样做了映射之后,可以通过5000端口访问该项目的主页。

m0_67391120的博客 2947

[小梅哥FPGA] 如何通过动态重配置实现FPGA时钟的实时频率/相位/占空比调整?

PLL和MMCM是实际存在的硬件电路,用以对输入时钟的负面变化,如抖动、频率变化、相位偏移、占空比失真等进行处理。基于该表,用户在初始化Clk_Wiz后,只需要计算好所需的频率、相位、占空比对应的设置值,使用Xil_Out32函数配置对应寄存器即可。通过上述步骤,在平时的开发调试过程中,亦或是一些对于时钟可能有着实时性要求的设计(如数据采集、图像处理)里,我们便可以在无需重新修改设计的前提下,通过AXI4总线来完成对时钟频率、相位的调控,从而达到缩短设计周期以及让设计适应更多场景的目的。

zgmxs的专栏 2493

串口接收完整一帧数据包的3种方法

本文介绍3种使用串口接受一帧完整数据包的方法,串口接收数据是字节接收的,串口每接收1字节数据,产生一个串口中断,我们在中断中将接收到的数据存放到buf中进行保存,但是数据的发送和接收都是按照帧为单位进行传输的,因此我们要在接收数据的同时判断当前接收的数据是否是完整的一帧。 一般串口完整数据帧的定义:帧头(2字节,例如AA、BB) + 数据长度(2字节) + 数据+ CRC16校验(2字节) + 帧尾(2字节) 帧头、帧尾表示一帧数据的开始和结尾,数据长度表示当前数据帧中负载数据大小,CRC16校...

爱吃鱼的猫 6万+

docker的启动参数

Docker启动参数主要是通过Docker命令和配置文件来设置的。命令结合具体的镜像来启动容器,并应用这些参数。:后台运行容器,并返回容器ID;docker的启动参数。:为容器指定一个名称;:挂载一个目录或文件;:连接容器到一个网络。

Will_1130的博客 1124

“迎圣诞,拿大奖” 活动赛题 Web-SQLi

1. php中sprintf()函数漏洞原理及其利用; 2. mysql盲注语法及python脚本; 3. sqlmap的需要进一步学习;

qq_34106499的博客 674

Docker超详细基础教程

一.Docker介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Ed.

m0_67402341的博客 3775

MTK(camera篇)Camera整体点亮

本文介绍了在MTK平台上添加新Camera Sensor的驱动开发流程。主要内容包括:1)MTK Camera采用HAL3架构,驱动层主要负责sensor电源控制和寄存器操作;2)详细说明了添加新sensor需要在多个文件中进行的修改,包括设备树配置、内核头文件、驱动列表、电源序列等;3)特别指出需要配置I2C地址表,并导入tuning文件和metadata文件以完善ISP处理流程。文章提供了完整的文件修改清单,涵盖了从内核层到HAL层的完整开发过程,为MTK平台Camera Sensor驱动开发提供了具体

weixin_49303682的博客 361

你以为你懂 Java 反射?看了这篇源码分析,我发现我以前都错了

摘要:本文讲述了一次生产环境Metaspace内存溢出的故障排查经历。事故源于一个通用数据导出功能中频繁使用反射调用method.invoke(),触发了JVM的"膨胀机制":当同一Method对象调用超过15次时,JVM会动态生成GeneratedMethodAccessor类,导致Metaspace被撑爆。文章分析了问题根源在于循环中反复调用getMethods()创建新Method对象,并提出了三种解决方案:缓存Method对象、改用MapStruct/MethodHandle工具

BUG猿的博客 770

Docker 中的参数 -p 含义

docker参数

weixin_52987392的博客 1829

LeRobot 入门教程(十七)NVIDIA IsaacLab Arena 集成

LeRobotEnvHub现已集成IsaacLabArena实现GPU加速仿真,支持GR1/G1/伽利略人形机器人实体和多种操作任务。安装需满足CUDA GPU、Ubuntu系统和IsaacSim 5.1.0要求,通过conda环境配置依赖项。系统提供SmolVLA和PI0.5等预训练策略评估功能,支持视频录制和并行环境配置。环境配置选项涵盖机器人实体、任务类型、观测维度等参数,并包含针对CUDA内存、视频录制等常见问题的解决方案。此外,LightWheel AI还通过LW-BenchHub引入了包含268

2506_90492529的博客 1246

docker基础命令集合

docker基础命令集合 1、镜像搜索:docker search 命令格式:docker search [options] term 2、镜像获取:docker pull 命令格式:docker pull [OPTIONS] NAME[:TAG|@DIGEST] 3、镜像信息查看:docker images 命令格式:docker images [OPTIONS] [REPOSITORY[:TAG]] 4、镜像标签操作:docker tag 命令格式:docker tag SOURCE_IMAGE

leetrocken的博客 258

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Docker基础命令集合

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

pygain的博客 1938

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

docker 基础命令集合

前言:docker 是系统子系统的环境,可以充分的使用系统cpu等资源,重要的概念有 镜像,容器,仓库,配合分布式使用极大的提升了资源使用效率和增加系统的可靠性,非常值得学习的知识 在学习中记录一下常用命令集合 docker pull 下载镜像 docker images 查看镜像列表 docker run -dit --name 容器名称 容器id docker ps 已经在运行的doc...

朝立的博客 266

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Docker基础篇 (命令集合+底层原理)

Docker是一个开源容器化平台,通过将程序及其依赖打包到容器中,实现跨环境一致性运行。其核心原理基于Linux的NameSpace(资源隔离)和Controlgroups(资源限制)技术,使容器像独立操作系统一样运行。Docker工作流程包括Dockerfile定义配置、Image生成可执行程序、Container运行实例。常用命令如docker pull获取镜像、docker run启动容器,支持端口映射、数据卷挂载等功能。

A93793616的博客 1065

Docker基础--> 实战

docker部署相关

weixin_45134135的博客 343

Docker命令集合

Docker 命令集合 docker imgaes 命令可用列出本地主机上已有的镜像 docker inspect ID(镜像的ID) 获取该镜像的详细信息 docker rmi IMAGE(标签或ID) 删除镜像 -m “”提交信息 -a “”作者信息 -p “”提交时暂停容器运行 docker commit -m -a ID message docker save 和 docker lo...

qq_36304596的博客 245

Docker——Docker命令集合

本博文介绍docker命令集合,帮助大家更好的使用docker容器。

庄小焱 7146

docker基础快速入门:基础命令、网络、docker compose工具

快速熟悉docker基本命令、docker网络、docker compose工具

alterhz的博客 1351

Docker学习(2)——Docker基础命令的讲解

记住:容器是基于镜像的,就像虚拟机也是基于镜像一样的 1.常用的Docker基础命令总结 命令格式 作用 docker load -i ubuntu.tar 导入镜像(以ubuntu镜像为模板) docker run -it --name vm1 ubuntu 创建容器(以ubuntu镜像为模板) docker ps 查看容器状态,当前活跃的 docker ps -a ...

ymeng9527的博客 637

docker基础命令

docker命令 ###普通命令 docker info 查看docker的详细信息 docker version 查看docker的版本 ###本地镜像管理命令 docker images 参数: -a:列出所有镜像 -q:只列出镜像id docker rmi 删除镜像 参数: -f:强制删除 docker build PATH|URL 用于使用 Do...

a5286239的博客 2186

docker-compose命令管理docker命令集合

Docker-Compose 项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docker-Compose 项目由 Python 编写,调用 Docker 服务提供的API来对容器进行管理。因此,只要所操作的平台支持 Docker API,就可以在其上利用Compose 来进行编排管理。Compose允许用户通过一个docker-compose.yml模板文件(YAML 格式)来定义一组相关联的应用容器为一个项目(project)。

lvyuanj的专栏 2184
上一篇: kolla快速集成openstack-ocata和opencontrail-4.0.1.0单节点
forrest_zhu
博客等级 码龄11年 8粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值