1.镜像
docker images 列出本地所有镜像
docker search(-s) nginx 搜索相关镜像 加上-s 参数 选出至少start数范围的镜像
docker pull(-a) 镜像名:版本号 拉取镜像,-a pull all
docker push 192.168.0.100:5000/ubuntu 推送镜像库到私有源
docker rmi(-f) 镜像名:版本号/镜像ID 删除镜像 (加上 -f 参数 强制删除)
docker rmi $(docker images -q) 删除所有镜像
docker rmi $(docker images | grep “none” | awk ‘{print $3}’) 删除所有名字中带
“none” 关键字的镜像
docker save docker.io/tomcat:7.0.77-jre7 >/root/mytomcat7.tar.gz 导出镜像
docker load
2.容器
docker ps 查看当前正在运行的容器
docker inspect name/image[name/image…] 查看详细
docker ps -a 查看所有容器的状态
docker start/stop(-t) id/name[name…] 启动/停止某个(多个)容器 -t 指定时间
docker kill (-s) name[name…] 强制中断 -s指定SIGINT信号类型,默认“kill”
docker restart (-t) name[name…] 重启 -t 指定时间
docker pause name 暂停 docker unpause name 继续
docker rm(-$) name[name…] 移除
-f –force=false 强制移除运行中容器
-l –link=false 移除指定链接,保留底层容器
-v –volumes=false 移除容器关联卷
docker commit(-$)name 镜像名:版本号 提交指定容器为镜像
-a, –author=”” 作者
-m, –message=”” 简要说明
-p, –pause=true 暂停容器再提交
docker logs(-$) name 输出指定容器日志信息
-f 跟踪日志输出
-t 显示时间戳 类似 tail -f
–tail 在日志的末尾输出指定行数日志(默认所有日志)
docker attach id 进入某个容器(使用exit退出后容器也跟着停止运行)
docker exec -ti id 启动一个伪终端以交互式的方式进入某个容器
(使用exit退出后容器不停止运行)
docker run(-$) IMAGE [COMMAND] [ARG…] 运行一个容器
-d 指定容器运行于前台还是后台,默认为false
-i 打开STDIN,用于控制台交互,默认为false
-t 分配tty设备,该可以支持终端登录,默认为false
-u, –user=”” 指定容器的用户
-a, –attach=[] 登录容器(必须是以docker run -d启动的容器)
-w 指定容器的工作目录
-c 设置容器CPU权重,在CPU共享场景使用
-e, –env=[] 指定环境变量,容器中可以使用该环境变量
-m 指定容器的内存上限
-P, –publish-all=false 指定容器暴露的端口
-p, –publish=[] 指定容器暴露的端口
-h 指定容器的主机名
-v, –volume=[] 给容器挂载存储卷,挂载到容器的某个目录
–volumes-from=[] 给容器挂载其他容器上的卷,挂载到容器的某个目录
–cap-add=[] 添加权限
–cap-drop=[] 删除权限
–cidfile=”” 运行容器后,在指定文件中写入容器PID值,监控系统用法
–cpuset=”” 设置容器可使用哪些CPU,此参数可以用来容器独占CPU
–device=[] 添加主机设备给容器,相当于设备直通
–dns=[] 指定容器的dns服务器
–dns-search=[] 指定容器的dns搜索域名,写入到容器/etc/resolv.conf文件
–entrypoint=”” 覆盖image的入口点
–env-file=[] 指定环境变量文件,文件格式为每行一个环境变量
–expose=[] 指定容器暴露的端口,即修改镜像的暴露端口
–link=[] 指定容器间的关联,使用其他容器的IP、env等信息
–lxc-conf=[] 指定容器的配置文件,只有在指定–exec-driver=lxc时使用
–name=”” 指定容器名字,links特性需要使用名字
–net=”bridge” 容器网络设置:
bridge 使用docker daemon指定的网桥 host //容器使用主机的网络 container:NAME_or_ID >
//使用其他容器的网路共享IP和PORT等网络资源
none 容器使用自己的网络(类似--net=bridge)
–privileged=false 指定容器是否为特权容器,特权容器拥有所有的权限
–restart=”no” 指定容器停止后的重启策略:
no: 容器退出时不重启 on-failure: 容器故障退出(返回值非零)时重启 always: 容器退出时总是重启
–rm=false 指定容器停止后自动删除容器(不支持以docker run -d启动的容器)
–sig-proxy=true 设置由代理接受并处理信号,SIGCHLD,SIGSTOP和SIGKILL不代
例:
docker run -i -t centos6.8 进入到默认的线程”/bin/bash”,直接进入控制台操作
docker run -i -t -d centos6.8 进入到默认的线程”/bin/bash”,后台运行
docker run -d –restart=always centos6.8 ping www.docker.com 带命令启动
docker run -d –name=server-dbcentos6.8-mysql /usr/bin/mysql_safe -d
容器的名称为server-db,同时激活了数据库mysql的后台线程
docker run -d –name=server-db -p 3306:3306 -v /server/mysql-data:/
mysql-datacentos6.8-mysql /usr/bin/mysql_safe –d
将宿主机的数据库目录/server/mysql-data挂载到server-db上
docker run -d –name=server-db -p 3306:3306 centos6.8-mysql
/usr/bin/mysql_safe –d 服务器宿主机与容器端口映射并暴露
docker run -d –name=server-http –link=server-db -p 8080:80centos6.8-httpd
/usr/bin/httpd –DFOREGROUND
映射服务器宿主机的8080端口,关联service-db
docker run -it –rm centos6.8 容器进程结束后,立马自动删除
3.docker option
–api-enable-cors=false 在远程API中启用CORS 头 -b, –bridge=”” 桥接网络 使用“none” 禁用容器网络 –bip=”” 网桥模式 -d, –daemon=false 守护者模式 -D, –debug=false debug 模式 –dns=[] 强制 docker 使用指定 dns 服务器 –dns-search=[] 强制 docker 使用指定 dns 搜索域 -e, –exec-driver=”native” 强制 docker 运行时使用指定执行驱动器 –fixed-cidr=”” 固定IP的IPv4子网(例: 10.20.0.0/16)必须镶套在桥子网
中(由-b or –bip定义) -G, –group=”docker” 当在守护模式中运行时,组指向-H指定的unix套接字。
使用””禁用组设置。 -g, –graph=”/var/lib/docker” 容器运行的根目录路径 -H, –host=[] 套接字绑定到守护模式。使用一个或多个tcp://主机:端
口,unix:///路径/到/套接字,fd://*或fd://socketfd. –icc=true inter-container跨容器通信 –insecure-registry=[] 使用指定的注册表启用不安全通信(没有HTTPS的证书验
证和启用HTTP回退)(例如,localhost:5000或10.20.0 /16) –ip=”0.0.0.0″ 绑定容器端口时使用的IP地址 –ip-forward=true 使用net.ipv4.ip_forward转发 –ip-masq=true 使IP伪装成桥的IP范围 –iptables=true 启用Docker添加iptables规则 –mtu=0 设置容器网络mtu -p, –pidfile=”/var/run/docker.pid” 指定守护进程pid文件位置 –registry-mirror=[] 指定一个首选的镜像仓库(加速地址) -s, –storage-driver=”” 强制 docker 运行时使用指定存储驱动 –selinux-enabled=false 开启 selinux 支持 –storage-opt=[] 设置存储驱动选项 –tls=false 开启 tls –tlscacert=”/root/.docker/ca.pem” 只信任提供CA签名的证书 –tlscert=”/root/.docker/cert.pem” tls 证书文件位置 –tlskey=”/root/.docker/key.pem” tls key 文件位置 –tlsverify=false 使用 tls 并确认远程控制主机 -v, –version=false 输出 docker 版本信息
总结
至此关于Linux下docker常用命令分型结束,大家如果还有相关疑问可以通过评论区将问题提交给我们。
以上就是
为各位朋友分享的 相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多 等着你!