栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Ubantu20中利用Docker部署SpringBoot项目,Java调用python脚本的方法。

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Ubantu20中利用Docker部署SpringBoot项目,Java调用python脚本的方法。

Java调用命令行执行python文件

Windows:

 String[] arguments = new String[] {"python3","D:/你的python文件地址.py",exp};
 Process process = Runtime.getRuntime().exec(arguments)

Linux:

Process process = Runtime.getRuntime().exec(new String[] { "/bin/bash", "-c", new StringBuffer("python3 /usr/你的python文件地址.py '" + exp + "'").toString()});

1、其中exp为调用python文件时传入的参数。
2、python和python3命令由具体安装python版本决定。
3、linux中,命令为/bin/bash -c,且携带的参数需要用引号包裹。

Dockerfile
FROM adoptopenjdk/openjdk8-openj9:jdk8u282-b08_openj9-0.24.0-alpine-slim
LABEL description="you label name"

RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN set -xe && apk --no-cache add ttf-dejavu fontconfig

RUN apk add -U tzdata 
    && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 
    && echo "Asia/Shanghai" > /etc/timezone 
    && apk add --no-cache bash bash-doc bash-completion 
    && apk add --no-cache python3 python3-dev py-pip
    && apk del tzdata 
    && rm -rf /var/cache/apk/
    

RUN mkdir -p /webapp

WORKDIR /webapp

ADD ./webapp-0.0.1-SNAPSHOT.jar ./webapp.jar

ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "webapp.jar"]

其中apk add --no-cache python3 python3-dev py-pip 为在Docker容器中安装python环境。

docker-compose.yml
version: '3'
services:
    web:
        build:
            context: ./
            dockerfile: ./Dockerfile
        container_name: web
        privileged: true
        restart: always
        command:
            - --server.port=8080
        ports:
            - 8080:8080
        volumes:
            - /usr/:/usr/

volumes指定docker容器内部和外部目录挂载关系,我们python文件放在uabntu系统目录下的位置要映射到jar包运行所在的docker容器中。
这样程序在docker中运行才能找到ubantu系统中对应文件,然后执行命令,也就是执行python脚本。

如有问题欢迎评论,创作不易,辛苦点个赞呗~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/744865.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号