一、docker安装

  1、CentOS Docker安装

    安装命令如下:

    curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

    也可以使用国内 daocloud 一键安装命令:

    curl -sSL https://get.daocloud.io/docker | sh

  2、其它系统的安装

    由于本人使用的CentOS,所以其它系统的安装不再说明,可以参考教程,https://www.runoob.com/docker/centos-docker-install.html

二、docker命令

  1、docker run :创建一个新的容器并运行一个命令,其中IMAGE就是镜像,镜像与容器的关系简单的来说镜像就像是一个没有安装的软件包,一个镜像可以产生多个容器(运行或者创建多次),但是每个容器的名字和Id都不能相同。

  语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  实例:docker run -it -d --name mysql -p3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql,执行成功后如下图,会出现mysql的标识符

  实例说明:-it 是指定容器以交互模式运行,并且为容器分配一个伪终端,可以在终端中执行mysql的一些命令 --name 是容器名称 -p指定主机端口

   OPTIONS说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

  • -d: 后台运行容器,并返回容器ID;

  • -i: 以交互模式运行容器,通常与 -t 同时使用;

  • -P: 随机端口映射,容器内部端口随机映射到主机的端口

  • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口

  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

  • --name="nginx-lb": 为容器指定一个名称;

  • --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

  • --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

  • -h "mars": 指定容器的hostname;

  • -e username="ritchie": 设置环境变量;

  • --env-file=[]: 从指定文件读入环境变量;

  • --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

  • -m :设置容器使用内存最大值;

  • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container:<name|id> 四种类型;

  • --link=[]: 添加链接到另一个容器;

  • --expose=[]: 开放一个端口或一组端口;

  • --volume , -v: 绑定一个卷

  2、Docker start/stop/restart 命令 :启动/停止/重启容器

   实例:docker start mysql

  3、docker kill  杀掉一个运行中的容器。不删除数据

   实例:docker kill -s KILL mynginx

  OPTIONS说明:-s:指定发送的信号,默认为“KILL”

  4、docker rm 删除一个或多个容器。会删除数据

   实例:docker rm -f db01 db02   强制删除容器名称为 db01、db02的容器

  OPTIONS说明:

  • -f :通过 SIGKILL 信号强制删除一个运行中的容器。

  • -l :移除容器间的网络连接,而非容器本身。

  • -v :删除与容器关联的卷。

  5、docker pause/unpause 暂停或者恢复容器中所有进程

   实例:docker pause db01 暂停容器 db01中的所有进程

  6、docker create 创建一个新的容器但不启动它,语法同docker run

   实例:docker create --name mysqltest mysql:latest  创建mysql容器并且命名为mysqltest

  7、docker exec  在运行的容器中执行命令

   实例:docker  exec  -it  de4ab36b1b59  bash    de4ab36b1b59是容器Id,运行容器,并且分配一个伪终端,接下来就可以输入运行的容器命令,输入exit可退出伪终端

  OPTIONS说明:

  • -d :分离模式: 在后台运行

  • -i :即使没有附加也保持STDIN 打开

  • -t :分配一个伪终端

  8、docker inspect  获取容器/镜像的元数据。

   实例:docker inspect mysql  获取镜像mysql的元信息。 运行结果如下:

  OPTIONS说明:

  • -f :指定返回值的模板文件。

  • -s :显示总的文件大小。

  • --type :为指定类型返回JSON。

  9、docker top   查看容器中运行的进程信息,支持 ps 命令参数。

   实例:for i in `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i; done 查看所有运行容器的进程信息

   实例:docker top mysql-test 查看容器名称 为mysql-test容器的进程信息

  

  10、docker attach  连接到正在运行中的容器

   实例:docker attach --sig-proxy=false mynginx   容器mynginx将访问日志指到标准输出,连接到容器查看访问信息。

  11、docker event  从服务器获取实时事件

  实例:docker events --since="1467302400"  查看 2016年7月1日后的所有事件。  --since是指定的时间戳

   实例:docker events -f "image"="mysql" --since="1467302400"   显示docker 镜像为mysql 2016年7月1日后的相关事件。

  OPTIONS说明:

  • -f :根据条件过滤事件;

  • --since :从指定的时间戳后显示所有事件;

  • --until :流水时间显示到指定的时间为止;

  12、docker logs  获取容器的日志

   实例:docker logs -f mysql-test  跟踪查看容器mysql 的日志输出。 其中mysql-test是容器名称

  OPTIONS说明:

  • -f : 跟踪日志输出

  • --since :显示某个开始时间的所有日志

  • -t : 显示时间戳

  • --tail :仅列出最新N条容器日志

  13、docker wait  阻塞运行直到容器停止,然后打印出它的退出代码。

   实例:docker  wait  de4ab36b1b59  de4ab36b1b59是容器Id

  14、docker export  将文件系统作为一个tar归档文件导出到STDOUT。

   实例:docker export -o mysql-`date +%Y%m%d`.tar de4ab36b1b59

       ls mysql-`date +%Y%m%d`.tar    列出以mysql-日期.tar文件

       mysql-20220622.tar

      其中de4ab36b1b59  是容器Id

  OPTIONS说明:
    -o :将输入内容写到文件。

  15、docker port 列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。

   实例: docker port mysql-test   查看容器名为mysql-test的端口映射情况。

笔记-docker学习-1的更多相关文章

  1. Docker学习笔记 — 配置国内免费registry mirror

    Docker学习笔记 — 配置国内免费registry mirror Docker学习笔记 — 配置国内免费registry mirror

  2. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

  3. Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

    Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...

  4. docker~学习笔记索引

    回到占占推荐博客索引 使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017 ...

  5. Docker学习笔记 - Docker容器内部署redis

    Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...

  6. docker学习笔记(一)—— ubuntu16.04下安装docker

    docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...

  7. Docker学习笔记总结

    Docker学习笔记 https://yeasy.gitbooks.io/docker_practice/content/   一 环境搭建 Ubuntu安装 .添加软件源的GPG密钥 curl -f ...

  8. docker学习笔记二:常用命令

    docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...

  9. docker学习笔记-1

    docker学习笔记一:安装 mac安装docker docker官方文档上有这么一段话: Because the Docker daemon uses Linux-specific kernel f ...

  10. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)——基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

随机推荐

  1. SpringBoot3整合SpringSecurity6(三)基于数据库的用户认证

    大家好,我是晓凡. 写在前面 上一篇文章中,我们了解了SpringSecurity怎么基于内存进行用户认证.但这还远远不够,在实际开发中. 用户往往都存在于数据库,所以从这篇文章开始,我们就要开始学习 ...

  2. 遇到的问题之“前端html中div设置边框border属性无效,解决方案”

    一.问题 二.解决方案 这里是漏了border-style属性,少了这个属性就不会显示边框了,加上就有边框了,这里是建议三个属性都要有完整 # 边距样式 border-style: inset;# 边 ...

  3. HarmonyOS NEXT开发实战教程:选择相册和拍照

    今天的内容是介绍在鸿蒙开发中从相册选择照片,和调用相机拍照,并使用这两个功能实现朋友圈编辑页面. 这部分内容没什么好废话的,都是固定用法,直接上代码.首先添加权限: ohos.permission.C ...

  4. C++11 shared_ptr(智能指针)

    在确保new动态分配的内存空间在使用结束之后,释放是一件麻烦事.C++11模板库的头文件中定义的智能指针,即shared_ptr模板,就是用来解决这个问题的. 它是将new运算符返回的指针p交给一个s ...

  5. java.lang.StringIndexOutOfBoundsException: String index out of range: 1

    笔者源码如下: package javaPractice; import java.util.*; public class TestScanner { public static void main ...

  6. Seata源码—9.Seata XA模式的事务处理

    大纲 1.Seata XA分布式事务案例及AT与XA的区别 2.Seata XA分布式事务案例的各模块运行流程 3.Seata使用Spring Boot自动装配简化复杂配置 4.全局事务注解扫描组件的 ...

  7. Web前端入门第 57 问:JavaScript 数据类型与类型转换

    在程序语言中,数据类型是基础,一切程序都是建立在基础数据之上. 如果说程序如同万丈高楼平地起,那么数据类型就像沙.石.钢筋.水泥等等最基础的原料.一样的高楼,不同的人,用相同的原料,造的方法也会有千般 ...

  8. WPF 窗口 触摸失效 的一种场景

    最近,生产线反馈,在执行生产大屏测试软件的时候,软件大概率出现不能触摸,但是可以用鼠标的的情况.刚好 这个软件又是WPF 做的,所以做了以下排查. .Net 环境: .NetFrameWork 4.8 ...

  9. 快来玩玩便捷、高效的Demo练习场

    Demo练习场 Vonajs 提供了一个 Demo 练习场的功能,允许我们非常方便.快捷的对代码做测试,对想法做验证 步骤 简而言之,Demo练习场的使用只需两步:第一步写代码,第二步执行终端命令.具 ...

  10. 巧用指标平台DataIndex,五步法轻松实现指标管理

    开发部门在做指标加工的全流程中,是否经常出现如下问题: · 业务部门看指标数据的时候,看到两个名称相似的指标,不清楚两个指标的差异性,来咨询开发部门指标计算口径,开发部门配合业务部门翻找代码,找出指标 ...