IDEA中使用Docker Compose容器編排的實(shí)現(xiàn)
(一)確保idea 中連接到docker
(二)打包鏡像
我這里測(cè)試的是前后分離項(xiàng)目 如果是微服務(wù)中呢,由于前文中在pom.xml 中綁定了idea docker 打包插件 在其 父工程中使用 打包命令 即可將其子模塊 打成一個(gè)個(gè)鏡像
(三)Compos編排文件編寫
docker compose 使用鏡像編排
version: ’3’ #compose 文件版本(1.2.x+ 用3即可)services: #指定服務(wù)名 建議還是與項(xiàng)目名一致 雖然其并沒(méi)有什么實(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 每次編排需要?jiǎng)?chuàng)建一個(gè)新鏡像 然后啟動(dòng)容器實(shí)例
使用images則是在原本鏡像中 新啟動(dòng)一個(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)建建啟動(dòng)容器exmaple: docker-compose up -d tomcat 構(gòu)建建啟動(dòng)tomcat容器docker-compose exec tomcat bash 登錄到tomcat容器中docker-compose down 刪除所有容器,鏡像docker-compose ps 顯示所有容器docker-compose restart 容器ID 重新啟動(dòng)容器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ù)字
訪問(wèn)測(cè)試
docker compose 的簡(jiǎn)單使用就結(jié)束了,后續(xù)不斷補(bǔ)充,其知識(shí)點(diǎn)是非常多的
到此這篇關(guān)于IDEA中使用Docker Compose容器編排的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)IDEA使用Docker Compose容器編排內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. javascript xml xsl取值及數(shù)據(jù)修改第1/2頁(yè)2. JavaWeb Servlet中url-pattern的使用3. 使用EF Code First搭建簡(jiǎn)易ASP.NET MVC網(wǎng)站并允許數(shù)據(jù)庫(kù)遷移4. HTML5 Canvas繪制圖形從入門到精通5. jsp+servlet簡(jiǎn)單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))6. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式7. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明8. XML入門的常見(jiàn)問(wèn)題(一)9. asp批量添加修改刪除操作示例代碼10. ASP中if語(yǔ)句、select 、while循環(huán)的使用方法
