练涛

使用linux docker环境打包Springboot jar包为docker镜像

linux配置jdk环境

linux配置mvn环境

安装docker环境

参考上一篇文章

获取jdk8镜像,用于后面构建自己的项目镜像

docker pull ascdc/jdk8

执行命令后,会从默认的官方库获取镜像:https://hub.docker.com/r/ascdc/jdk8

docker images 可查看所有镜像

构建项目镜像过程

  1. 上传自己的项目jar包
  2. 编写Dockerfile
FROM williamyeh/java8:latest
VOLUME /tmp
ADD kvf-admin.jar /app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
  1. 执行构建镜像命令
    进入jar包和Dockerfile所在目录执行:
docker build -t kvf-admin .

kvf-admin是生成的镜像名。(别忘了后面的点)
如图:

使用docker images可查看是否有kvf-admin.

4.运行:

docker run -d -p 8100:8077 kvf-admin

docker ps 可以查看正在运行的容器


对于docker容器里面连接不到本地mysql的问题:

1. 首先查看MySQL监听的IP和端口,如图:

netstat -anp | grep 3306 输入命令查看MySQL监听的ip和端口

这时候连接数据库的写法直接写ip + port就好了。比如我的:192.168.2.243:3306

ps:(未在云服务器测试)


2. 下面我第一次用的解决方法,它在我的物理物理服务器断电重启后就失效了,原因不明。,输入命令:ifconfig 如图:

127.18.0.1 就是我要用的地址,把mysql连接的localhost改为它,即连接成功。

posted @ 2020-10-27 18:31  练涛  阅读(569)  评论(0编辑  收藏  举报