docs: Update documentation for modernization changes
- Update readme.hints.md with Ubuntu 24.04 upgrade notes, package changes, MongoDB 8.0 details, and corrected NVM/Node version references - Update readme.md with Ubuntu 24.04 tag description and adjusted image sizes
This commit is contained in:
40
readme.md
40
readme.md
@@ -25,12 +25,10 @@ Perfect for complex builds requiring native dependencies and maximum compatibili
|
||||
|
||||
| Tag | Description | Use Case |
|
||||
|-----|-------------|----------|
|
||||
| `:latest` / `:lts` | Node.js LTS with NVM | General purpose, production builds |
|
||||
| `:stable` | Node.js stable release | Latest stable features |
|
||||
| `:latest` | Node.js LTS with NVM (Ubuntu 24.04) | General purpose, production builds |
|
||||
| `:lts` | Based on latest | Explicit LTS naming |
|
||||
| `:npmci` | With npmci preinstalled | CI/CD pipelines |
|
||||
| `:npmts` | npmci + npmts | TypeScript projects |
|
||||
| `:npmpage` | npmci + npmts + npmpage | Static site generation |
|
||||
| `:mongo` | npmci + npmts + MongoDB | Full-stack development |
|
||||
| `:stableinit` | Stable initialization base | Init scripts |
|
||||
|
||||
### Alpine-Based Images (Lightweight & Multi-Arch) ⚡
|
||||
|
||||
@@ -41,6 +39,7 @@ Perfect for complex builds requiring native dependencies and maximum compatibili
|
||||
| `:alpine-node` | Node.js LTS + NVM + pnpm | ~200MB | amd64, arm64 |
|
||||
| `:alpine-deno` | Node.js LTS + NVM + Deno | ~180MB | amd64, arm64 |
|
||||
| `:alpine-bun` | Node.js LTS + NVM + Bun | ~150MB | amd64, arm64 |
|
||||
| `:alpine-npmci` | Alpine Node + npmci + build tools | ~250MB | amd64, arm64 |
|
||||
|
||||
**✨ Multi-architecture magic:** Docker automatically selects the right image for your platform. Build on Mac, deploy on Linux servers—same Dockerfile, native speed everywhere.
|
||||
|
||||
@@ -260,31 +259,34 @@ nvm use 18
|
||||
|
||||
## 🏗️ Building Multi-Architecture Images
|
||||
|
||||
For teams building custom images:
|
||||
This project uses [@git.zone/tsdocker](https://code.foss.global/git.zone/tsdocker) for Docker image management.
|
||||
|
||||
```bash
|
||||
# Clone the repo
|
||||
git clone https://github.com/HostToday/ht-docker-node.git
|
||||
cd ht-docker-node
|
||||
# Install tsdocker
|
||||
pnpm install -g @git.zone/tsdocker@latest
|
||||
|
||||
# Build Alpine images (native platform for local testing)
|
||||
chmod +x build-alpine-images.sh
|
||||
./build-alpine-images.sh
|
||||
# List all discovered Dockerfiles and their tags
|
||||
tsdocker list
|
||||
|
||||
# Test the built images
|
||||
chmod +x test-alpine-images.sh
|
||||
./test-alpine-images.sh
|
||||
# Build all images (multi-arch: amd64 + arm64)
|
||||
tsdocker build
|
||||
|
||||
# Test all images
|
||||
tsdocker test
|
||||
|
||||
# Push to a specific registry
|
||||
tsdocker push code.foss.global
|
||||
```
|
||||
|
||||
### Production Multi-Arch Builds
|
||||
### Manual Builds
|
||||
|
||||
For publishing to registries:
|
||||
For building individual images manually:
|
||||
|
||||
```bash
|
||||
# Build for both amd64 and arm64, push to registry
|
||||
docker buildx build \
|
||||
--platform linux/amd64,linux/arm64 \
|
||||
-f Dockerfile_alpine_node \
|
||||
-f Dockerfile_alpine-node \
|
||||
-t your-registry/your-image:alpine-node \
|
||||
--push \
|
||||
.
|
||||
@@ -463,7 +465,7 @@ USER node
|
||||
|
||||
| Feature | Ubuntu `:latest` | Alpine `:alpine-node` |
|
||||
|---------|------------------|----------------------|
|
||||
| Base Size | ~800MB | ~200MB |
|
||||
| Base Size | ~900MB | ~200MB |
|
||||
| Build Tools | ✅ Full | ⚠️ Install separately |
|
||||
| Compatibility | ✅ Maximum | ✅ Good (musl) |
|
||||
| Multi-arch | ❌ amd64 only | ✅ amd64, arm64 |
|
||||
|
||||
Reference in New Issue
Block a user