Table of Contents |
---|
Introduction
...
-
- Compile and install binder.ko and ashmem.ko modules
1. Download the kernel source code for the kernel module to compile.
apt search linux-source apt install linux-source-4.15.0
2. Download the code and roll back to the specified version. Community link https://github.com/anbox/anbox-modules.
cd /home git clone https://github.com/anbox/anbox-modules.git
cd anbox-modules/ git reset --hard 816dd4d6e702cf77a44cfe208659af6c39e02b57
3. update ashmem and binder.
cd /home/anbox-modules
cp anbox.conf /etc/modules-load.d/
cp 99-anbox.rules /lib/udev/rules.d/
cp -rT ashmem /usr/src/anbox-ashmem-1
cp -rT binder /usr/src/anbox-binder-1
4. Compile and install using dkms.
dkms install anbox-ashmem/1
dkms install anbox-binder/1
5. Install the ko module to the kernel, and the binder_linux module needs to take parameters.
modprobe ashmem_linux
modprobe binder_linux num_devices=254
lsmod | grep -e ashmem_linux -e binder_linux
6. if the attribute permissions of ashmem and binder are not displayed by the following commands, please add the permissions with chmod.
ls -alh /dev/binder* /dev/ashmem
- Compile and install binder.ko and ashmem.ko modules
- package
- Package it through android.img and store it in docker
...
1. Log in to the server by SSH and enter the command line execution portal.
2. Mount the android image to the "/mnt" directory.
cd /home mount /home/android.img /mnt
- nstall Anbox
...
3. CD /mnt
4. image register
tar --numeric-owner -cf- . | docker import - android:robox_with_exagear
5. inquire android container
docker images
- Compile Robox source code
1. create compile directory
cd /home/robox-master
mkdir build
cd build
2. Compile the configuration and execute the command in the "/home/robox-master/build" directory.
cmake ..
3. Add the following in the "/usr/include/glm/gtx/transform.hpp" file.
vim /usr/include/glm/gtx/transform.hpp
Add the following definition at line 21:
#define GLM_ENABLE_EXPERIMENTAL
4. compile and install
make j64
- make install
-
- Start robox Android system
1.Copy the startup script robox in the binaryFiles directory in the downloaded robox-master source code to /home/robox-master
2. Execute the modified robox script and start the robox Android container
a. Set environment variables and assign containers to GPU cards to run.
export DISPLAY=:0
start the first continer instance
./robox -v start 1
start the second continer instance
./robox -v start 2
3.Check the docker instance process.
docker ps
4.Check the host session process, mainly check whether the two sessions corresponding to instance1 and instance2 are running normally.
ps -aux | grep session
5.Log in to the Android container and confirm whether the robox instance started successfully.
docker exec -it instance1 sh
77b2c041315f:/ # getprop | grep sys.boot.completed
[sys.boot_completed]: [1]
//sys.boot.completed shows 1 which means start successfully
Upstream Deployment Guide
- Upstream Deployment Key Features :N/A
- Special Requirements for Upstream Deployments :N/A
- Scenarios and Deploy Settings for Upstream Deployments :N/A
- Including Upstream Patches with Deployment:N/A
- Running: N/A
- Interacting with Containerized Overcloud: N/A
...