文章源自JAVA秀-https://www.javaxiu.com/20931.html 闪耀的瞬间 收藏 分类专栏: 版权 文章源自JAVA秀-https://www.javaxiu.com/20931.html 文章源自JAVA秀-https://www.javaxiu.com/20931.html 本文将介绍SpringBoot开发的应用打包成docker镜像,然后运行镜像为容器文章源自JAVA秀-https://www.javaxiu.com/20931.html 依赖Docker:docker安装 依赖MySql:文章源自JAVA秀-https://www.javaxiu.com/20931.html 运行为容器,设置数据存储到宿主机,root用户密码:文章源自JAVA秀-https://www.javaxiu.com/20931.html 注意后面的–lower_case_table_names=1配置,忽略大小写,小心被坑 mysqld.cnf配置文件内容可以从mysql容器中复制出来,内容如下:文章源自JAVA秀-https://www.javaxiu.com/20931.html 应用打包成docker镜像,使用Dockerfile文件,里面编写打包的指令,需要注意的是此应用用到了宿主机的目录存储文件文章源自JAVA秀-https://www.javaxiu.com/20931.html 1.Dockerfile文件 文章源自JAVA秀-https://www.javaxiu.com/20931.html 把sisco.jar上传到服务器sisco目录,在sisco目录中创建Dockerfile文件,内容如下,依赖 openjdk 镜像,把当前目录的sisco.jar复制到镜像的/usr/目录中,定义一个PARAMS参数,运行镜像时添加自定义参数,如:-Dspring.profiles.active=default -DXms=300m 等文章源自JAVA秀-https://www.javaxiu.com/20931.html 2.打包成镜像 文章源自JAVA秀-https://www.javaxiu.com/20931.html docker打包镜像有两种方式,1.使用docker commit,2.使用Dockerfile文件,本文使用Dockerfile文件 在sisco目录中,执行命令:文章源自JAVA秀-https://www.javaxiu.com/20931.html 使用docker images 查看镜像 3.运行为容器 文章源自JAVA秀-https://www.javaxiu.com/20931.html sisco目录中内容如下,有Dockerfile文件,有sisco.jar,sisco应用上传的文件存放到web目录中 把运行mysql与运行sisco应用的命令放到对应的脚本文件中,只要执行:文章源自JAVA秀-https://www.javaxiu.com/20931.html start.sh的内容简单解释下:文章源自JAVA秀-https://www.javaxiu.com/20931.html 查看运行中的容器,可看到容器绑定的端口 文章源自JAVA秀-https://www.javaxiu.com/20931.html云原生应用11:SpringBoot应用打包成docker镜像
文章源自JAVA秀-https://www.javaxiu.com/20931.html文章源自JAVA秀-https://www.javaxiu.com/20931.html
2019-11-02 19:31:15
298
文章源自JAVA秀-https://www.javaxiu.com/20931.html
云原生
SpringBoot 项目开发
文章标签:
kubernetes 文章源自JAVA秀-https://www.javaxiu.com/20931.htmldocker run -d --name mysql -v /data/mysql:/var/lib/mysql --rm -p 3306:3306 \
-v /root/mysql/conf/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \
-e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.26 --lower_case_table_names=1
123# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
#log-error = /var/log/mysql/error.log
# By default we only accept connections from localhost
#bind-address = 127.0.0.1
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#从 show variables like '%sql_mode'; 里面复制出来,并去掉了 only_full_group_by
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
1234567891011121314FROM openjdk:8-jdk-alpine
COPY ["sisco-0.0.1-SNAPSHOT.jar" , "/usr/"]
ENV PARAMS=""
ENTRYPOINT ["sh" , "-c" , "java $PARAMS -jar /usr/sisco-0.0.1-SNAPSHOT.jar"]
1234docker build -t sisco:v0.1 ./
1文章源自JAVA秀-https://www.javaxiu.com/20931.html
start_mysql.sh内容:docker run -d --name mysql -v /data/mysql:/var/lib/mysql --rm -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.26 start.sh内容:docker run -d --name sisco --rm -v /home/sisco/web:/usr/web -p 8000:8080 -e PARAMS="-Dspring.profiles.active=prod -DXms=300m -DXmx=300m -Dsisco.config.filePath=usr/web/" sisco:v0.1文章源自JAVA秀-https://www.javaxiu.com/20931.html
然后访问容器,http://192.168.68.134:8000
文章源自JAVA秀-https://www.javaxiu.com/20931.html

评论