您当前的位置:首页 > 电脑百科 > 程序开发 > 容器

如何使用windows版Docker

时间:2019-09-04 13:58:25  来源:  作者:
如何使用windows版Docker

 

1、前提准备

首先请确认你的电脑是 windows10 专业版或企业版,只有这只有这两个版本才带有 hyperv。

2、介绍

以往我们如果想要在 windows 上使用 Docker,都是使用 virual box 来创建虚拟机,自从 windows10 发布以来,微软宣布了一系列的 linux 软件登陆 windows,其中就包括了 docker,现在我们可以使用 windows 自带的 hyper-v 虚拟机来创建运行 docker 服务。

InteliiJ Idea 作为目前最实用的 IDE 对 Docker 也提供了支持。

3、安装 Docker for windows

3.1 从官网下载 docker for windows,https://store.docker.com/editions/community/docker-ce-desktop-windows,下载完毕后进入安装界面, docker 会自动安装,界面一闪而过,电脑运行速度还不错,安装完成之后,docker 会弹个窗告诉你 hyper-v 未开启,像这样。

如何使用windows版Docker

 

不过如果你现在点击 OK 基本上是没有用的,得先去 BIOS 里打开硬件虚拟化,本机是惠普的机器,开启点按 f10 进入 bios,其他品牌的机器自行搜索进入,像这样

如何使用windows版Docker

 

重启电脑后 docker 会自动运行,依然弹出上面那个 hyper-v 未开启的窗口,这回可以点击 OK 让 docker 来帮你开启 hyper-v,或者是自己在控制面板 - 程序 - 程序和功能 - 启用或关闭 windows 功能里开启 hyper-v

如何使用windows版Docker

 

到此,我们的 docker for windows 已经安装完成。在命令行中输入 docker --version 可以查看已经安装的 docker 版本

如何使用windows版Docker

 

3.2 使用 docker 中的镜像

3.2.1 先用官方镜像作个示例

使用 docker search来搜索对应的镜像

如何使用windows版Docker

 

然后使用 docker pull <镜像名: tag> 例如 docker pull Nginx:latest ,tag 不输入是默认拉取最新的 

如何使用windows版Docker

 

当镜像下载玩之后我们通过 docker images 命令来查看所有本地的镜像

如何使用windows版Docker

 

我这里下载了 JAVA 以及 nginx 的镜像 其中还有我已经打包好的 spring cloud 的 eureka 注册中心的镜像

使用 docker run 命令来运行镜像,我这里运行 nginx 的镜像

如何使用windows版Docker

 

使用 docker 运行 nginx 成功后访问 localhost:80 就可以访问到 nginx 的主页,说明我们已经在 docker 运行了我们的第一个镜像,虽然是官方镜像,但心里的成就感还是不低的。

如何使用windows版Docker

 

好的,在运行了第一个镜像之后,我们要开始在 IntelliJ IDEA 中使用 docker 并构建我们的第一个 spring boot 程序放到 docker 中去运行

4、IDEA 的准备工作

1:Docker 插件,首先需要在你的 IDEA 中安装 Docker 插件,定位到 File-Setting-Plugins 后搜索 Docker Integration 安装。

2:配置 Docker 服务器,在 IDEA 中定位到 File-Setting-build,Execution,Deployment-Dockers

如何使用windows版Docker

 

如果你没用使用 Docker machine 来管理虚拟机的需求的话, 我们使用默认的 Docker 守护进程就 OK 了,不过在此之前我们还需要设置一下 docker

如何使用windows版Docker

 


如何使用windows版Docker

 

将 docker 与本地的连接设置为不需要 TLS 加密。

在完成这一步之后,可以在 IDEA 的配置窗口看到成功连接到了本机上的 docker

如何使用windows版Docker

 

到这里,我们已经完成对 docker 的配置,接下来就可以进入真正的实施阶段。

5、创建 spring cloud 项目

1. 首先在 Idea 中创建一个 spring boot 项目,怎么创建在此就不再赘述了

创建完成之后,我们在 pom.xml 中添加依赖项

如何使用windows版Docker

 

本地编写的是 spring cloud 的注册中心项目,所以还需要加上

如何使用windows版Docker

 

spring 的版本需要与 spring cloud 的版本号对应,详细的对应信息可以去 http://projects.spring.io/spring-cloud / 查看

由于本次只是简单地示范如何在 IDEA 中部署 spring boot 项目到 docker 中,所以在项目中只需要对 eureka 注册中心进行简单的配置就 OK 了,

在启动类中加上注解标明这是一个 eureka 注册中心的项目

如何使用windows版Docker

 

