windows10 专业版 (专业版才能支持docker)
安装
-
下载
docker官网: www.docker.com
下载网址:https://www.docker.com/products/docker-desktop
下载需要先注册用户。
由于我的测试环境为win10,因此下载windows版本。
-
安装
执行安装程序,进行安装。
安装过程中会新建账号,可能会被360卫士等安全监测软件阻止。如果出现这种情况,请暂时关闭安全软件或手动允许。
安装完成后,桌面上有Docker Deskop图标。
运行Docker Deskop,如果出现如下提示,请点OK,会启用电脑的虚拟化功能,并自动重启电脑。
image.png
启动后,在桌面任务栏图标中,有一docker图标:
image.png
-
验证安装
进入cmd,输入如下命令,查看docker版本。
docker -v
image.png
Docker命令帮助
-
docker
不带参数的docker可以显示docker命令帮助
docker
image.png
-
docker [command]
# 示例:以下语句可显示image命令的帮助
docker image
Docker常用命令
-
登录docker
docker login
按提示输入用户名/密码即可 。是否登录影响不大,但登录后可以向docker hub上传push映像
-
搜索映像(cmd方式)
# 从docker-hub搜索映像:这里搜索tomcat
docker search tomcat
-
搜索映像(官网)
搜索结果
搜索结果
点击映像,查看可用的TAG (相当于版本)
image.png
-
下载映像
# 从docker-hub下载映像,这里下载的是tomcat最新版
docker pull tomcat
# 从docker-hub下载映像,这里下载的是tomcat 指定的版本
docker pull tomcat:9.0.22-jdk8
-
查看本地映像
docker image ls
# or
docker images
image.png
-
启动容器
-
启动容器:以启动tomcat容器为例
#运行latest版本
docker run tomcat
-
启动容器:指定运行版本
#运行指定TAG的版本
docker run tomcat:9.0.22-jdk8
-
启动容器:端口映射
由于未映射外部访问端口,需要用容器IP及容器端口访问tomcat:http://container-ip:8080
#映射端口
docker run -p 8888:8080 tomcat
- 前一端口(8888)是外部访问端口(在不与其他端口冲突的情况下,也可以与后一端口相同)
- 后一端口(8080)是容器内的端口,即tomcat的访问端口(注意:该端口必须与tomcat配置的端口一致,缺省为8080 。因此,该参数并不是设置tomcat的访问端口,若要设置,需要通过tomcat配置文件修改。)
启动后,可通过http://localhost:8888 或 http://container-ip:8080 访问 tomcat 。
-
启动容器:后台启动 (即在cmd控制台看不到tomcat输出)
-d 表示在后台运行
docker run -d -p 8888:8080 tomcat
# docker run -d -p 9411:9411 openzipkin/zipkin
-
启动容器:启动多个实例
针对同一映像文件,可以启动多个容器实例
在两个CMD容器中,各启动一个tomcat容器实例,
docker run -d -p 8888:8080 tomcat
docker run -d -p 9999:8080 tomcat
然后即 可通过 http://localhost:8888 http://localhost:9999 分别访问这两个实例
-
启动容器:指定容器名称
可以指定容器名称,如下将容器名称指定为tomcat1
docker run -d --name tomcat1 -p 8888:8080 tomcat
-
查看容器
-
查看容器:查看正在运行的容器
docker ps
image.png
-
查看容器:查看所有运行过的容器
docker ps -a
-
停止容器
# 使用容器ID,停止容器实例
docker stop 7437cbaebbb0
# 使用容器NAME,停止容器实例
docker stop tomcat1
-
重启容器实例
使用docker run启动容器,每次均会创建一个新的容器实例。
可以使用docker start启动已停止的实例
# 可以使用容器ID,或容器名称启动容器实例
docker start tomcat1
查看容器运行日志
docker logs -f 容器ID或容器名称
网络相关
-
创建Docker桥接 网络
要实现多个rabbitmq节点远程连接,要求多个节点的网络能连通。
Docker支持多种网络方式,这里使用桥接网络方式。
在桥接方式下,两个容器节点可以互通。
#创建名为net1的桥接网络
docker network create net1
-
启动容器时,加入桥接网络
docker run -d --name tomcat1 -p 8080:8080 --network net1 --network-alias tomcat1 tomcat
docker run -d --name mysql1 -p XXXX:XXXX --network net1 --network-alias mysql1 mysql
--name参数指定了容器名称
-network 参数指定了桥接网络
--network-alias 指定了网络别名(容器之间可以通过网络别名访问)
-
网络及端口验证 (ping / telnet)
安装 ping/telnet命令
docker exec -it tomcat1 /bin/bash
apt-get update
apt-get install iputils-ping
apt-get install telnet
ping/telnet
安装完成后,即可使用 ping 、telnet命令
网友评论