You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+21-15Lines changed: 21 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -135,32 +135,38 @@ scrcpy -s localhost:5555
135
135
136
136
> **Note:** Ensure `scrcpy` is installed on your host machine. [Installation Guide](https://github.com/Genymobile/scrcpy#installation)
137
137
138
-
### Customizing Device Screen
138
+
##⚙️ **Environment Variables**
139
139
140
-
The emulator's display can be adjusted with environment variables:
140
+
| Variable | Description | Default |
141
+
| --- | --- | --- |
142
+
|`DNS`| Private DNS server used inside the emulator |`one.one.one.one`|
143
+
|`RAM_SIZE`| RAM in megabytes allocated to the emulator |`4096`|
144
+
|`SCREEN_RESOLUTION`| Screen size in `WIDTHxHEIGHT` format (e.g. `1080x1920`) | device default |
145
+
|`SCREEN_DENSITY`| Screen pixel density in DPI | device default |
146
+
|`ROOT_SETUP`| Set to `1` to enable rooting and Magisk. Can be turned on after the first start but cannot be undone without recreating the data volume. |`0`|
147
+
|`GAPPS_SETUP`| Set to `1` to install PICO GAPPS. Can be turned on after the first start but cannot be undone without recreating the data volume. |`0`|
141
148
142
-
-`SCREEN_RESOLUTION` (optional): sets the screen size in `WIDTHxHEIGHT` format.
143
-
-`SCREEN_DENSITY` (optional): overrides the device pixel density in DPI.
144
-
145
-
Configure these variables in your `docker-compose.yml` file (the provided example contains commented entries for reference). If `SCREEN_RESOLUTION` or `SCREEN_DENSITY` are omitted, the emulator uses its default settings.
146
149
147
150
## 🔄 **First Boot Process**
148
151
149
152
The first time you start the container, it will perform a comprehensive setup process that includes:
150
153
151
154
1.**AVD Creation:** Creates a new Android Virtual Device running Android 30 (Android 11)
152
-
2.**Installing PICO GAPPS:** Adds essential Google services to the emulator
153
-
3.**Rooting the Device:** Performs multiple reboots to:
155
+
2.**PICO GAPPS Installation**(when `GAPPS_SETUP=1`): Adds essential Google services.
156
+
3.**Rooting the Device** (when `ROOT_SETUP=1`): Performs multiple reboots to:
154
157
- Disable AVB verification
155
158
- Remount system as writable
156
-
- Install root access via the rootAVD script
157
-
- Install PICO GAPPS components
158
-
- Configure optimal device settings
159
+
- Install Magisk for root access
160
+
- Reboot to apply root
161
+
4.**Extras Copied:** Pushes everything from the `extras` directory to `/sdcard/Download` so files like APKs or Magisk modules are ready for manual installation on the device.
162
+
5.**Configuring optimal device settings**
163
+
164
+
`ROOT_SETUP` and `GAPPS_SETUP` are checked on every start. If you enable them after the first boot, the script installs the requested components once and marks them complete so they won't run again. Removing them later requires recreating the data volume.
159
165
160
166
> **Important:** The first boot can take 10-15 minutes to complete. You'll know the process is finished when you see the following log output:
161
167
> ```
162
168
> Broadcast completed: result=0
163
-
> Sucess !!
169
+
> Success !!
164
170
> 2025-04-22 13:45:18,724 INFO exited: first-boot (exit status 0; expected)
165
171
> ```
166
172
@@ -196,7 +202,7 @@ This includes:
196
202
-[ ] Support for additional Android versions
197
203
-[x] Integration with CI/CD pipelines
198
204
-[ ] Support ARM64 CPU architecture
199
-
-[x]Preinstall PICO GAPPS
205
+
-[x] PICO GAPPS installation
200
206
-[x] Support Magisk
201
207
-[x] Adding web interface of [scrcpy](https://github.com/Shmayro/ws-scrcpy-docker)
202
208
-[x] Redirect all logs to container stdout/stderr
@@ -217,8 +223,8 @@ This includes:
217
223
218
224
- **First Boot Taking Too Long:**
219
225
- This is normal, as the first boot process needs to perform several operations including:
220
-
- Installing GAPPS
221
-
- Rooting the device
226
+
- Installing GAPPS (if enabled)
227
+
- Rooting the device (if enabled)
222
228
- Configuring system settings
223
229
- The process can take 10-15 minutes depending on your system performance
224
230
- You can monitor progress with `docker logs -f dockerify-android`
0 commit comments