美文网首页
使用docker部署springboot项目

使用docker部署springboot项目

作者: yanghx | 来源:发表于2019-09-26 21:30 被阅读0次

    一. 在winows安装docker 。

    安装exe文件后,可以在命令行中执行docker命令。但pull镜像时会报错。

    image.png

    这是因为docker需要开始守护进程。手动开启docker服务。开启服务的同时。也要保证docker客户端在运行。

    image.png

    二. 编写dockerFile文件,构建镜像

    这是我写的dockerfile文件。比较简单

    
    FROM java:openjdk-8-jre-alpine
    EXPOSE 12315
    ENV LANG C.UTF-8
    VOLUME /tmp
    ADD target/app-0.0.1-SNAPSHOT.jar app.jar
    
    ENTRYPOINT ["java","-jar","/app.jar"]
    
    

    构建镜像

    docker build -t app .

    docker build  
    -t  :   指定镜像名称
    .   :   表示dockerfile所在的目录。 
    

    构建的镜像可以使用命令 docker images 查看

    image.png

    运行镜像
    docker run -d -p 12325:12315 app -e --spring.profiles.active=prod

    -d :后台运行
    -p :指定端口
    12325:12315 :前边表示宿主机的端口。后边表示docker容器的端口。
     app :镜像名称。也可以使用镜像id
    -e: 向启动的容器内传入环境变量。在我使用过程中发现好像只有写在结尾处才有用。
    
    docker run -d -p 12315:12315  -e --spring.profiles.active=prod app 这样写的话,环境变量就没有设置成功。
    
    

    使用docker container ls 查看正在运行的容器

    image.png

    进入容器内部

    可能是我制作的镜像不标准。在使用docker exec -it a8fb5707f30a /bin/bash尝试进入容器时。报错了。
    最后通过 docker exec -it a8fb5707f30a sh 进入到容器了

    进入容器报错
    成功进入容器

    镜像正常运行的截图
    这里的env是我用来测试设置环境变量的。通过 -e --spring.profiles.active=prod 成功将springboot项目以prod模式启动。说明 -e的命令生效了。 如果需要设置多个变量。使用空格分开即可。
    docker run -d -p 12325:12325 app -e --spring.profiles.active=prod --server.port=12325
    这样就让容器以端口12325 。prod模式运行。

    • image.png

    三. 将镜像上传到远程仓库。

    我选择的是阿里云库。需要提前在阿里云开通容器镜像服务,创建命名空间和镜像等操作。
    在阿里云创建镜像后,根据阿里文档的指引很容易就可以将镜像上传。

    image.png

    有点需要注意。就是生成tag的时候选择阿里的公网地址。 如果你是阿里ecs就不用管这些了。

    四.镜像的持续更新和维护

    正在使用中。。。。

    相关文章

      网友评论

          本文标题:使用docker部署springboot项目

          本文链接:https://www.haomeiwen.com/subject/qavnuctx.html