docker 学习--02 常用命令

这篇具有很好参考价值的文章主要介绍了docker 学习--02 常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker 学习–02 常用命令


docker 学习-- 01 基础知识

docker 学习-- 02 常用命令

docker 学习-- 03 环境安装

docker 学习-- 04 实践 1(宝塔)

docker 学习-- 04 实践 2 (lnpmr环境)


1. 帮助启动类命令

1.1启动docker

 systemctl start docker

1.2 停止docker

 systemctl stop docker

1.3 重启docker

systemctl restart docker

1.4 查看docker

systemctl status docker

1.5 设置开机自启

systemctl enable docker

1.6 查看docker概要信息

docker info

1.7 查看docker总体帮助文档

docker --help

1.8 查看docker命令帮助文档

docker 命令 --help
 
example:
docker run --help

2. 镜像命令

2.1 列出本地主机上有的镜像

docker images [OPTIONS]
 
常用参数:
-a :列出所有的镜像 (含历史映像层)
-q :只显示镜像ID
 
example:
docker images -a
docker images -q
docker images -aq
docker images php #查找镜像名为php的镜像
//REPOSITORY:表示镜像的仓库源
//TAG:镜像的标签版本号
//IMAGE ID:镜像ID
//CREATED:镜像创建时间
//SIZE:镜像大小 

2.2 查询镜像库

docker search [OPTIONS] 镜像名字
 
常用参数:
--limit nu   #只输出查到的前nu条记录
 
example:
docker search php
docker search --limit 10 php
//NAME:镜像名称
//DISCRIPTION:镜像说明
//STARTS:点赞数
//OFFICAL:是否是官方认可的
//AUTOMATED:是否自动构建 

2.3 从远程库拉取镜像

docker pull 镜像名字[:TAG]
 
example:
docker pull php:7.2
docker pull php # 没有指定版本即拉取最新版 

2.4 查看镜像/容器/数据卷所占的空间(使用时注意自己是否有权限)

//检查Docker镜像的磁盘空间
docker system df 
//查该命令将显示所有正在运行的Docker容器的磁盘使用情况
docker ps -s  
//检查Docker容器的详细磁盘使用情况  
//该命令将显示指定Docker容器的详细磁盘使用情况,包括容器的各个层的大小。
docker inspect | grep -i "size" 

2.5 删除本地镜像

//删除单个
docker rmi 镜像ID  #删除镜像,如果此时镜像上面有容器正在运行,会报错无法删除
docker rmi  -f 镜像ID   #强制(forced)删除镜像
//删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG 
//删除全部(慎用)
docker rmi -f $(docker images -qa)  
#首先docker images -qa会列举本地所有的镜像的ID,然后作为一个集合送入rmi一个个删除

2.6 创建新的镜像

docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]

2.7 通过Dcokerfile构建镜像

Dockerfile是使用Docker构建镜像的一种常见方式,它是一个文本文件,包含了构建镜像所需的命令和指令 格式如下

//Dockerfile常见命令:
//FROM image_name:tag	声明基础镜像
//MAINTAINER user_name	声明镜像的作者
//ENV key value	设置环境变量 (可以写多条)
//RUN command	编译镜像时运行的脚本(可以写多条)
//CMD	设置容器的启动命令
//ENTRYPOINT	设置容器的入口程序
//ADD source_dir/file dest_dir/file	将宿主机的文件复制到镜像内,如果是一个压缩文件,将会在复制后自动解压。支持URL路径下载源文件,但下载方式不能自动解压。
//COPY source_dir/file dest_dir/file	和ADD相似,将宿主机的文件复制到镜像内,但是如果有压缩文件并不能解压。不支持URL路径下载。
//WORKDIR path_dir	设置工作目录
//ARG	设置编译镜像时加入的参数
//VOLUMN	设置容器的挂载卷

