A collection of Docker images for development and operational environments. These images are designed to provide consistent and reliable environments for Java development, database operations, and tunneling services.
To build any image locally:
cd <image-directory>
docker build -t <name>:<tag> .For Maven and MVND images that use version arguments:
docker build --build-arg MAVEN_VERSION=3.9.9 -t maven:custom .docker pull shenlw/jre:8
docker pull shenlw/jdk:8
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/jdk:8
docker pull shenlw/jdk:11
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/jdk:11
docker pull shenlw/jdk:17
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/jdk:17
docker pull shenlw/jdk:21
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/jdk:21
docker pull shenlw/jdk:25
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/jdk:25
Maven images with different JDK versions:
- JDK 8:
docker pull shenlw/maven:3-jdk-8 - JDK 11:
docker pull shenlw/maven:3-jdk-11 - JDK 17:
docker pull shenlw/maven:3-jdk-17 - JDK 21:
docker pull shenlw/maven:3-jdk-21 - JDK 25:
docker pull shenlw/maven:3-jdk-25
Also available on Aliyun registry:
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/maven:3-jdk-<version>
Maven Daemon images with different JDK versions:
- JDK 8:
docker pull shenlw/mvnd:0-jdk-8 - JDK 11:
docker pull shenlw/mvnd:0-jdk-11 - JDK 17:
docker pull shenlw/mvnd:0-jdk-17 - JDK 21:
docker pull shenlw/mvnd:0-jdk-21 - JDK 25:
docker pull shenlw/mvnd:0-jdk-25
Also available on Aliyun registry:
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/mvnd:0-jdk-<version>
Complete development environment with multiple JDK versions and Maven.
docker pull shenlw/code:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/code:latest
Use j8, j11, j17, j21, or j25 commands to switch JDK environment.
Ubuntu Playground (NO GUI) for ubuntu command exploration.
docker pull shenlw/ubuntu-playground:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/ubuntu-playground:latest
Container that provides SSH access through ngrok tunneling.
docker pull shenlw/ubuntu-ngrok:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/ubuntu-ngrok:latest
Usage:
docker run -d \
-e SSH_PUBLIC_KEY="your_ssh_public_key" \
-e NGROK_AUTH_TOKEN="your_ngrok_auth_token" \
shenlw/ubuntu-ngrokContainer that provides SSH access through cpolar tunneling.
docker pull shenlw/ubuntu-cpolar:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/ubuntu-cpolar:latest
Usage:
docker run -d \
-e SSH_PUBLIC_KEY="your_ssh_public_key" \
-e CPOLAR_AUTH_TOKEN="your_cpolar_auth_token" \
-e CPOLAR_REGION="us" \
shenlw/ubuntu-cpolarBackup PostgreSQL databases to S3.
docker pull shenlw/postgres-backup-s3:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/postgres-backup-s3:latest
Restore PostgreSQL databases from S3 backups.
docker pull shenlw/postgres-restore-s3:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/postgres-restore-s3:latest
Restore PostgreSQL databases from local backup files.
docker pull shenlw/postgres-restore-file:latest
docker pull registry.cn-shanghai.aliyuncs.com/lwshen/postgres-restore-file:latest
- Dockerfile linting:
hadolint <dockerfile-path> - Version management: Update constants.env for centralized version control