idea構建docker鏡像併發布到服務器

idea構建docker鏡像併發布到服務器

1.配置docker遠程訪問

docker安裝見CentOS安裝Docker並製造jdk8基礎鏡像

打開docker配置文件,修改ExecStart=/usr/bin/dockerd…這一行,添加:-H tcp://0.0.0.0:2375

# 打開docker配置
vim /usr/lib/systemd/system/docker.service
# 在ExecStart…行添加-H tcp://0.0.0.0:2375
# 刷新配置,重啓docker
sudo systemctl daemon-reload
sudo systemctl restart docker
# 驗證配置是否生效
# 注:如果服務器有防火牆,要將2375端口開放
curl http://localhost:info

2.idea配置

  1. idea下載docker插件。

  2. 配置docker插件

    這時idea底部就會出現一個services選項卡。

    找到剛纔創建的Docker1,右鍵連接,這時就會連接到服務器上的docker環境,可以看到docker中的鏡像列表和正在運行的containers列表,點擊container右側就會顯示出運行日誌、docker run 參數等信息。

3.配置項目

  1. 創建Dockerfile文件

    在項目根目錄創建Dockerfile。

    注:jdk:1.8鏡像請事先準備,或參考CentOS安裝Docker並製造jdk8基礎鏡像

    FROM jdk:1.8
    VOLUME /tmp
    ADD target/test-1.0-SNAPSHOT.jar app.jar
    EXPOSE 9002
    ENTRYPOINT ["java","-jar","app.jar"]
    
  2. 配置項目pom文件

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <executions>
                    <execution>
                        <id>build-image</id>
                        <phase>package</phase>
                        <goals>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <imageName>${project.artifactId}</imageName>
                    <imageTags>
                        <imageTag>latest</imageTag>
                    </imageTags>
                    <dockerDirectory>${project.basedir}</dockerDirectory>
                    <dockerHost>http://192.168.137.5:2375</dockerHost>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>
    

    到這裏idea配置docker環境就已經配置好了,我們點擊mvn package命令,就會直接把新包發佈到docker服務器上。

5.注

  1. package打包前請先運行mvn clean清理命令,否則會打包失敗。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章