//示例  
 #(1)建立工作目录
 mkdir /opt/apache
 cd /opt/apache
 ​
 #(2)准备Dockerfile文件
 vim Dockerfile
 #基于的基础镜像
 FROM centos:7
 #维护镜像的用户信息
 MAINTAINER this is apache image <zy>
 #镜像操作指令安装apache软件
 RUN yum -y install httpd
 #开启80端口
 EXPOSE 80
 #复制网站首页文件
 ADD index.html /var/www/html/
 #指定启动容器时第一个运行的命令,前台运行apache
 //方法一:
 #将执行脚本复制到镜像中
 ADD run.sh /run.sh
 RUN chmod 755 /run.sh
 #启动容器时执行脚本
 CMD ["/run.sh"]
 ​
 //方法二:
 ENTRYPOINT ["/usr/sbin/apachectl"]
 CMD ["-D", "FOREGROUND"]     #FOREGROUND前台运行
 #默认情况下apache是在后台运行需要-D指定FOREGROUND表示前台运行否则执行完第一条命令会停止镜像
 ​
 ​
 #(3)准备执行脚本。使用方法一的情况下需要准备执行脚本,使用方法二可跳过此步骤。
 vim run.sh
 #!/bin/bash
 #清理httpd的缓存
 rm -rf /run/httpd/*
 #指定为前台运行
 /usr/sbin/apachectl -D FOREGROUND
 #因为Docker容器仅在它的1号进程(PID为1)运行时,会保持运行。如果1号进程退出了,Docker容器也就退出了。#(4)准备网站页面
 echo "this is apache web" > index.html
 ​
 #(5)生成镜像(构建镜像)
 docker build -t httpd:centos .   #注意别忘了末尾有"."#(6)使用新镜像运行容器
 docker run -d -p 6666:80 httpd:centos   #指定映射端口1314#使用宿主机IP和1314端口,测试网页访问
 http://IP:6666/

3容器命令

3.1 新建启动容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
 
常用参数:
--name=NAME   #为容器指定名字为NAME,不使用的话系统自动为容器命名
-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
 
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
也即启动交互式容器(前台有伪终端,等待交互,一般连用,即-it);
 
-P: 随机端口映射,大写P
-p: 指定端口映射,小写p
 
 
example:
 
以ubuntu为例,启动后要交互先声明交互模式,其次交互得需要一个终端,因此参数为-it
docker run -it ubuntu /bin/bash
 
指定名称
docker run -it --name=myubuntu ubuntu /bin/bash

3.2 查看容器 大小

docker ps [OPTIONS]
 
常用参数:
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n nu:显示最近nu个创建的容器。
-q :静默模式,只显示容器编号

3.3 退出容器


//1.run进去容器,exit退出,容器停止
exit
//2.run进去容器,ctrl+p+q退出,容器不停止

3.4 进入正在运行的容器并以命令行交互

//exec 是在容器中打开新的终端,并且可以启动新的进程。用exit退出,不会导致容器的停止。
//attach 直接进入容器启动命令的终端,不会启动新的进程。用exit退出,会导致容器的停止。
docker exec -it 容器ID/容器名称 bashShell
docker attach 容器ID

3.5 启动已停止运行的容器

docker start 容器ID或者容器名

3.6 重启容器

docker restart 容器ID或者容器名

3.7 停止容器

docker stop 容器ID或者容器名

3.8 强制停止容器

docker kill 容器ID或容器名

3.9 删除已停止的容器

#删除一个
docker rm 容器ID  
docker rm -f 容器ID  #强制删除
 
#删除多个
docker rm -f $(docker ps -a -q)docker ps -a -q | xargs docker rm

3.10 查看容器日志

docker logs 容器ID

3.11 查看容器内运行的进程

docker top 容器ID

3.12 查看容器内部细节

docker inspect 容器ID

3.13 从容器内拷贝文件到主机上

docker cp  容器ID:容器内路径 目的主机路径

3.14 导入和导出容器

docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

3.15 容器数据卷挂载 运行一个带有容器卷存储功能的容器实例

docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:[OPTION] 镜像名

OPTION:
rw   可读可写(read + write)
ro   容器实例内部被限制,只能读取不能写,仅读(read only)

3.16 容器数据卷继承

docker run -it  --privileged=true --volumes-from 父类  --name u2 ubuntu
 
example:
# 新创建u3容器继承u2容器的数据卷挂载,此时u2就算stop也不影响u3
docker run -it --privileged=true --volumes-from u2 --name u3 ubuntu

3.17 查看容器资源占用情况

docker stats [OPTIONS] [CONTAINER...]
 
OPTIONS:
--all , -a :显示所有的容器,包括未运行的。
--format :指定返回值的模板文件。
--no-stream :展示当前状态就直接退出了,不再实时更新。
--no-trunc :不截断输出。
example:
docker stats
docker stats mynginx  # 容器名
docker stats af7928654200  # 容器ID

//CONTAINER ID 与 NAME: 容器 ID 与名称。
//CPU % 与 MEM %: 容器使用的 CPU 和内存的百分比。
//MEM USAGE / LIMIT: 容器正在使用的总内存,以及允许使用的内存总量。
//NET I/O: 容器通过其网络接口发送和接收的数据量。
//BLOCK I/O: 容器从主机上的块设备读取和写入的数据量。
//PIDs: 容器创建的进程或线程数。

4 docker 网络命令

4.1 查看网络

docker network ls

4.2 创建网络

docker network create xxx网络名字

4.3 查看网络源数据

docker network inspect  XXX网络名字

4.4 删除网络

docker network rm XXX网络名字

5.Docker-compose容器 命令

docker-compose -h                      # 查看帮助
docker-compose up                      # 启动所有docker-compose服务
docker-compose up -d                   # 启动所有docker-compose服务并后台运行
docker-compose down                    # 停止并删除容器、网络、卷、镜像。
docker-compose exec  yml里面的服务id          # 进入容器实例内部  
docker-compose exec docker-compose.yml文件中写的服务id /bin/bash
docker-compose ps                      # 展示当前docker-compose编排过的运行的所有容器
docker-compose top                     # 展示当前docker-compose编排过的容器进程
 
docker-compose logs  yml里面的服务id    # 查看容器输出日志
docker-compose config     # 检查配置
docker-compose config -q  # 检查配置,有问题才有输出
docker-compose restart   # 重启服务
docker-compose start     # 启动服务
docker-compose stop      # 停止服务

其他链接


docker 学习-- 01 基础知识

docker 学习-- 03 环境安装(win10)文章来源地址https://www.toymoban.com/news/detail-662673.html


到了这里,关于docker 学习--02 常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端TypeScript学习day02-TS常用类型

    (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 TypeScript 常用类型 接口  元组  类型推论 类型断言 字面量类型 枚举 any 类型 typeof  当一个对象类型被多次使用时,一般会使用接口(interface)来描述对象的类型,达到

    2024年02月08日
    浏览(52)
  • SpringCloud02:Eureka

    什么是Eureka? 基于Restful的注册中心 Eureka基本的架构 Springcloud 封装了Netflix公司开发的Eureka模块来实现服务注册与发现 (对比Zookeeper). Eureka采用了C-S的架构设计,EurekaServer作为服务注册功能的服务器,他是服务注册中心. 而系统中的其他微服务,使用Eureka的客户端连接到Eureka

    2024年02月17日
    浏览(35)
  • Docker | Docker常用命令

    ✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏:Docker系列 ✨特色专栏: MySQL学习 🥭本文内容: Docker | Docker常用命令 📚个人知识库: [Leo知识库]https://gaoziman.gitee.io/blogs/),欢迎大家访问 大家

    2024年02月05日
    浏览(47)
  • Docker实战:Docker常用命令

    参考:https://blog.csdn.net/weixin_45509582/article/details/125599521 输出依次为,进程pid、容器ID、容器名、存储work路径,即可确定是哪个容器。 参考:https://blog.csdn.net/sebeefe/article/details/123732823

    2024年02月12日
    浏览(47)
  • 【Docker | 2】Docker常用命令介绍

      Docker 是一种轻量级的容器化技术,常用于构建、打包、部署和运行应用程序。以下是一些常用的 Docker 命令及其详细介绍: 语法介绍 运行一个 Docker 容器。 OPTIONS :可选参数,用于配置容器的行为。 IMAGE :必选参数,指定要运行的容器镜像。 COMMAND :可选参数,覆盖容器

    2024年02月14日
    浏览(46)
  • Docker笔记 Docker架构与常用命令

    大家好 我是积极向上的湘锅锅💪💪💪 首先Docker由三大部分组成 Clients:客户端 通过docker的客户端操作命令,然后命令发送到daemon(守护进程)里面去执行操作 Hosts:主机 主机包括俩个部分,分别是 local host 和 remote host ,意思是本机和远程的机器。 而在local host这个部分里面

    2024年02月13日
    浏览(44)
  • docker常用命令之帮助启动类命令和镜像命令

    docker安装之后,启动时会报如下错误: Job for docker.service failed because start of the service was attempted too often. See \\\"systemctl status docker.service\\\" and \\\"journalctl -xe\\\" for details. To force a start use \\\"systemctl reset-failed docker.service\\\" followed by \\\"systemctl start docker.service\\\" again. 根据这篇博客来修改:https://b

    2024年02月03日
    浏览(53)
  • Docker 常用【基础|镜像】命令

    Centos7 下载|安装|配置|卸载 Docker:https://liush.blog.csdn.net/article/details/129664121 一、基础命令 docker version # 查看docker版本信息 docker info # 查看docker及环境信息 docker help # 查看帮助文档 docker images  # 列出本地主机上的镜像 docker search [options] 某个XXX镜像名字   # 搜索镜像  一般在d

    2024年02月06日
    浏览(38)
  • 三、Docker 常用命令

    docker --version docker info docker --help     安装wget   Linux wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器。如果我们使用虚拟主机,处理这样的事务我们只能先从远程

    2024年02月05日
    浏览(9)
  • docker 的常用命令详解

    Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。下面是 Docker 的常用命令详解。 1. 镜像操作 docker images :列出

    2024年02月20日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包