Fixed several issues and made some enhancement to make it more robust. now pushing to both gitea server and github.
This commit is contained in:
87
README.md
Normal file
87
README.md
Normal file
@@ -0,0 +1,87 @@
|
||||
# Ubuntu Dev Environment
|
||||
|
||||
Multi-arch (`amd64`/`arm64`) Ubuntu Docker images with pre-installed networking, development, and debugging tools. Built for use as a general-purpose dev environment.
|
||||
|
||||
## Available Images
|
||||
|
||||
| Version | Gitea | GitHub |
|
||||
|---------|-------|--------|
|
||||
| 24.04 (latest) | `gitea.ahkhan.me/docker/ubuntu-24.04` | `ghcr.io/ahkhan03/ubuntu-24.04` |
|
||||
| 22.04 | `gitea.ahkhan.me/docker/ubuntu-22.04` | `ghcr.io/ahkhan03/ubuntu-22.04` |
|
||||
| 20.04 | `gitea.ahkhan.me/docker/ubuntu-20.04` | `ghcr.io/ahkhan03/ubuntu-20.04` |
|
||||
|
||||
The `ubuntu:latest` tag points to Ubuntu 24.04.
|
||||
|
||||
## Environment Variables
|
||||
|
||||
### SSH
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `ENABLE_SSH` | `true` | Start the SSH server on port 22. Set to `false` to disable. |
|
||||
|
||||
### Startup / Shutdown Commands
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `COMMAND_INIT` | — | Command to run on container startup. The last init command runs in the background to allow signal handling. |
|
||||
| `COMMAND_INIT01`..`COMMAND_INIT99` | — | Additional numbered init commands, executed in order after `COMMAND_INIT`. |
|
||||
| `COMMAND_EXIT` | — | Command to run on container shutdown (before processes are terminated). |
|
||||
| `COMMAND_EXIT01`..`COMMAND_EXIT99` | — | Additional numbered exit commands, executed in order after `COMMAND_EXIT`. |
|
||||
|
||||
### Logging
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `LOG_FILE` | `/dev/null` | Path to a log file to tail. When set, the container's stdout will stream this file. |
|
||||
|
||||
### Mirrors (China)
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `USE_CHINA_MIRRORS` | `false` | Switch apt, pip, and npm to Aliyun mirrors on startup. |
|
||||
|
||||
### Package Updates
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `UPDATE_APT` | `false` | Run `apt update` on startup (with network check). |
|
||||
|
||||
## Usage Examples
|
||||
|
||||
Basic:
|
||||
```bash
|
||||
docker run -d ghcr.io/ahkhan03/ubuntu-24.04
|
||||
```
|
||||
|
||||
With a startup command and SSH:
|
||||
```bash
|
||||
docker run -d -p 2222:22 \
|
||||
-e COMMAND_INIT="echo 'hello from init'" \
|
||||
ghcr.io/ahkhan03/ubuntu-24.04
|
||||
```
|
||||
|
||||
Multiple init/exit commands:
|
||||
```bash
|
||||
docker run -d \
|
||||
-e COMMAND_INIT01="echo 'first'" \
|
||||
-e COMMAND_INIT02="python3 -m http.server 8080" \
|
||||
-e COMMAND_EXIT01="echo 'shutting down'" \
|
||||
ghcr.io/ahkhan03/ubuntu-24.04
|
||||
```
|
||||
|
||||
Without SSH, with China mirrors:
|
||||
```bash
|
||||
docker run -d \
|
||||
-e ENABLE_SSH=false \
|
||||
-e USE_CHINA_MIRRORS=true \
|
||||
ghcr.io/ahkhan03/ubuntu-24.04
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
```bash
|
||||
./build.sh
|
||||
```
|
||||
|
||||
See `./build.sh --help` for configuration options.
|
||||
Reference in New Issue
Block a user