婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > IDEA 集成 docker 實現遠程部署的詳細步驟

IDEA 集成 docker 實現遠程部署的詳細步驟

熱門標簽:藍點外呼系統 400電話申請方案 貴陽教育行業電話外呼系統 威海人工外呼系統供應商 做外呼系統的公司違法嗎 在百度地圖標注車輛 寧夏房產智能外呼系統要多少錢 烏海智能電話機器人 撫順移動400電話申請

1. docker 服務器開啟遠程訪問

登錄 docker 所在的遠程服務器,使用命令 vim /usr/lib/systemd/system/docker.service 修改配置文件,需注意,修改時確認自己的賬戶擁有相應權限

主要操作是找到 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 這一行,注釋掉,重新添加一行,在后面新增-H tcp://0.0.0.0:2375表示打開2375端口,支持遠程連接 docker

#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

保存配置文件后需要將配置重新載入,重啟 docker,可使用如下命令

systemctl daemon-reload
systemctl restart docker.service

2. IDEA 安裝 docker 插件

一般比較新的 IDEA 都綁定了 docker 插件,如未綁定在 IDEA 的 Plugins 中搜索安裝 docker 插件即可,安裝完畢重啟生效

重啟后可以通過 Build,Execution,Depolyment ——> Docker 路徑找到 Docker 插件,再此新增一個連接遠程 Docker 的配置

連接成功后,在 IDEA 插件面板中可以查看遠程 docker 主機的鏡像和容器,也可以查看容器運行的日志等信息

3. docker 鏡像構建上傳

要將本地打包的 jar 構建成 docker 鏡像,需要在項目 pom 文件中添加構建插件配置。如下是一個 SpringBoot 項目模塊的打包配置,關鍵點如下:

構建一個名稱為 nathan-api 的 jar 包,首先添加 spring-boot-maven-plugin 插件添加一個 docker-maven-plugin 插件,配置 docker 鏡像的各個關鍵屬性。注意,這個插件會下載 com.spotify.docker-maven-plugin jar 包,如下載出錯更換幾個版本試試, 版本列表可參考 Maven 中央倉庫
 <build>
     <finalName>nathan-api</finalName>
     <plugins>
         <plugin>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-maven-plugin</artifactId>
             <version>2.4.2</version>
             <executions>
                 <execution>
                     <goals>
                         <goal>repackage</goal>
                     </goals>
                 </execution>
             </executions>
         </plugin>

         <plugin>
             <groupId>com.spotify</groupId>
             <artifactId>docker-maven-plugin</artifactId>
             <version>1.1.0</version>
             <!--將插件綁定在某個phase執行-->
             <executions>
                 <execution>
                     <id>build-image</id>
                     <!--用戶只需執行mvn package ,就會自動執行mvn docker:build-->
                     <phase>package</phase>
                     <goals>
                         <goal>build</goal>
                     </goals>
                 </execution>
             </executions>
             <configuration>
                 <!--指定docker文件目錄-->
                 <dockerDirectory>${project.basedir}/docker</dockerDirectory>
                 <!--指定生成的鏡像名-->
                 <imageName>${project.artifactId}</imageName>
                 <!--指定標簽-->
                 <imageTags>
                     <imageTag>latest</imageTag>
                 </imageTags>
                 <!--指定遠程 docker api地址-->
                 <dockerHost>http://xxx.168.146.63:2375</dockerHost>
                 <!-- 這里是復制 jar 包到 docker 容器指定目錄配置 -->
                 <resources>
                     <resource>
                         <targetPath>/</targetPath>
                         <!--jar 包所在的路徑  此處配置的 即對應 target 目錄-->
                         <directory>${project.build.directory}</directory>
                         <!-- 需要包含的 jar包 ,這里對應的是 Dockerfile 中添加的文件名 -->
                         <include>${project.build.finalName}.jar</include>
                     </resource>
                 </resources>
             </configuration>
         </plugin>

     </plugins>
 </build>

上一步驟中在 docker 的 maven 插件中配置了 docker 文件的目錄,指定的是模塊根目錄下的 docker 文件夾,則創建一個與 src 平級的名稱為 docker 的目錄,在其中新建一個名稱為 Dockerfile 的文件,其內容如下:

FROM java:8
VOLUME /tmp
# 將打包好的 jar 復制到 app.jar 中
ADD nathan-api.jar app.jar
EXPOSE 20561
# 以下為 jar 包啟動命令配置
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom","-Duser.timezone=GMT+8", "-jar", "app.jar"]

經過以上配置,已經將構建 docker 鏡像的動作綁定到了 maven 的 package 打包命令,則執行打包即可

筆者在這一步遇到過 ADD failed: file not found in build context or excluded by .dockerignore報錯,主要問題是沒有找到 Dockerfile 文件中 ADD 命令需復制的源文件。出現這個報錯首先檢查Dockerfile文件配置的文件路徑是否正確,其次檢查實際打包的 jar 名稱是否與Dockerfile配置的文件名稱相同。筆者檢查配置,確認沒有路徑和名稱錯誤,最后 clean 重啟幾次 IDEA 后又好了。不要問為什么,問就是玄學

docker 鏡像構建好之后,右擊鏡像文件可以選擇創建容器。創建新的容器最簡單的步驟是為容器命名,然后添加宿主機到容器的端口映射,創建成功后容器會自動運行

到此這篇關于IDEA 集成 docker 實現遠程部署的詳細步驟的文章就介紹到這了,更多相關IDEA遠程部署內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:泰州 銅川 蕪湖 朝陽 松原 慶陽 那曲 周口

巨人網絡通訊聲明:本文標題《IDEA 集成 docker 實現遠程部署的詳細步驟》,本文關鍵詞  IDEA,集成,docker,實現,遠程,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《IDEA 集成 docker 實現遠程部署的詳細步驟》相關的同類信息!
  • 本頁收集關于IDEA 集成 docker 實現遠程部署的詳細步驟的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 阳泉市| 锦屏县| 滨州市| 若尔盖县| 临漳县| 金寨县| 浏阳市| 札达县| 张家港市| 泽州县| 仁寿县| 山东省| 阿勒泰市| 梓潼县| 大同县| 循化| 潮安县| 乐陵市| 鞍山市| 海南省| 新乐市| 香格里拉县| 上思县| 阜南县| 云龙县| 聂拉木县| 永济市| 琼海市| 婺源县| 温泉县| 台州市| 汾西县| 含山县| 响水县| 石柱| 兴和县| 平乡县| 柯坪县| 佛冈县| 连南| 固原市|