我试图在GKE上运行android模拟器容器。为此,我使用伙伴/码头-android开源。
首先,我试图在本地运行它:
$ sudo docker run --privileged -d -p 6080:6080 -p 5554:5554 -p 4723:4723 -p 5555:5555 -e DEVICE="Samsung Galaxy S6" --name android-container budtmo/docker-android-x86-8.1然后我连接到设备上,使用:
$ adb connect localhost:5555我看到了那个装置:
>> $ adb devices
List of devices attached
localhost:5555 device工作得很好!
,现在我想在GKE上做同样的事情:
这是吊舱:
apiVersion: v1
kind: Pod
metadata:
name: android
labels:
app: android
spec:
containers:
- name: android
image: budtmo/docker-android-x86-8.1
securityContext:
privileged: true
ports:
- containerPort: 6080
- containerPort: 5554
- containerPort: 5555
- containerPort: 4723
env:
- name: DEVICE
value: "Samsung Galaxy S6"这是服务:
apiVersion: v1
kind: Service
metadata:
name: android-service
spec:
ports:
- port: 6080
name: serving
protocol: TCP
- port: 5555
name: srv
protocol: TCP
- port: 5554
name: srv2
protocol: TCP
- port: 4723
name: novnc
protocol: TCP
selector:
app: android
type: LoadBalancer
loadBalancerIp: "35.X.X.X"然后,我试图连接到模拟器(从我的计算机),但在它声称它已连接之后,我没有看到任何附加的设备:
>> $ adb connect 35.X.X.X:5555
connected to 35.X.X.X:5555
>> $ adb devices
List of devices attached
*empty*我还试图从GKE终端本地连接:
adb connect 35.X.X.X:5555
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
connected to 35.X.X.X:5555然后再一次:
>> $ adb devices
List of devices attached
*empty* 知道问题出在哪里了吗?我该怎么解决呢?
发布于 2019-08-09 14:07:07
复制您的步骤,唯一的区别是:我没有指定服务中的loadBalancerIp:
---
apiVersion: v1
kind: Pod
metadata:
name: android
labels:
app: android
spec:
containers:
- name: android
image: budtmo/docker-android-x86-8.1
securityContext:
privileged: true
ports:
- containerPort: 6080
- containerPort: 5554
- containerPort: 5555
- containerPort: 4723
env:
- name: DEVICE
value: "Samsung Galaxy S6"
---
apiVersion: v1
kind: Service
metadata:
name: android-service
spec:
ports:
- port: 6080
name: serving
protocol: TCP
- port: 5555
name: srv
protocol: TCP
- port: 5554
name: srv2
protocol: TCP
- port: 4723
name: novnc
protocol: TCP
selector:
app: android
type: LoadBalancer其结果是,只要有yaml,一切都能按预期工作:
kubectl get po,svc
NAME READY STATUS RESTARTS AGE
pod/android 1/1 Running 0 14m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/android-service LoadBalancer 10.0.1.238 *.*.*.54 6080:31952/TCP,5555:30822/TCP,5554:30806/TCP,4723:30248/TCP 14m来自本地电脑:
adb connect *.*.*.54:5555
already connected to *.*.*.54:5555
adb devices
List of devices attached
*.*.*.54:5555 offline
emulator-5554 device
localhost:5555 devicehttps://stackoverflow.com/questions/57322523
复制相似问题