我是這樣使用SpringBoot(安裝docker)

目錄

安裝docker

這里是windows8.1的操作系統(tǒng),相對(duì)與window10、Linux等系統(tǒng)中安裝會(huì)稍復(fù)雜些。

docker是什么

docker是什么,專業(yè)的回答在百科上有,我就不復(fù)制了。我的理解是,docker是一個(gè)工具或者稱為服務(wù),它可以管理多個(gè)的系統(tǒng)鏡像,還有一個(gè)稱為容器的東東,把鏡像取過來放到容器中運(yùn)行。這里的系統(tǒng)鏡像實(shí)際上linux系統(tǒng)的簡化版,把系統(tǒng)體積壓縮到很小。后續(xù)根據(jù)需求,在這個(gè)系統(tǒng)中安裝上需要的程序,做成一個(gè)新的鏡像,可以在新的鏡像中安裝程序打成新的鏡像。這樣一層層的鏡像打包,保存,就會(huì)有很多的鏡像。放到倉庫里,按需獲取安裝使用。
spring boot的系列中為什么用到docker呢?spring boot開發(fā)完成,打包后是一個(gè).jar文件(還有其它的使用方法,我基本上都是打jar文件,運(yùn)行這個(gè)jar文件啟動(dòng)項(xiàng)目)。本身就可以是一個(gè)可執(zhí)行文件,運(yùn)行也是很方便的。如果配合docker后,就可以更容易組建微服務(wù)。用java為基礎(chǔ)鏡像做鏡像。把一個(gè)個(gè)服務(wù)打包成一個(gè)個(gè)鏡像。測(cè)試、發(fā)布都可以用同一個(gè)鏡像去執(zhí)行,這樣使環(huán)境統(tǒng)一,也方便發(fā)布。再配合其它docker工具,使得多個(gè)服務(wù)組成的系統(tǒng)更容易維護(hù)。

下載docker

windows中安裝docker,是下載安裝Docker Toolbox。如果是windows10,可以到docker官網(wǎng)下載。這里是windows8.1,下載地址http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/。

下載列表

安裝docker

下載后雙擊安裝,我的系統(tǒng)中已經(jīng)安裝過docker-toolbox,可能安裝界面上有些小區(qū)別。


開始安裝

安裝目錄

選擇安裝程序

其實(shí)windows中使用docker,是安裝VirtualBox虛擬機(jī),在虛擬機(jī)安裝一個(gè)linux系統(tǒng),在linux中運(yùn)行docker服務(wù),windows中的磁盤映射到虛擬機(jī)中。實(shí)際上docker還是安裝在linux中。


下一步

創(chuàng)建桌面圖標(biāo)與環(huán)境變量
安裝配置

點(diǎn)擊“install”開始安裝。
安裝中

安裝完成

注意,安裝完成后最好重啟下系統(tǒng)。否則可能會(huì)因?yàn)榄h(huán)境變量沒生效使得有些命令無效。

使用

圖標(biāo)

安裝完成后,桌面上有三個(gè)圖標(biāo)。
查看下環(huán)境變量


系統(tǒng)界面

高級(jí)系統(tǒng)配置

環(huán)境變量

PATH

PATH值

可以看到,安裝包配置了一些環(huán)境變量。
現(xiàn)在來看下虛擬機(jī)的情況


圖標(biāo)

雙擊打開VirtualBox
虛擬機(jī)

一個(gè)沒有系統(tǒng)的虛擬機(jī)
圖標(biāo)

運(yùn)行DockerQuickstart
運(yùn)行中

首次運(yùn)行時(shí)間會(huì)比較長,需要下載boot2docker.iso。
下載boot2docker.iso完成后,會(huì)在虛擬機(jī)中安裝一個(gè)名為default的Linux系統(tǒng)。
安裝虛擬機(jī)后

啟動(dòng)完成

啟動(dòng)完成后進(jìn)入docker界面。從這里可以看到default系統(tǒng)的ip為192.168.99.100
這里留意一點(diǎn),192.168.99.100這臺(tái)機(jī)子是可以訪問本機(jī)(virtualBox的宿主機(jī))的局域網(wǎng)的。比如,本機(jī)IP為192.168.1.101,局域網(wǎng)中有臺(tái)機(jī)子是192.168.1.102 在102機(jī)子中安裝一個(gè)數(shù)據(jù)庫,101能訪問這個(gè)數(shù)據(jù)庫,那么192.168.99.100也是可以訪問102的數(shù)據(jù)庫的。
這里,windows8.1中的docker已經(jīng)安裝完成了。可以驗(yàn)證一下


驗(yàn)證docker

SSH遠(yuǎn)程192.168.99.100

既然default是一臺(tái)Linux系統(tǒng)機(jī)子,那么就應(yīng)該可以用SSH遠(yuǎn)程訪問。是可以的,我這里用的XShell


屬性配置

添加一個(gè)連接,端口號(hào)是22 用戶名:docker,密碼:tcuser


成功連接

成功連接到default主機(jī)。

體驗(yàn)鏡像

我們安裝一個(gè)tomcat鏡像試試看。
用search命令看看有沒有tomcat鏡像


查找鏡像

發(fā)現(xiàn)有tomcat鏡像,用pull命令將tomcat鏡像拉取下來。


拉取中

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

使用tomcat鏡像創(chuàng)建容器并運(yùn)行。
docker run -idt -p 8080:8080 --name tomcat tomcat
運(yùn)行容器

查看運(yùn)行中的容器


查看容器

查看頁面,注意,這里要用192.168.99.100訪問,而不是本機(jī)地址。


tomcat界面

訪問到界面,說明tomcat啟動(dòng)成功
由于tomcat運(yùn)行在容器中,那么頁面文件怎么處理呢?這里為了講文件掛載,所以這里采用本地文件掛載到容器的方法。
首先掛載一個(gè)本地文件夾到default虛擬機(jī)中的一個(gè)目錄。

打開VirtualBox管理器,default右鍵->設(shè)置


添加一個(gè)共享文件夾

屬性

重啟default系統(tǒng),本地F:\ebertemp\demo文件夾的更改就會(huì)反映到虛擬機(jī)/Demo目錄中
查看運(yùn)行中的容器
docker ps
查看運(yùn)行中的容器

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

docker stop tomcat

刪除前面創(chuàng)建的tomcat容器

docker rm tomcat

在F:\ebertemp\demo\tomcat\test中創(chuàng)建一個(gè)html文件


html文件

內(nèi)容如下

<!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中。運(yùn)行如下命令

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

訪問test項(xiàng)目,結(jié)果是本地文件。


訪問目錄

注冊(cè)國內(nèi)倉庫

拉取docker官方的庫有點(diǎn)慢,可以注冊(cè)一個(gè)國內(nèi)倉庫來增加拉取鏡像速度。這里以阿里云的加速地址為例
https://brelgdhp.mirror.aliyuncs.com
用SSH連接到default

遠(yuǎn)程連接

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

EXTRA_ARGS='
--registry-mirror=https://brelgdhp.mirror.aliyuncs.com #這里是注冊(cè)國內(nèi)倉庫
--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 這個(gè)后面會(huì)講到
保存后,重啟default主機(jī)生效??梢缘絍irtualBox界面重啟,也可以用docker-machine重啟

docker-machine restart default

執(zhí)行這個(gè)命令的時(shí)候,也可以看看VirtualBox變化。


重啟

這樣就已經(jīng)完成國內(nèi)倉庫的注冊(cè)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容