在正式使用Docker之前,我们先来熟悉下Docker中常用的命令,因为对Docker的操作就如同操作Linux一样,大部分操作通过命令完成。

  一、登录

  为什么要使用登录?

  因为我们使用Docker,其实主要使用镜像从而运行容器。那么镜像可以通过仓库获得,因为仓库是集中存放镜像的地方。有的仓库是公开的,可以直接通过公开仓库获得镜像,有的是私有仓库,那么此时就需要通过登录仓库从而获得镜像。

  如果想通过公开仓库获得镜像可以不用登录这一步,直接拉取镜像;如果想拉取私有仓库里的镜像则需要登录。

  我们获得私有镜像可以通过登录官方仓库(Docker Hub),也可以登录第三方仓库获取,如阿里云或腾讯云。

  如果要使用官方Docker Hub,则需要到官方地址去注册一个Docker Hub的个人账号,官方地址:https://hub.docker.com/

  1、登录到Dokcer Hub命令:

  docker login --username hapgaoyi

  语法:docker login --username  [用户名]

  输入命令后回车则会提示让你输入密码,密码如果正确,则提示Login Succeeded,如图:

  

  2、登录到阿里云镜像仓库命令:

  docker login --username=hapgaoyi mtlxrshz.mirror.aliyuncs.com。如图:

  

  如果想通过命令直接把密码带上则可以加一个“--password“的参数来指定密码。

  登录是为了可以拉取私有镜像,如果不需要拉取私有镜像,只想拉取公开镜像则可以忽略登录这一步。

  二、拉取镜像

  命令:

  docker pull [镜像名称]:[镜像标签]

  如果不带镜像标签则表示拉取最新版本的镜像,如:

  docker pull [镜像名称]

  还有一种写法是:

  docker image pull [镜像名称]:[镜像标签]

  在这里,我们拉取一下Redis的镜像。

  如:

  docker pull redis

  

  上图显示,使用默认的最新的一个Redis镜像。

  拉取了镜像之后,我们可以再来看下Docker里有哪些镜像。

  三、查看本地镜像

  命令:

  docker image ls

  如图:

  

  有了镜像之后,我们再来运行镜像,这里以Redis 为例。

  四、创建容器(运行镜像)

  命令:

  docker run [参数] [镜像名称]

  这个命令表示运行一个镜像,如果本地不存在这个镜像,Docker会自动拉取镜像并运行,同时创建了一个容器。

  docker run  --name redis -p 6379:639 redis

  这里表示运行Redis镜像,同时为容器起一个名称叫redis,--name参数表示为容器起一个名字。-p 6379:6379表示指定容器访问端口,第一个6379是提供给对外访问的端口,第二个6379是基于docker容器内部端口。这里两个端口设置一样,当然,可以不同;如果我们要在自己的电脑访问docker上的redis服务的话,可以用第一个端口6379。

  也可以用更简单的命令创建Redis容器,如 docker run redis。

  创建Redis容器后,我们可以查看正在运行的容器。

  五、查看容器

  查看正在运行的容器命令:

  docker ps

  如图:

  

  查看所有的容器(包括正在运行的和已经停止了的):

  docker ps -a

  

   既然Redis容器已经运行,我们可以在本机测试下,这里提供两种方式:

  1、下载一个Redis客户端工具,我们这里使用Redis Desktop Manager工具

  如图:

  

  点击确定后:

  

  成功访问!

  2、使用Docker exec命令进入Redis 容器

  docker exec -it redis  /bin/bash

  如图:

  

  进入Redis容器后,启用Redis客户端如:

  redis-cli

  

  开始使用:

  

  六、停止容器并删除

  如果我们不想使用某个容器,比如上面的Redis容器,我们可以停掉,如:

  docker stop redis

  

  如果我们想再次使用Redis容器,可以直接使用如下命令启动容器无需重复使用docker run命令。

  如:

  docker start redis

  

  如果我们想要删除不用的容器可以用以下命令:

  docker rm redis

  如果容器正在运行,我们需要停掉在删除,如果我们需要强制删除容器可以用下面的命令:

  docker rm redis --force

  上面的redis均表示容器名称,不是镜像名称。

  七、删除镜像

  如果我们觉得某些镜像以后不会用到,我们可以将它删除,如:

  docker rmi redis

  表示删除redis镜像

  清理未使用的镜像:

  docker system prune

  八、查看Docker镜像、容器、本地卷等空间使用情况

  docker system df

  

  如果想看详情的空间占用情况可以用

  docker system df -v

  好了,今天的介绍就到这了,后续我们继续小试牛刀演示在docker中运行mysql镜像和rabbitmq镜像等实例。

  

  

  

