Docker安装及常用命令

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

一、Doker 安装

  1、安装路径(mac版)

  https://docs.docker.com/desktop/mac/install

  2、下载安装(点击红色标记下载)

   3、配置镜像加速器(国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。)完成镜像加速的配置就可以简单的使用了

    · 点击->小鲸鱼->首选项(Preferences)->Docker Engine(此处我用的是网易镜像:https://hub-mirror.c.163.com/)

  

二、常用命令(以下命令以mysql镜像为例)

  1、查看基本配置信息

  docker info

  2、查看所有命令(帮助)

  docker或docker -H

  3、查找镜像【可以理解为中间件/插件】在docker Hub 上查找镜像

  docker search 镜像名(例如:mysql)

  4、拉取【下载】镜像(在docker Hub 上拉取镜像)

  docker pull 镜像(例如:mysql)
  镜像后可以跟版本号,如果没有版本号默认拉取最后版本,例如
  docker pull mysql:8.0.1

  5、查看镜像(已安装镜像)

  docker images

  6、删除镜像(本地镜像)

  docker rmi 镜像名

  7、新建容器

    1、方法一(此方法新建容器,容器名称是随机的)—— 新建完成默认启动

  docker run -it(d) 镜像名 /bin/bash
  例如
  docker run -it(d) mysql /bin/bash

    2、方法二(此方法新建容器,可以自定义容器名)—— 新建完成默认启动

  docker run -it(d) --name 容器名 mysql /bin/bash
  例如
  docker run -it(d) --name mysql_test mysql /bin/bash

   3、方法三(此方法也是映射端口)—— 新建完成默认不会启动容器,不知道是不是mysql镜像(其他镜像没有试)的原因,此方法建的容器启动不了

  随机生成一个容器名
  docker run -it(d) p 3000:3001 镜像名
  例如
  docker run -it(d) p 3000:3001 mysql
  自定义容器名
  docker run -it(d) --name 容器名 -p 3000:3001 镜像名
  例如
  docker run -it(d) --name mysql_test -p 3000:3001 mysql
  
  其中:(-p也可以写成-P)
  -p(小写):自定义接口,可以绑定指定ip 例如 -p 127.0.0.1 3000:3001
  -P(大写):随机接口
  3000: 向外部暴露端口(访问时使用)
  3001: 容器端口

  注释:对于命令中的-itd 来说,-itd可以分开写(-i -t -d)其中 -i:交互式操作 -t:开启一个伪终端 -d:不进入伪终端。如果想进入的话利用docker exec,如果想退出伪终端则用exit

  8、进入伪终端 

  docker exec -it 容器名或容器ID /bin/bash

  9、以mysql镜像,生成容器并开启(类似于命令7中的方法三

docker run -itd --name mysql_test -p 3000:3001 -e MYSQL_ROOT_PASSWORD=123456 mysql
对于mysql来说利用该命令新建并启动容器的话必须加 -e MYSQL_ROOT_PASSWORD=123456(可能是mysql安全性的特殊要求)

  10、开启容器

  docker start 容器名或容器ID
  例如
  docker start mysql_test

  11、关闭容器

  docker stop 容器名或容器ID

  12、删除容器

  该命令只能删除已经停用的容器
  docker rm 容器名或容器ID
  该命令可以删除正在运行的容器
  docker rm -f 容器名或容器ID

  13、查看容器

  该命令查看正在运行的容器
  docker ps 
  该命令查看所以容器
  docker ps -a

 

原文地址:https://www.cnblogs.com/little-baby/p/15195084.html