在配置文件中配置端口

如何使用windows版Docker

 

然后我们就完成了项目的编写,可以先启动看看项目是否能够启动,启动之后我们访问 http://localhost:8761/ , 可以看到我们的 eureka 注册中心已经启动,项目编写没有问题

如何使用windows版Docker

 

接下来就到了如何把项目部署到 docker 中去的问题了

6、将项目部署到 Docker 中

首先我们需要编写 Dockerfile 文件,在 src-main 目录下新建 docker 文件夹,然后在其中新建 Dockerfile 文件

文件内容如下

如何使用windows版Docker

 

其中红框的地方是本项目打包之后的 jar 包名字,默认是 artifactId-version.jar, 同时我们可以看到在左上叫有个运行的标记,很对,这个就是用来在 IDEA 构建 jar 包到镜像,然后放到 Docker 中运行的按钮, 不过我们还是需要先配置一下

如何使用windows版Docker

 

我们先配置镜像名称以及容器名称

如何使用windows版Docker

 

然后需要对 docker 容器需要映射的端口号进行配置

如何使用windows版Docker

 

然后我们点击 run, 可以看到,很快就报错了,这是由于 DockerFile 与我们生成的 jar 包不在同一个文件夹造成的。

如何使用windows版Docker

 

为了解决这个问题,我找到了两种方案:

方案 1:先使用 maven 命令

mvn clean package

对项目进行打包,命令执行完毕之后可以在 target 目录下看到已经打包完成的 jar 包

如何使用windows版Docker

 

然后把 jar 包放到 Dockerfile 所在的目录下,像这样

如何使用windows版Docker

 

然后接着点击 Dockerfile 中的运行,

如何使用windows版Docker

 

在 Deploylog 窗口中,可以看到,这次构建镜像就成功了, 在 log 窗口中可以看到我们的项目在运行过程中打出的日志信息

如何使用windows版Docker

 

很明显,这次的构建和部署都成功了, 访问 http://localhost:8761/,出现了我们想要看到的东西。

如何使用windows版Docker

 

在命令行中使用 docker ps 命令查看正在运行的容器信息

如何使用windows版Docker

 

可以看到,我们在 IDEA 中编写的项目已经运行到了 docker 中。

方案 2:使用 docker-maven-plugin 插件,在 pom.xml 中配置插件

如何使用windows版Docker

 

然后在 ternimal 中运行 mvn clean package -DskipTests=true docker:build 命令,打包项目并构建镜像,命令执行完毕可以看到

如何使用windows版Docker

 

在 docker 窗口下,我们构建的镜像已经出现在窗口中了

如何使用windows版Docker

 

右键点击创建一个新的容器

如何使用windows版Docker

 

跳转到我们的部署配置里面,只需要像方案 1 中的一样进行配置完毕后点击 run 就 OK 了, 访问 http://localhost:8761/,同样可以看到我们的 eureka 的运行信息。docker ps 命令也显示我们的容器已经运行起来。

如何使用windows版Docker

 

好的,到这里我们先是在安装了 windows 版的 docker, 然后使用 IDEA 创建了一个 spring cloud 项目,并在 IDEA 中将此项目部署到了 docker 中.


本文转载至微信公众号——java思维导图,如有侵权请联系立删!



