Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 容器启动后运行python脚本(Kubernetes)_Docker_Kubernetes - Fatal编程技术网

Docker 容器启动后运行python脚本(Kubernetes)

Docker 容器启动后运行python脚本(Kubernetes),docker,kubernetes,Docker,Kubernetes,我正在使用以下docker图像:https://github.com/budtmo/docker-android这是Android模拟器的Docker镜像 我将使用Kubernetes和以下部署运行它: apiVersion: apps/v1 kind: Deployment metadata: name: android-deployment spec: selector: matchLabels: app: android-emulator replica

我正在使用以下docker图像:
https://github.com/budtmo/docker-android
这是Android模拟器的Docker镜像

我将使用Kubernetes和以下部署运行它:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: android-deployment
spec:
  selector:
    matchLabels:
      app: android-emulator
    replicas: 10
  template:
    metadata:
    labels:
        app: android-emulator
     spec:
       containers:
       - name: android-emulator
         image: budtmo/docker-android-x86-8.1
         ports:
         - containerPort: 6080
         - containerPort: 5554
         - containerPort: 5555
         env:
         - name: DEVICE
           value: "Samsung Galaxy S8"
容器运行自动启动后,启动Android仿真器(不知道具体如何启动)。 我需要在容器为每个正在运行的容器启动后自动运行python脚本,
我怎么做?我应该在部署文件中更改什么?

您只需创建一个
Dockerfile
即可从
budtmo/docker-android-x86-8.1
基本映像构建您自己的映像并部署它。在
Dockerfile
中定义start命令或入口点

更新

我想我明白了,如果我错了,请纠正我:您希望针对运行在Kubernetes中的Android仿真器运行python脚本

正如我所说,我对Kubernetes不是很坚定,但是你不能将Android模拟器作为init容器运行,而将python脚本本身放在“main”容器中吗


如本文所述:

当我在create CMD运行python时,模拟器没有运行好的,我不确定我是否理解正确,因为我对kubernetes不太坚定,对您的设置也不太认同。我对你的理解正确吗:你必须首先确保有一个android模拟器在运行。在你的python脚本之前,但这两个东西都在同一个docker容器中运行?确切地说,这是可能的吗?我不确定具体怎么做,但这是可能的。我想你可以看看这里的描述。我认为这是一个很好的起点。基本上,我认为您需要做的是检查模拟器是否正在运行。也许您使用的docker容器可以提供此信息。否则,您必须编写自己的脚本来检查这一点,比如针对它启动一些请求,如果失败,则表示容器尚未启动。