日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

Docker快速部署SpringBoot項(xiàng)目介紹_docker

更新時(shí)間: 2021-12-16 編程語(yǔ)言

1、安裝 Docker

首先打開(kāi)linux環(huán)境,輸入以下命令進(jìn)行安裝:

安裝
yum install docker

檢查是否安裝成功
docker --version

#啟動(dòng)
systemctl start docker

如果下載很慢,可以切換到國(guó)內(nèi)的阿里云鏡像,進(jìn)行下載:

換鏡像源
sudo vim /etc/docker/daemon.json

內(nèi)容如下:
{
 "registry-mirrors": ["https://m9r2r2uj.mirror.aliyuncs.com"]
}

保存退出,重啟docker:
systemctl restart docker

2、安裝 Redis

首先在DockerHub搜索redis,點(diǎn)擊進(jìn)入詳情頁(yè)之后,拉到下面就可以看到how to use,如果需要選擇特定的版本,有Supported tags給我們選擇,然后如果拉取最新的版本的話,拉到下面就命令教程如下:

拉取redis的鏡像
docker pull redis

查看本地redis鏡像
docker images

運(yùn)行redis
docker run --name myredis -p 6379:6379 -d redis redis-server --appendonly yes

docker run表示運(yùn)行的意思
–name myredis 表示起個(gè)名字叫myredis
-p 6379:6379表示把服務(wù)器的6379映射到docker的6379端口,這樣就可以通過(guò)服務(wù)器的端口訪問(wèn)docker的端口
-d 表示以后臺(tái)服務(wù)形式運(yùn)行redis redis redis-server --appendonly yes表示開(kāi)啟持久化緩存模式,可以存到硬盤

3、安裝 MySQL

下拉MySQL鏡像:
docker pull mysql:5.7.27

Docker運(yùn)行MySQL:
docker run --name mymysql -e MYSQL_ROOT_PASSWORD=admin -d -p 3306:3306  mysql:5.7.27 

4、安裝 RabbitMQ

一行命令搞定,注意RABBITMQ_DEFAULT_PASS=password是設(shè)置密碼的意思,這行命令中已經(jīng)偷偷做了下拉鏡像等操作:

docker run -d --hostname my-rabbit --name myrabbit -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 rabbitmq:management

5、安裝 ElasticSearch

下拉鏡像操作省略:

啟動(dòng):
docker run -p 9200:9200 -p 9300:9300 -d --name es_643 elasticsearch:6.4.3

進(jìn)入鏡像:
docker exec -it es_643 /bin/bash

安裝中文分詞插件:
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.3/elasticsearch-analysis-ik-6.4.3.zip

退出并重啟鏡像
exit
docker restart es_643

6、構(gòu)建項(xiàng)目的 Docker 鏡像

我們使用命令到github上拉取項(xiàng)目:

下拉項(xiàng)目(eblog):
clone https://github.com/MarkerHub/eblog.git

進(jìn)入文件夾:
cd eblog

打包:
mvn clean package -Dmaven.test.skip=true

將打好的jar包上傳到 linux 服務(wù)器上!

接下來(lái)編寫 DockerFile,它能將我們打包好的jar包代碼構(gòu)建成鏡像:

FROM java:8
EXPOSE 8080

VOLUME /tmp

ENV TZ=Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/{TZ} /etc/localtime && echo "{TZ}" > /etc/timezone

ADD eblog-0.0.1-SNAPSHOT.jar  /app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar"]

FROM java:8 表示基于jdk8環(huán)境
EXPOSE 8080 表示對(duì)外暴露的端口是8080
VOLUME /tmp 表示掛載到/tmp目錄
ADD eblog-0.0.1-SNAPSHOT.jar /app.jar 表示把jar包復(fù)制到鏡像服務(wù)里面的根目錄,并改名稱app.jar
RUN bash -c ‘touch /app.jar' 表示執(zhí)行創(chuàng)建app.jar
ENTRYPOINT [“java”,"-jar","/app.jar"] 表示執(zhí)行啟動(dòng)命令java -jar

接下來(lái),我們安裝Dockrfile,然后用DockerFile把eblog-0.0.1-SNAPSHOT.jar構(gòu)建成鏡像:

構(gòu)建鏡像
docker build -t eblog .

查看鏡像
docker images

這步驟完成之后,我們就可以在準(zhǔn)備工作就已經(jīng)完成啦,接下來(lái),我們就直接啟動(dòng)我們的項(xiàng)目

7、運(yùn)行項(xiàng)目鏡像 完成項(xiàng)目啟動(dòng)

命令如下:

docker run -p 8080:8080 -p 9326:9326 --name eblog --link es_643:ees --link myrabbit:erabbit --link mymysql:emysql --link myredis:eredis -d eblog

-p 8080:8080 -p 9326:9326 :9326是因?yàn)榧磿r(shí)聊天需要用到的ws端口 --link es:ees 表示關(guān)聯(lián)容器,把容器es起別名為ees

查看eblog打印日志:

docker logs -f eblog

到此項(xiàng)目運(yùn)行成功!

注意: 使用 DockerCompose 更簡(jiǎn)單

原文鏈接:https://blog.csdn.net/weixin_46594796/article/details/121666193

欄目分類
最近更新