1

在Windows下开发,安装软件不像Linux那样方便,常常还没开始写代码,搭建环境就已经耗费了半天了。
这个时候使用Docker来快速搭建一套开发环境,比如MySQL、Redis、MongoDB等等,还是很方便的,能够节省大量开发前准备的工作,提高效率。
下面介绍能够基本满足这个需求的Docker的最基础使用。

1. 安装

首先到Docker官网(需要注册)下载Docker Community Edition for Windows
然后安装,安装成后,docker会自动启动,右下角会有个鲸鱼的图标
打开cmd或者powershell,执行

docker version

正常情况会输出docker的client和server的版本及其他信息

2. 配置镜像仓库地址

这一步不是必须的
由于网络原因从官方镜像仓库拉取太慢,所以配置国内镜像仓库地址

  1. 对右下角鲸鱼图标右键 - Setting - Deamons
  2. 在Registry mirrors中添加Docker中国官方镜像加速地址https://registry.docker-cn.com
  3. 点击Apply,Docker服务会重启,完成后就生效了

3. 使用

3.1 查询/拉取镜像

命令: docker search|pull image-name[:image-version]
以Elasticsearch为例:

# 查询镜像
docker search elasticsearch
# 拉取镜像
docker pull elasticsearch:2.4.6
如果不指定版本,则使用默认版本号release,拉取最新版本

3.2 运行容器

命令: docker run [OPTIONS] image-name[:image-version]
docker run 命令有很多参数,这里只介绍最多用到的几个,以elasticsearch为例:

docker run -d -p 9200:9200 --name es elasticsearch:2.4.6

-d:表示以deamon模式运行
-p:指定端口映射,前面的是外部访问端口,后面的是容器内部的端口
--name:指定容器的名称,不指定的话,docker会随机生成一个名称

3.3 查看容器列表

命令: docker ps [-a]
docker ps 会列出当前正在运行的容器
加上 -a 参数会列出所有的容器

3.4 启动/停止容器

命令: docker start|stop container-name|container-id

# 先停止es
docker stop es
# 再启动es
docker start es

3.5 操作容器

有时候需要对容器进行一些简单修改,可以通过docker exec命令来实现
docker exec -i -t container-name|container-id command
例如给上面的es容器安装head插件:

docker exec -it es /bin/bash
# 执行命令后,会进入容器,并打开bash命令行
# 进入elasticsearch安装目录
$ cd /usr/share/elasticsearch
# 安装head插件
$ ./bin/plugin install mobz/elasticsearch-head
# 等待安装完成,退出容器
$ exit
# 重启容器
docker restart es

-i:以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪终端,通常与 -i 同时使用

3.6 查看容器日志

命令:docker logs [-f] container-name|container-id

docker logs -f es

-f:相当于 tail -f

3.7 删除容器

命令: docker rm [-f] container-name|container-id

docker rm es

-f:如果容器正在运行,是无法直接删除的,要么先停止容器,要么加 -f 强制删除

注意: 删除容器是不可逆的,会导致容器中的数据丢失
最好的办法是通过挂载外部目录,把数据保存在宿主机器上

3.8 镜像管理

查看本地镜像列表: docker images
删除本地镜像: docker rmi iamge-name|image-id


Shawn
56 声望3 粉丝