DevOps
Docker Generator
Create a Dockerfile, a docker run command or a full docker-compose.yml from a simple form β no need to remember every flag and YAML key.
Configuration
Copying these before your code lets Docker cache the install step.
One command per line β each becomes a RUN instruction.
Separate several ports with spaces, e.g. 3000 9229.
Written in exec form, e.g. CMD ["npm", "start"]. Use quotes for arguments with spaces.
Dockerfile
FROM node:22-alpine WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . EXPOSE 3000 CMD ["npm", "start"]
Quick tips
- Copy dependency files before your code so rebuilds reuse the cached install layer.
- Alpine and slim images are much smaller than the full ones.
- Add a
.dockerignorethat excludes node_modules, .git and .env files. - Run as a non-root user in production (the Node images ship with a βnodeβ user).
Configuration
host:container, one per line.
host-path-or-volume:container-path, one per line.
KEY=value, one per line. Don't paste real secrets into shared commands.
docker run
docker run -d --name my-container -p 8080:80 --restart unless-stopped nginx:alpine
Common examples
Nginx web server
docker run -d -p 80:80 nginx:alpinePostgreSQL database
docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=change-me -v pgdata:/var/lib/postgresql/data postgres:16Redis cache
docker run -d -p 6379:6379 redis:7-alpine
Services
Project settings
Docker Compose v2 ignores this field. Only set it for the old docker-compose v1 tool.
Custom networks, one per line.
Named volumes, one per line.
Service 1 Β· web
host:container, one per line.
KEY=value, one per line. A bare KEY is read from your shell.
One per line. Named volumes must also be listed under Volumes above.
Service names, one per line.
Network names, one per line.
Healthcheck
Runs through the shell (CMD-SHELL). Start with CMD to use exec form instead.
Build from a Dockerfile
KEY=value, one per line.
Deploy (replicas and resource limits)
docker-compose.yml
services:
web:
image: nginx:alpine
ports:
- "80:80"
Common commands
docker compose up -d- Start all services in the background
docker compose ps- See what's running
docker compose logs -f- Follow the logs
docker compose down- Stop and remove the containers
Three generators
Dockerfile, docker run and Docker Compose in one place. Switching tabs keeps what you typed.
Catches mistakes
Flags bad port mappings, undeclared networks and volumes, unknown depends_on services and more.
Copy or download
Copy the result or download a ready-to-use Dockerfile or docker-compose.yml.
Free Dockerfile and Docker Compose generator
Docker packages your app with everything it needs to run, so it works the same on your laptop, a VPS or a client's server. This generator writes the three files and commands you use most, so you can focus on your app instead of syntax.
What each tab does
- Dockerfile: pick a base image, set the working directory, install steps, exposed port and start command. Dependency files are copied first so Docker can cache the install layer.
- docker run: build a one-line command with ports, volumes, environment variables, network, restart policy and memory/CPU limits. Values with spaces are quoted for bash and zsh.
- Docker Compose: define several services with ports, environment, volumes, depends_on, networks, restart policy, healthchecks, build settings and resource limits.
How to use it
- Choose a tab and fill in the form β the output updates as you type.
- Fix anything listed under βCheck these before you use itβ.
- Copy or download the result. Build with
docker build -t my-app .or start a stack withdocker compose up -d.
Good habits
- Add a
.dockerignoreso node_modules, .git and .env files never end up in your image. - Keep secrets out of Dockerfiles and committed compose files β use an .env file or your host's secret manager.
- Quote port mappings in YAML (the generator does this for you) β unquoted values like 22:22 can be misread as numbers.
Private by design. Everything runs in your browser β nothing you enter is uploaded or stored by AISeekho.
More free tools
- DNS LookupFetch A, AAAA, CNAME, MX, NS and TXT records for any domain.
- SSL Certificate CheckerCheck a site's SSL certificate, issuer, chain and expiry date.
- Cron Expression GeneratorBuild cron schedules, read them in plain English and see the next runs.
- CI/CD Pipeline BuilderDesign pipelines for GitHub Actions, GitLab CI, Jenkins and CircleCI.