SpringBoot部署项目到Docker仓库

SpringBoot部署项目到Docker仓库
1.开启远程控制端口
Centos7开启方式:

vim /lib/systemd/system/docker.service
找到ExecStart行

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

重启docker

启动 systemctl start docker
    守护进程重启  sudo systemctl daemon-reload
    重启docker服务  systemctl restart docker
    重启docker服务  sudo service docker restart
    关闭docker   service docker stop   
    关闭docker  systemctl stop docker

2.创建springboot项目
利用IDEA快速创建springboot项目:
SpringBoot部署项目到Docker仓库
添加测试Controller
SpringBoot部署项目到Docker仓库
3.配置项目构建信息
在pom.xml文件中配置如下:

  <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- Docker maven plugin -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <!-- docker私服的地址 -->
                    <dockerHost>http://192.168.101.205:2375</dockerHost>
                    <!--镜像名称以及版本号-->
                    <imageName>spring-boot-docker:1.1.1</imageName>
                    <!--依赖的基础镜像-->
                    <baseImage>java</baseImage>
                    <!--Dockerfile的位置 -->
                    <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
                    <!-- 这里是复制 jar 包到 docker 容器指定目录配置 -->
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
            <!-- Docker maven plugin -->
        </plugins>
    </build>

说明:

<dockerHost>http://192.168.101.205:2375</dockerHost&gt; 就是docker服务器地址

<imageName>spring-boot-docker:1.1.1</imageName> 构建后的docker image的name与tag

<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory> 指定Dockerfile文件位置

4.编辑Dockerfile

FROM java:8
MAINTAINER haopeng 18802953162@163.com
VOLUME /home/haopeng
ADD docker_base-0.0.1-SNAPSHOT.jar demo.jar
RUN bash -c 'touch /app.jar'
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "app.jar"]

另外项目端口需要改为8080
对Dockerfile里面的内容做一个简单的介绍:

 1.FROM:指明当前镜像继承的基镜像,编译当前镜像时候会自动下载基镜像
 2.MAINTAINER:当前镜像的作者和邮箱,使用空格隔开
 3.VOLUME:挂载目录
 4.ADD:从当前工作目录复制文件到镜像目录中并重新命名
 5.RUN:在当前镜像上执行Linux命令,这里我执行了2个run指令
 6.EXPOSE:监听的端口号
 7.ENTRYPOINT:让容器像一个可执行程序一样运行

5.构建Docker镜像
执行 mvn clean package -DskipTests docker:build

控制台出现 BUILD SUCCESS 标识构建成功
SpringBoot部署项目到Docker仓库
6.运行docker镜像

连接到docker服务器docker images可以看到刚刚构建的镜像
执行 docker run -d -p 8080:8080 --name docker-app spring-boot-docker:1.1.1

返回容器id表示运行成功

打开浏览器输入宿主机+端口访问项目

SpringBoot部署项目到Docker仓库

示例demo地址:https://gitee.com/hawawa/docker_base.git

转载于:https://blog.51cto.com/13981400/2399449

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值