Docker初探之常用命令的更多相关文章

  1. Docker 入门指南——常用命令

    前面已经介绍了 Docker 的安装方式,本文总结一下使用 Docker 的基本概念和常用命令. 基本概念 镜像 Image 镜像是一些打包好的已有的环境,可以被用来启动和创建容器 容器 Contai ...

  2. docker 安装与常用命令与常用容器(containers)环境

    注意区别 container 与 image 的关系,container 的建立需要 image 的承载,也即 container 依赖 image,停止并删除了 container 并不会删除 im ...

  3. Docker系列之常用命令操作手册

    目录 1.安装虚拟机 2.安装Docker 3.Docker镜像操作 4.Docker容器操作 Docker系列之常用命令操作手册 继上一篇博客Docker系列之原理简单介绍之后,本博客对常用的Doc ...

  4. Docker基础和常用命令

    Docker基础和常用命令 一,Docker 简介 1.1,什么是 Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,nam ...

  5. Docker入门之常用命令

    写在前面 细数当前最流行的技术莫过于容器化和人工智能了,而容器化技术能有今天的热度,Docker可谓功不可没. 让我们一起来回顾一下Docker 是什么? 是一种虚拟化技术 能够将应用程序自动部署到容 ...

  6. Docker三剑客之常用命令

    一.docker-machine 命令 说明 docker-machine create 创建一个 Docker 主机(常用-d virtualbox) docker-machine ls 查看所有的 ...

  7. Docker安装和常用命令

    Docker安装 Docker的安装可以参考 https://docs.docker.com/ 下面的 Get Docker / Docker CE / Linux, 需要关注的主要是CentOS和U ...

  8. Docker笔记:常用命令汇总

    Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...

  9. Docker 安装与常用命令介绍

    docker的镜像文件作用就是:提供container运行的文件系统层级关系(基于AUFS实现),所依赖的库文件.已经配置文件等等. 安装docker yum install -y docker 启动 ...

随机推荐

  1. java 数据结构(七):Collection接口

    1.单列集合框架结构|----Collection接口:单列集合,用来存储一个一个的对象* |----List接口:存储序的.可重复的数据. -->“动态”数组* |----ArrayList. ...

  2. Java常用类-Object类

    一.java.lang.Object类 1.Object类是所有Java类的根父类 2.如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 3.Obj ...

  3. [C++面向对象]-C++成员函数和非成员函数

    大纲: 1.成员函数和非成员函数 2.详细解释 3.总结 4.参考   1.成员函数和非成员函数   其实简单来说成员函数是在类中定义的函数,而非成员函数就是普通函数,即不在类中定义的函数,其中非成员 ...

  4. MYSQL JSON字段操作

    create CREATE TABLE t_test ( salary_data json NULL COMMENT 'JSON类型字段' ); -- insert INSERT INTO t_tes ...

  5. Ethical Hacking - GAINING ACCESS(6)

    Server Side Attack Analysing scan results and exploiting target system. Go to the Analysis page and ...

  6. Python 简明教程 --- 23,Python 异常处理

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 要么做第一个,要么做最好的一个. 目录 我们在编写程序时,总会不自觉的出现一些错误,比如逻辑错误,语 ...

  7. echarts 实战 : 怎么处理特殊的图表数字 label ?

    所谓Label,就是在图表上面显示的那个数字. 但有的时候我们需要柱状图堆叠. 那如果我们需要所有数字都在外面,并且以 320/210/310/410/1320 这样的形式显示呢? 那么 echart ...

  8. python-多任务编程05-协程(coroutine)

    协程是python个中另外一种实现多任务的方式,只不过比线程更小占用更小执行单元(理解为需要的资源). 为啥说它是一个执行单元,因为它自带CPU上下文.这样只要在合适的时机, 我们可以把一个协程 切换 ...

  9. vue学习(五) 访问vue内部元素或者方法

    //html <div id="app"> <input type="button" value="ok" v-bind: ...

  10. BUUCTF-web Easyweb

    从这道题学到了挺多 一打开题目就是登陆页面,遂扫描文件检测是否存在文件泄露 用dirsearch扫出了robots.txt,.DS_Store和其他php.DS_Store没有可用信息(buuoj的题 ...