Docker系统有两个程序:docker服务端和docker客户端。其中docker服务端是一个服务进程,管理着所有的容器。docker客户端则扮演着docker服务端的远程控制器,可以用来控制docker的服务端进程。大部分情况下,docker服务端和客户端运行在一台机器上。

1、安装docker,在centos中直接yum安装

#yum install -y docker

可以用docker version查看安装的版本信息。如果没启动docker,就只能看到客户端的版本信息,在启动之后能看到客户端和服务端的版本信息。

  图片1.png

2、镜像管理

docker images:列出本地所有镜像

docker search <IMAGE_ID/NAME>:查找要安装的image

docker pull <IMAGE_ID>:下载要安装的image

docker push <IMAGE_ID>:上传image

docker rmi <IMAGE_ID>:删除image

下面以安装rabbitmq为例:

1、可以先用docker images列出docker里的所有镜像,由于是新安装的docker,所以列表是空的。

  图片2.png 

2、查找rabbitmq镜像文件

#docker search rabbitmq

图片3.png

3、下载rabbitmq镜像

为了快速下载镜像,先创建一个daemon.json文件,文件内容如下:

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://83xtzno0.mirror.aliyuncs.com "]
}
EOF
systemctl daemon-reload
systemctl restart docker

 

#docker pull rabbitmq 下载镜像

  图片4.png

4、docker中运行rabbitmq,并新建rabbitmq登录界面的用户名和密码。

#docker run -d --hostname rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=rabbitadmin -e RABBITMQ_DEFAULT_PASS=rabbitpwd -p 15672:15672 rabbitmq:3-management

说明:

-d:以守护进程方式在后台运行

--hostname:设置容器的主机名,仅本机可见。这种方式是写到/etc/hostname ,以及/etc/hosts 文件中,作为容器主机IP的别名,并且将显示在容器的bash中。不过这种方式设置的主机名将不容易被容器之外可见。这将不会出现在 docker ps 或者 其他的容器的/etc/hosts 文件中。

--name:指定容器名

-p指定服务运行的端口。

  图片5.png

5、查看镜像是否启动,使用docker ps命令可以查看所有正在运行中的容器列表,使用docker inspect命令我们可以查看更详细的关于某一个容器的信息。

  图片6.png

6、在启动容器之后,可以用以下命令管理

docker stop rabbit(容器名,就是在开始运行时指定的name):停止rabbitmq
docker start rabbit:重新启动rabbitmq

docker ps -l:显示最后启动的容器

docker ps  -a:同时显示停止的容器,默认只显示启动状态

docker exec -it rabbit1 /bin/bash: 连接到容器进行操作(-t:为容器分配 一个伪终端;-i:进行交互式的标准输入)

7、登录测试http://docker ip:15672/

       图片7.png


图片8.png