IDEA中使用Docker Compose容器編排的實(shí)現(xiàn)
(一)確保idea 中連接到docker
(二)打包鏡像
我這里測試的是前后分離項(xiàng)目 如果是微服務(wù)中呢,由于前文中在pom.xml 中綁定了idea docker 打包插件 在其 父工程中使用 打包命令 即可將其子模塊 打成一個(gè)個(gè)鏡像
(三)Compos編排文件編寫
docker compose 使用鏡像編排
version: ’3’ #compose 文件版本(1.2.x+ 用3即可)services: #指定服務(wù)名 建議還是與項(xiàng)目名一致 雖然其并沒有什么實(shí)際性聯(lián)系 lei-server: #我這里是采用 鏡像編排 當(dāng)然也可以使用 dockerfile image: registry.cn-chengdu.aliyuncs.com/leileideve/cattle-web:latest #從起方式 restart: always #端口映射 ports: - 6543:6543 #數(shù)據(jù)卷掛載 volumes: - /docker/logs/server:/data/logs/ # 指定編排服務(wù)名 lei-web: #image: 后為 需要編排的鏡像 默認(rèn)從本地服務(wù)器尋找 ,未找到則從dokcerhub中尋找 image: app-fontend restart: always ports: - 8888:8888 volumes: - /docker/logs/web:/logs
docker compose 使用dokcerfile 編排
version: ’3’services: # 后端springboot容器 server: container_name: lei-server-haha # 容器名為’xiao-xiao-su-api’ restart: always # 重啟策略: 容器退出時(shí)總是重啟容器 build: context: ./ # 指定設(shè)定上下文根目錄,然后以該目錄為準(zhǔn)尋找Dockerfile dockerfile: ./docker/server/Dockerfile #DockerFile 真正所在位置 working_dir: /app # 設(shè)置工作目錄為容器內(nèi)的app文件夾 environment: TZ: Asia/Shanghai volumes: # 掛載文件 - ./logs/:/app/log# 映射容器產(chǎn)生的日志到主機(jī)的logs文件夾 ports: # 映射端口 - 7777:6543# 前端項(xiàng)目 web: container_name: lei-web-haha # 容器名為’lei-web-haha’ restart: always # 重啟策略: 容器退出時(shí)總是重啟容器 build: context: ./ # 指定設(shè)定上下文根目錄,然后以該目錄為準(zhǔn)尋找Dockerfile dockerfile: ./docker/web/Dockerfile #DockerFile 真正所在位置 environment: TZ: Asia/Shanghai ports: - 8899:8888 # 映射端口
使用dockerfile 和鏡像編排的區(qū)別
dockerfile 每次編排需要創(chuàng)建一個(gè)新鏡像 然后啟動容器實(shí)例
使用images則是在原本鏡像中 新啟動一個(gè)容器實(shí)例
docker-compose.yml 一般都是放在項(xiàng)目最外層
(四)idea 中操作docker compose
未使用時(shí) 查看服務(wù)器 正在運(yùn)行的容器列表
idea 中操作
運(yùn)行services 其實(shí)質(zhì)是執(zhí)行了docker compose 命令 docker-compose up -d (當(dāng)compose文件 為標(biāo)準(zhǔn)的 docker-compose.yml 時(shí)) 如不標(biāo)準(zhǔn) 則實(shí)質(zhì)時(shí) 用-f 參數(shù)指定文件名 與 docker build 命令類似 (docker-compose -f dockerdemo.yml up -d)
docker compose 常用命令 以 tomcat 為例子
docker-compose up -d 容器 構(gòu)建建啟動容器exmaple: docker-compose up -d tomcat 構(gòu)建建啟動tomcat容器docker-compose exec tomcat bash 登錄到tomcat容器中docker-compose down 刪除所有容器,鏡像docker-compose ps 顯示所有容器docker-compose restart 容器ID 重新啟動容器docker-compose build tomcat 構(gòu)建鏡像 。 docker-compose build --no-cache tomcat 不帶緩存的構(gòu)建。docker-compose logs tomcat 查看tomcat的日志 docker-compose logs -f tomcat 查看tomcat的實(shí)時(shí)日志
查看Linux虛擬機(jī) 容器信息 服務(wù)名 是默認(rèn)的 docker compose 所在父項(xiàng)目名+ 自定義服務(wù)名+數(shù)字
訪問測試
docker compose 的簡單使用就結(jié)束了,后續(xù)不斷補(bǔ)充,其知識點(diǎn)是非常多的
到此這篇關(guān)于IDEA中使用Docker Compose容器編排的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)IDEA使用Docker Compose容器編排內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
