我是靠谱客的博主 欣喜黑米,最近开发中收集的这篇文章主要介绍springboot web 项目Docker线上部署1.先搭建自己私有仓库2.dockerfile打包springboot项目3.日志文件的挂载,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.先搭建自己私有仓库

阿里云镜像加速器

docker pull registry

1.1.配置私有仓库地址

"insecure-registries": ["192.168.1.119:5000"]

结合我们刚才配置了阿里云的加速镜像地址:

vim /etc/docker/daemon.json

 1.2.重启一下docker 

systemctl restart docker

1.3.创建容器

docker run -d -p 5000:5000 --name registry docker.io/registry
http://192.168.1.119:5000/v2/_catalog

私有仓库,没有镜像。

1.4.推送镜像到私有仓库

# 标记hello-world该镜像需要推送到私有仓库
docker tag hello-world:latest 192.168.1.119:5000/hello-world:latest

 

# 通过push指令推送到私有仓库
docker push 192.168.1.119:5000/hello-world:latest

 Docker私有镜像仓库搭建及SSL配置

 推送镜像到私有仓库。

# 查看仓库镜像列表
http://服务器IP地址:5000/v2/_catalog
https://域名/v2/_catalog

# 查看镜像版本列表
curl http://服务器IP地址:5000/v2/your-image-name/tags/list
curl https://域名/v2/your-image-name/tags/list

 1.5.验证从私有仓库下载镜像

# 格式如下:
docker pull 127.0.0.1:5000/镜像名称:镜像版本号

注意细节:那就是要配置一下私有仓库地址,在daemon.json里。最后重启一下docker.

注意:如果同一个镜像,只是通过tag命令重新打标签,然后重新上传到私有仓库,会提示该镜像已经存在。

 但是最终结果:还是会上传上去。

2.dockerfile打包springboot项目

2.1.Dockerfile文件

FROM openjdk:8-jdk-alpine

MAINTAINER ymy2017@qq.com

ENV TZ=Asia/Shanghai

ENV JAVA_OPTS="-Xms128m -Xmx256m -Djava.security.egd=file:/dev/./urandom"

RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

RUN mkdir -p /mego-pc

WORKDIR /mego-pc

EXPOSE 8071

ADD lib ./lib
ADD demodocker-0.0.1-SNAPSHOT.jar ./
ADD mgcr_pc-0.0.1-SNAPSHOT.jar ./

CMD sleep 120;java $JAVA_OPTS -jar mgcr_pc-0.0.1-SNAPSHOT.jar

注意的点:在添加文件夹的时候,比如 想把当前Dockerfile所在的lib文件夹,复制到docker中的lib目录下,如果不加 ./lib  ,则会把所有lib下文件,直接添加到当前目录下。

目录结构:

了解目录结构:docker ADD命令的用法

 2.2.生成镜像

docker build -f Dockerfile -t megopc:1.0 .

 2.3.运行镜像

docker run --name pc2 -d -p 8072:8071 2f438d0096a4

http://192.168.1.128:8072/app/test

进入容器内部:镜像使用alpine制作:

docker exec -it 容器id /bin/sh

  

删除某个容器:

docker rm -f 容器id

查看所有的容器,包含没有启动成功的容器:

docker ps -a

获取容器/镜像的元数据:

docker inspect 容器id

注意点:当我们的容器启动失败的时候,我们怎么去分析失败的原因呢?一般就是通过查看容器的日志文件,那具体的日志信息存放在什么路径下呢,就得使用该命令进行查找。

3.日志文件的挂载

很多时候,我们需要把web的日志,直接映射到我们宿主机里。这样不用在查看日志的时候,每次都进入容器中去查看。当然,如果是微服务框架,日志这些都是统一收集起来了。

特别注意:在绑定目录的时候,不能和我们Dockerfile文件中创建存放打包文件放一起。否则我们启动容器的时候,会失败。

docker run --name pc2 -d -p 8071:8071 -v /test:/test1 3999b42a43f7

详解Docker挂载本地目录及实现文件共享

最后

以上就是欣喜黑米为你收集整理的springboot web 项目Docker线上部署1.先搭建自己私有仓库2.dockerfile打包springboot项目3.日志文件的挂载的全部内容,希望文章能够帮你解决springboot web 项目Docker线上部署1.先搭建自己私有仓库2.dockerfile打包springboot项目3.日志文件的挂载所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部