我是这样使用SpringBoot(安装docker)

目录

安装docker

这里是windows8.1的操作系统,相对与window10、Linux等系统中安装会稍复杂些。

docker是什么

docker是什么,专业的回答在百科上有,我就不复制了。我的理解是,docker是一个工具或者称为服务,它可以管理多个的系统镜像,还有一个称为容器的东东,把镜像取过来放到容器中运行。这里的系统镜像实际上linux系统的简化版,把系统体积压缩到很小。后续根据需求,在这个系统中安装上需要的程序,做成一个新的镜像,可以在新的镜像中安装程序打成新的镜像。这样一层层的镜像打包,保存,就会有很多的镜像。放到仓库里,按需获取安装使用。
spring boot的系列中为什么用到docker呢?spring boot开发完成,打包后是一个.jar文件(还有其它的使用方法,我基本上都是打jar文件,运行这个jar文件启动项目)。本身就可以是一个可执行文件,运行也是很方便的。如果配合docker后,就可以更容易组建微服务。用java为基础镜像做镜像。把一个个服务打包成一个个镜像。测试、发布都可以用同一个镜像去执行,这样使环境统一,也方便发布。再配合其它docker工具,使得多个服务组成的系统更容易维护。

下载docker

windows中安装docker,是下载安装Docker Toolbox。如果是windows10,可以到docker官网下载。这里是windows8.1,下载地址http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

下载列表

安装docker

下载后双击安装,我的系统中已经安装过docker-toolbox,可能安装界面上有些小区别。


开始安装

安装目录

选择安装程序

其实windows中使用docker,是安装VirtualBox虚拟机,在虚拟机安装一个linux系统,在linux中运行docker服务,windows中的磁盘映射到虚拟机中。实际上docker还是安装在linux中。


下一步

创建桌面图标与环境变量
安装配置

点击“install”开始安装。
安装中

安装完成

注意,安装完成后最好重启下系统。否则可能会因为环境变量没生效使得有些命令无效。

使用

图标

安装完成后,桌面上有三个图标。
查看下环境变量


系统界面

高级系统配置

环境变量

PATH

PATH值

可以看到,安装包配置了一些环境变量。
现在来看下虚拟机的情况


图标

双击打开VirtualBox
虚拟机

一个没有系统的虚拟机
图标

运行DockerQuickstart
运行中

首次运行时间会比较长,需要下载boot2docker.iso。
下载boot2docker.iso完成后,会在虚拟机中安装一个名为default的Linux系统。
安装虚拟机后

启动完成

启动完成后进入docker界面。从这里可以看到default系统的ip为192.168.99.100
这里留意一点,192.168.99.100这台机子是可以访问本机(virtualBox的宿主机)的局域网的。比如,本机IP为192.168.1.101,局域网中有台机子是192.168.1.102 在102机子中安装一个数据库,101能访问这个数据库,那么192.168.99.100也是可以访问102的数据库的。
这里,windows8.1中的docker已经安装完成了。可以验证一下


验证docker

SSH远程192.168.99.100

既然default是一台Linux系统机子,那么就应该可以用SSH远程访问。是可以的,我这里用的XShell


属性配置

添加一个连接,端口号是22 用户名:docker,密码:tcuser


成功连接

成功连接到default主机。

体验镜像

我们安装一个tomcat镜像试试看。
用search命令看看有没有tomcat镜像


查找镜像

发现有tomcat镜像,用pull命令将tomcat镜像拉取下来。


拉取中

完成后用docker images命令查看本地镜像
查看

使用tomcat镜像创建容器并运行。
docker run -idt -p 8080:8080 --name tomcat tomcat
运行容器

查看运行中的容器


查看容器

查看页面,注意,这里要用192.168.99.100访问,而不是本机地址。


tomcat界面

访问到界面,说明tomcat启动成功
由于tomcat运行在容器中,那么页面文件怎么处理呢?这里为了讲文件挂载,所以这里采用本地文件挂载到容器的方法。
首先挂载一个本地文件夹到default虚拟机中的一个目录。

打开VirtualBox管理器,default右键->设置


添加一个共享文件夹

属性

重启default系统,本地F:\ebertemp\demo文件夹的更改就会反映到虚拟机/Demo目录中
查看运行中的容器
docker ps
查看运行中的容器

如果tomcat容器正在执行(列表中看到容器),先停止容器

docker stop tomcat

删除前面创建的tomcat容器

docker rm tomcat

在F:\ebertemp\demo\tomcat\test中创建一个html文件


html文件

内容如下

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
    <TITLE>test</TITLE>
    <META http-equiv=Content-Type content="text/html">
</HEAD>
<BODY>
    <P>test docker</P>
</BODY>
</HTML>

将/Demo/tomcat/test目录挂载到容器/usr/local/tomcat/webapps/test目录中,即将本地F:\ebertemp\demo\tomcat\test目录挂载到容器tomcat界面目录/usr/local/tomcat/webapps/test中。运行如下命令

docker run -idt -p 8080:8080 -v /Demo/tomcat/test:/usr/local/tomcat/webapps/test --name tomcat tomcat

访问test项目,结果是本地文件。


访问目录

注册国内仓库

拉取docker官方的库有点慢,可以注册一个国内仓库来增加拉取镜像速度。这里以阿里云的加速地址为例
https://brelgdhp.mirror.aliyuncs.com
用SSH连接到default

远程连接

cd /var/lib/boot2docker
sudo vi profile
修改代码如下

EXTRA_ARGS='
--registry-mirror=https://brelgdhp.mirror.aliyuncs.com #这里是注册国内仓库
--label provider=virtualbox

'
CACERT=/var/lib/boot2docker/ca.pem
DOCKER_HOST='-H tcp://0.0.0.0:2376'
DOCKER_STORAGE=overlay2
DOCKER_TLS=auto
SERVERKEY=/var/lib/boot2docker/server-key.pem
SERVERCERT=/var/lib/boot2docker/server.pem
配置

--insecure-registry docker.biboheart.com 这个后面会讲到
保存后,重启default主机生效。可以到VirtualBox界面重启,也可以用docker-machine重启

docker-machine restart default

执行这个命令的时候,也可以看看VirtualBox变化。


重启

这样就已经完成国内仓库的注册

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,324评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,356评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,328评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,147评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,160评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,115评论 1 296
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,025评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,867评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,307评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,528评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,688评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,409评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,001评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,657评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,811评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,685评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,573评论 2 353

推荐阅读更多精彩内容