Tags:Docker   点击:()  评论:()
声明:本站部分内容来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除,谢谢。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
Docker常用命令集合给大家介绍一些常用的Docker命令,对你有帮助的同学建议收藏作为一个查询手册哦。Docker容器的一些命令按功能分类大致如下:Docker环境信息 info、version...【详细内容】
2020-07-08   Docker  点击:(0)  评论:(0)  加入收藏
有时候docker 镜像仓库中下载的镜像并不能满足我们的需求时,我们需要基于现有的镜像进行更改,构建符合自己的镜像构建自己镜像的方式有两种: 一、从已经创建的容器中更新镜...【详细内容】
2020-07-07   Docker  点击:(0)  评论:(0)  加入收藏
1 前言从没想到Docker也有可视化的工具,因为它的命令还是非常清晰简单的。无聊搜了一下,原来已经有很多Docker可视化工具了。如DockerUI、Shipyard、Rancher、Portainer等。查...【详细内容】
2020-07-07   Docker  点击:(0)  评论:(0)  加入收藏
部署服务失败时报错信息:network with name XXX already exists。出现这样情况的原因是docker容器已经未被使用或已不存在但其网络还存在,当你再用同样的服务名字命名当前部署...【详细内容】
2020-07-02   Docker  点击:(2)  评论:(0)  加入收藏
通过VS Code和Docker扩展成为Docker高级用户。> Photo by Michał Parzuchowski on Unsplash 您可以使用选择的语言来实施服务。 现在,您想将其容器化并在本地对其进行测试,然...【详细内容】
2020-07-01   Docker  点击:(0)  评论:(0)  加入收藏
一、功能说明容器在当今的云计算中极为重要,是构建微服务的重要组成部分。而一个微服务如果由多个容器,比如nginx+php+mysql,单个容器分开管理会非常麻烦 。目前华为云、阿里...【详细内容】
2020-06-19   Docker  点击:(0)  评论:(0)  加入收藏
Docker是一个用于开发、交付、运行应用程序的开放平台。利用Docker可以快速交付,测试和部署代码。所以值得我们学习下。...【详细内容】
2020-06-12   Docker  点击:(0)  评论:(0)  加入收藏
日志是服务运行过程中的一个关键环节,借助日志,我们可以排查定位问题,也可以借助集中化的日志管理平台(如ELK)来做一些必要的数据统计分析。在Docker环境中,日志的采集比传统环境...【详细内容】
2020-06-07   Docker  点击:(0)  评论:(0)  加入收藏
1.软件包下载Docker下载地址:https://hub.docker.com/u/kubeguideKubernetes下载地址:https://github.com/kubernetes/kubernetes/releases2.准备环境首先,我们开始准备Kuberne...【详细内容】
2020-05-22   Docker  点击:(13)  评论:(0)  加入收藏
首先,Win10安装官方提供的桌面版 或者 系统(3.8以上内核的linux)中安装好 Docker 程序。#Docker-desktop下载地址https://hub.docker.com/editions/community/docker-ce-deskto...【详细内容】
2020-05-19   Docker  点击:(3)  评论:(0)  加入收藏
今天为什么要教大家并分享关于Docker环境搭建的内容呢?因为万丈高楼平地起大家都知道,Docker环境搭建不管在开发领域或者测试领域都应用非常广泛,因为Docker环境可以实现软件虚...【详细内容】
2020-05-17   Docker  点击:(4)  评论:(0)  加入收藏
作者 | 于先森2017责编 | 伍杏玲出品 | CSDN博客最近公司新接到一个项目,惯例是通过技术架构、业务需求、用户量还有以往的经验大概评估出一份资源配置表格提供给客户,让客户...【详细内容】
2020-05-07   Docker  点击:(2)  评论:(0)  加入收藏
概述之前都是使用命令行进行Docker的管理,这里简单介绍一下Docker的图形界面管理。之所以说简单介绍,是因为在生产环境都是集群,很少使用图形界面管理单台Docker主机,所以就演示...【详细内容】
2020-05-06   Docker  点击:(5)  评论:(0)  加入收藏
前言刚买了一个mac本, 决定搭建一个纯docker的开发环境, 说到做到, 开始踩坑.搭建在搭建环境的过程中, 经历了很多错误, 例如为了令两个docker环境可以互通(如: nginx和php-...【详细内容】
2020-05-03   Docker  点击:(2)  评论:(0)  加入收藏
近2年Docker非常的火热,各位开发者恨不得把所有的应用、软件都部署在Docker容器中,但是您确定也要把数据库也部署的容器中吗?这个问题不是子虚乌有,因为在网上能够找到很多各种...【详细内容】
2020-05-02   Docker  点击:(12)  评论:(0)  加入收藏
1. 前言如果您在Ubuntu上运行Docker,但被提示Permission Denied(权限拒绝),应该处理?本教程将对此问题提出解决方法。最近,我在Ubuntu上安装了Docker,安装是非常简单。但当我试图...【详细内容】
2020-05-02   Docker  点击:(3)  评论:(0)  加入收藏
镜像简介它是一个创建Docker 容器的只读模板,通过DockerFile可以自定义镜像。它也是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些...【详细内容】
2020-04-27   Docker  点击:(7)  评论:(0)  加入收藏
docker 镜像操作常用命令(1)、搜索镜像(在dockerhub仓库中查找centos的镜像)[root@localhost docker]#docker search centos找出一堆centos镜像 镜像的结构: registry_name/r...【详细内容】
2020-04-26   Docker  点击:(8)  评论:(0)  加入收藏
Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。...【详细内容】
2020-04-19   Docker  点击:(5)  评论:(0)  加入收藏
学习Docker的过程就是安装各种镜像、环境搭建的过程。下面是常用Docker公共镜像的安装方式,记录下来,环境收藏~ 一、安装Mysql1.创建mysql下载镜像:docker pull centos/mysql-5...【详细内容】
2020-04-12   Docker  点击:(0)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条