使用docker compose一鍵部署項目到服務(wù)器過程
前言
該篇文章主要是使用idea通過docker-compose.yml構(gòu)建容器集合并且進行統(tǒng)一管理更新
一、部署準(zhǔn)備
因為我們的項目直接部署會出現(xiàn)資源限制問題,需要在部署項目的服務(wù)器的docker添加下面配置
vi /usr/lib/systemd/system/docker.service
找到ExecStart=的位置,在后面添加對應(yīng)內(nèi)容
--default-ulimit nofile=65536:65536 --default-ulimit nproc=60000:60000
二、本地idea配置docker和docker compose執(zhí)行器
如果本地安裝了docker則跳過這一步
- docker:https://download.docker.com/win/static/stable/x86_64/
- docker compose:https://github.com/docker/compose/releases
把下載好的.exe文件放入文件夾配置好對應(yīng)的指定地址

如果本來本地就安裝了docker則不用處理

三、編寫docker-compose.yml文件
執(zhí)行在項目跟目錄創(chuàng)建一個docker compose文件

編寫docker-compose.yml文件
version: '3.8' # Docker Compose 文件版本
services:
service-gateway:
image: 10.37.129.2:5000/ssyx/service-gateway:1.0.1 # 替換為你的 Harbor 地址和鏡像標(biāo)簽
container_name: service-gateway #容器名稱
ports:
- "8000:8000" # 映射端口,根據(jù)實際情況修改(服務(wù)器端口:容器端口)
environment: # 如果你的服務(wù)需要環(huán)境變量,在這里配置
- SPRING_PROFILES_ACTIVE:dev #指定dev
volumes: # 如果有掛載目錄,在這里定義,配置日志的掛載目錄即可
- /home/docker/docker-logs/ssyx/service-gateway:/app/logs/service-gateway
restart: always # 推薦設(shè)置,服務(wù)意外停止后自動重啟
# depends_on: # 如果有依賴的服務(wù),比如數(shù)據(jù)庫,在這里定義
# - erp
service-sys:
image: 10.37.129.2:5000/ssyx/service-sys:1.0.1
container_name: service-sys #容器名稱
ports:
- "8001:8001"
environment:
- SPRING_PROFILES_ACTIVE:dev
volumes:
- /home/docker/docker-logs/ssyx/service-gateway:/app/logs/service-gateway
restart: always
配置啟動服務(wù)


注意:需要配置一下down刪除容器時把本地鏡像也刪除掉,因為我們每次更新代碼都需要到遠程倉庫去拉取最新的鏡像,如果本地不刪除的話,就不會每次去遠程倉庫拉取。

四、執(zhí)行啟動
創(chuàng)建好之后可以點擊右上角的執(zhí)行,也可以直接點擊docker-compose.yml的啟動標(biāo)識啟動創(chuàng)建單個服務(wù)或者多個容器

啟動好之后則可以通過日志查看和管理docker容器

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker安裝Oracle創(chuàng)建表空間并導(dǎo)入數(shù)據(jù)庫完整步驟
Docker提供了一種簡便的方式,通過容器化我們可以在任何支持Docker 的環(huán)境中快速部署Oracle數(shù)據(jù)庫,這篇文章主要介紹了Docker安裝Oracle創(chuàng)建表空間并導(dǎo)入數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下2025-04-04
解決在 Docker 中啟動 labelImg 的相關(guān)報錯
文章介紹了在Ubuntu-22.04中使用Miniconda3創(chuàng)建的Python 3.10虛擬環(huán)境下安裝labelImg時遇到的兩個主要錯誤及其解決方法:libGL報錯和xcb插件報錯,解決方法包括安裝libGL庫和補齊Qt5的xcb依賴項,感興趣的朋友跟隨小編一起看看吧2026-01-01
在Docker中利用Tomcat快速部署web應(yīng)用的方法示例
這篇文章我們就來說一下怎么在docker中快速部署一個web應(yīng)用。文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01
如何解決docker logs無法實時輸出腳本打印的內(nèi)容
這篇文章主要介紹了如何解決docker logs無法實時輸出腳本打印的內(nèi)容問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
Docker swarm集群部署過程詳解(包含compose.yml文件詳情)
Docker Swarm是Docker的集群管理工具,支持服務(wù)部署、副本調(diào)度、Stack管理(基于Compose文件),包含初始化集群、節(jié)點添加、服務(wù)更新、資源清理等操作,確保容器化應(yīng)用的高效運行,本文給大家介紹Docker swarm集群部署包含compose.yml文件詳情,感興趣的朋友一起看看吧2025-07-07

