Skip to content

Commit b57a570

Browse files
committed
chore(doc): update doc to match last features
1 parent fb1a964 commit b57a570

3 files changed

Lines changed: 26 additions & 111 deletions

File tree

README.md

Lines changed: 23 additions & 109 deletions
Original file line numberDiff line numberDiff line change
@@ -5,45 +5,41 @@
55
![GitHub Issues](https://img.shields.io/github/issues/shmayro/dockerify-android)
66
![GitHub Stars](https://img.shields.io/github/stars/shmayro/dockerify-android?style=social)
77

8-
**Dockerify Android** is a Dockerized Android emulator supporting multiple CPU architectures (**x86** and **arm64**) with native performance and seamless ADB access. It allows developers to run Android virtual devices (AVDs) efficiently within Docker containers, facilitating scalable testing and development environments.
8+
**Dockerify Android** is a Dockerized Android emulator supporting multiple CPU architectures (**x86** and **arm64** in the near future ...) with native performance and seamless ADB access. It allows developers to run Android virtual devices (AVDs) efficiently within Docker containers, facilitating scalable testing and development environments.
99

1010
## 🏠 **Homepage**
1111

1212
[Project Homepage URL if available]
1313

1414
## 📜 **Table of Contents**
1515

16-
- [Features](#features)
17-
- [Prerequisites](#prerequisites)
18-
- [Installation](#installation)
19-
- [Using Pre-built Docker Images](#using-pre-built-docker-images)
20-
- [Build the Docker Image](#build-the-docker-image)
21-
- [Run the Docker Container](#run-the-docker-container)
22-
- [Usage](#usage)
23-
- [Connect to Android VM from the Host](#connect-to-android-vm-from-the-host)
24-
- [Connect to Android VM from a Remote Machine](#connect-to-android-vm-from-a-remote-machine)*
25-
- [Roadmap](#roadmap)
26-
- [Troubleshooting](#troubleshooting)
27-
- [Contributing](#contributing)
28-
- [License](#license)
29-
- [Contact](#contact)
16+
- [Features](#-features)
17+
- [Prerequisites](#-prerequisites)
18+
- [Installation](#-installation)
19+
- [Usage](#-usage)
20+
- [Roadmap](#-roadmap)
21+
- [Troubleshooting](#-troubleshooting)
22+
- [Contributing](#-contributing)
23+
- [License](#-license)
24+
- [Contact](#-contact)
3025

3126
## 🔧 **Features**
3227

33-
- **Docker Integration:** Easily deploy the Android emulator within a Docker container.
34-
- **Multi-Architecture Support:** Runs natively on both **x86** and **arm64** CPU architectures.
28+
- **Root and Magisk Preinstalled:** Comes with root access and Magisk preinstalled for advanced modifications.
29+
- **PICO GAPPS Preinstalled:** Includes PICO GAPPS for essential Google services.
3530
- **Seamless ADB Access:** Connect to the emulator via ADB from the host and other networked devices.
3631
- **scrcpy Support:** Mirror the emulator screen using scrcpy for a seamless user experience.
3732
- **Optimized Performance:** Utilizes native CPU capabilities for efficient emulation.
33+
- **Multi-Architecture Support:** Runs natively on both **x86** and **arm64** CPU architectures.
34+
- **Docker Integration:** Easily deploy the Android emulator within a Docker container.
3835
- **Easy Setup:** Simple Docker commands to build and run the emulator.
3936
- **Supervisor Management:** Manages emulator processes with Supervisor for reliability.
4037

4138
## 🛠️ **Prerequisites**
4239

4340
Before you begin, ensure you have met the following requirements:
4441
- **Docker:** Installed on your system. [Installation Guide](https://docs.docker.com/get-docker/)
45-
- **Docker Compose:** (Optional) For managing multi-container setups. [Installation Guide](https://docs.docker.com/compose/install/)
46-
- **SSH Access:** To establish SSH tunnels from remote machines.
42+
- **Docker Compose:** For managing multi-container setups. [Installation Guide](https://docs.docker.com/compose/install/)
4743
- **KVM Support:** Ensure your system supports KVM (Kernel-based Virtual Machine) for hardware acceleration.
4844
- **Check KVM Support:**
4945

@@ -55,70 +51,25 @@ Before you begin, ensure you have met the following requirements:
5551

5652
## 🚀 **Installation**
5753

58-
### 🥇 **Using Pre-built Docker Images**
59-
60-
To simplify the setup process, you can use the pre-built Docker image hosted on Docker Hub.
61-
62-
1. **Pull the Pre-built Image:**
54+
To simplify the setup process, you can use the provided [docker-compose.yml](https://github.com/Shmayro/dockerify-android/blob/main/docker-compose.yml) file.
6355

64-
```bash
65-
docker pull shmayro/dockerify-android:latest
66-
```
67-
68-
2. **Run the Pre-built Image:**
69-
70-
```bash
71-
docker run -d \
72-
--name dockerify-android \
73-
--device /dev/kvm \
74-
--privileged \
75-
--network host \
76-
shmayro/dockerify-android:latest
77-
```
78-
79-
> **Note:** This command runs the container in detached mode, grants necessary privileges for KVM, and shares the host's network stack for seamless ADB access.
80-
81-
### 1. **Build the Docker Image**
82-
83-
Clone the repository and navigate to its directory:
56+
1. **Clone the Repository:**
8457

8558
```bash
8659
git clone https://github.com/shmayro/dockerify-android.git
8760
cd dockerify-android
8861
```
8962

90-
Build the Docker image using the provided `Dockerfile`:
63+
2. **Run Docker Compose:**
9164

9265
```bash
93-
docker build -t android-ubuntu .
66+
docker-compose up -d
9467
```
9568

96-
> **Note:** This step may take several minutes as it installs necessary packages and sets up the Android SDK.
97-
98-
### 2. **Run the Docker Container**
99-
100-
Run the Docker container in **host network mode** to allow seamless ADB access:
101-
102-
```bash
103-
docker run -d \
104-
--name android-emulator \
105-
--device /dev/kvm \
106-
--privileged \
107-
--network host \
108-
android-ubuntu
109-
```
110-
111-
> **Flags Explanation:**
112-
> - `-d`: Runs the container in detached mode.
113-
> - `--name android-emulator`: Names the container "android-emulator".
114-
> - `--device /dev/kvm`: Grants the container access to KVM for hardware acceleration.
115-
> - `--privileged`: Provides extended privileges necessary for KVM.
116-
> - `--network host`: Shares the host's network stack, eliminating the need for explicit port mappings.
69+
> **Note:** This command runs the container in detached mode, grants necessary privileges for KVM, and shares the host's network stack for seamless ADB access.
11770
11871
## 📡 **Usage**
11972
120-
### **A. Connect to Android VM from the Host**
121-
12273
1. **Connect via ADB:**
12374
12475
```bash
@@ -142,50 +93,13 @@ Run the Docker container in **host network mode** to allow seamless ADB access:
14293
14394
> **Note:** Ensure `scrcpy` is installed on your host machine. [Installation Guide](https://github.com/Genymobile/scrcpy#installation)
14495
145-
### **B. Connect to Android VM from a Remote Machine**
146-
147-
1. **Establish an SSH Tunnel:**
148-
149-
From your remote machine, set up an SSH tunnel to forward port `5555` to a local port (e.g., `4444`):
150-
151-
```bash
152-
ssh -L 4444:localhost:5555 -C -N -l haroun 192.168.1.18
153-
```
154-
155-
**Flags Explanation:**
156-
- `-L 4444:localhost:5555`: Forwards local port `4444` to `localhost:5555` on the server.
157-
- `-C`: Enables compression.
158-
- `-N`: No remote commands; just forwarding.
159-
- `-l haroun`: Specifies the SSH username.
160-
- `192.168.1.18`: Replace with your server's IP address.
161-
162-
2. **Connect via ADB Using the Tunnel:**
163-
164-
```bash
165-
adb connect localhost:4444
166-
adb devices
167-
```
168-
169-
**Expected Output:**
170-
171-
```
172-
connected to localhost:4444
173-
List of devices attached
174-
localhost:4444 device
175-
```
176-
177-
3. **Use scrcpy to Mirror the Emulator Screen:**
178-
179-
```bash
180-
scrcpy -s localhost:4444
181-
```
182-
18396
## 🚧 **Roadmap**
18497
18598
- [ ] Support for additional Android versions
186-
- [ ] Integration with CI/CD pipelines
99+
- [x] Integration with CI/CD pipelines
187100
- [ ] Support ARM64 CPU architecture
188-
- [ ] Support Magisk
101+
- [x] Preinstall PICO GAPPS
102+
- [x] Support Magisk
189103
190104
## 🐞 **Troubleshooting**
191105

docker-compose.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
services:
22
dockerify-android:
3-
image: dockerify-android
3+
image: shmayro/dockerify-android:latest
4+
build:
5+
context: .
46
ports:
57
- "5555:5555"
68
volumes:

rootAVD

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)