Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Start with one headless browser session in a pinned Selenium standalone Docker image, capture screenshots, then measure memory use on your actual pages before increasing concurrency. There is no India-specific Selenium command: the important local factors are the server’s CPU architecture, resource limits, and whether the chosen browser image supports that architecture. Official Selenium materials do not establish a universal minimum RAM figure for a particular screenshot workload.

How do I run Selenium headless on a Linux server?

A standalone Selenium container is a practical starting point for a server because it packages the browser and exposes a WebDriver endpoint. Check the host and image compatibility first, then use a pinned full image tag rather than a floating latest tag. SeleniumHQ documents standalone Chrome and Firefox images; confirm the current tag and architecture support in the Docker Selenium README, since both change over time.

Check the server before choosing an image

  • Record the Linux distribution and CPU architecture: typically amd64/x86_64 or arm64/aarch64.
  • Check physical or virtual memory limits, swap, available disk, and any container memory limits.
  • Confirm that the exact Selenium browser image tag is published for the host architecture. Do not assume an amd64 image is available for ARM64; the project warns against AMD64 emulation on ARM64.
  • For an India-hosted server, consider the location’s latency and your team’s data-residency and operational needs. Confirm provider region and terms directly; these vary by provider and are not determined by Selenium.

Start one pinned standalone browser

Replace the tag placeholder with a current, fully specified image tag supported on your architecture:

docker run --rm 
  --shm-size=2g 
  -p 4444:4444 
  selenium/standalone-chrome:<pinned-full-tag>

SeleniumHQ documents --shm-size=2g as a known browser-container workaround, while describing it as an arbitrary value that may need tuning. It configures shared memory; it does not mean the host needs exactly 2 GB of total RAM, nor guarantee that the setting is optimal for your workload. See the current project guidance before deployment.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Sale
UGREEN NAS DH2300 2-Bay for Beginners & Personal Users, Phone Backup
  • Entry-level NAS Personal Storage:UGREEN NAS DH2300 is your first and best NAS made easy. It is designed for beginners who want a simple, private way to store videos, photos and personal files, which is intuitive for users moving from cloud storage or external drives and move away from scattered date across devices. This entry-level NAS 2-bay perfect for personal entertainment, photo storage, and easy data backup (doesn't support Docker or virtual machines).
  • Set Your Devices Free, Expand Your Digital World: This unified storage hub supports massive capacity up to 64TB.*Storage drives not included. Stop Deleting, Start Storing. You can store 22 million 3MB images, or 2 million 30MB songs, or 43K 1.5GB movies or 67 million 1MB documents! UGREEN NAS is a better way to free up storage across all your devices such as phones, computers, tablets and also does automatic backups across devices regardless of the operating system—Window, iOS, Android or macOS.
  • The Smarter Long-term Way to Store: Unlike cloud storage with recurring monthly fees, a UGREEN NAS enclosure requires only a one-time purchase for long-term use. For example, you only need to pay $459.98 for a NAS, while for cloud storage, you need to pay $719.88 per year, $2,159.64 for 3 years, $3,599.40 for 5 years. You will save $6,738.82 over 10 years with UGREEN NAS! *NAS cost based on DH2300 + 12TB HDD; cloud cost based on 12TB plan (e.g. $59.99/month).
  • Blazing Speed, Minimal Power: Equipped with a high-performance processor, 1GbE port, and 4GB RAM on Board, this NAS handles multiple tasks with ease. File transfers reach up to 125MB/s—a 1GB file takes only 8 seconds. Don't let slow clouds hold you back; they often need over 100 seconds for the same task. The difference is clear.
  • Let AI Better Organize Your Memories: UGREEN NAS uses AI to tag faces, locations, texts, and objects—so you can effortlessly find any photo by searching for who or what's in it in seconds. It also automatically finds and deletes similar or duplicate photo, backs up live photos and allows you to share them with your friends or family with just one tap. Everything stays effortlessly organized, powered by intelligent tagging and recognition.

Headless execution removes the need for a graphical display server in this setup. SeleniumHQ says a headless browser does not need Xvfb and documents SE_START_XVFB=false for disabling its startup. Follow the README’s version-specific Chrome instructions. Do not disable Xvfb unless the browser is actually launched headlessly; otherwise startup can fail. Headless mode is not a promise of negligible memory use or a fixed memory saving.

How can I take screenshots with Selenium in Python?

Install the Selenium Python client in the environment that runs your tests. Start the container above, then use Remote WebDriver at http://localhost:4444 if the Python process runs on the host. If it runs in another container, connect to the browser service by its reachable Docker network hostname; localhost would refer to the client container itself.

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("--headless")
driver = webdriver.Remote(
    command_executor="http://localhost:4444",
    options=options,
)
try:
    driver.set_window_size(1365, 900)
    driver.get("https://example.com")
    # Add an application-specific readiness wait here when needed.
    driver.save_screenshot("screenshot.png")
finally:
    driver.quit()

The screenshot API saves the current browser context to a file; Selenium also supports screenshots of an individual element. See the official Selenium interactions documentation. The example combines the documented screenshot and remote-session patterns; it is not a measured recipe for a specific server or package version.

Rank #2
Pixiecube Linux Commands Line Mouse pad - Extended Large Cheat Sheet Mousepad. Shortcuts to Kali/Red Hat/Ubuntu/OpenSUSE/Arch/Debian/Unix Programmer. XXL Non-Slip Gaming Desk mat
  • LINUX COMMANDS. ZERO SEARCHING. – Keep essential Linux and Unix command lines directly beneath your fingertips, so you can code, troubleshoot and work faster without breaking focus.
  • YOUR DESK. SMARTER. – Commands are clearly grouped by networking, directory navigation, processes, users, files and system management for quick answers exactly when you need them.
  • BUILT FOR EVERY LINUX USER – A practical go-to reference for beginners and seasoned programmers working with Kali, Red Hat, Ubuntu, openSUSE, Arch, Debian and other distributions.
  • ROOM TO CODE, WORK & PLAY – The extended 31.5 x 11.8-inch Pixiecube desk mat provides ample space for a laptop or keyboard and mouse, while the soft 2 mm surface adds everyday comfort.
  • BUILT FOR REAL-WORLD WORKDAYS – A rugged stitched edge helps prevent fraying, and the water-resistant, stain-resistant surface protects against scratches, spills and everyday wear—because smarter desks should work harder.

For visual regression, choose a deliberate viewport and wait for the page state your test actually needs before capturing. Pages with delayed content, animations, or network-dependent elements may not be visually stable immediately after navigation. Always call quit(), including when a test raises an exception, so sessions do not linger.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How much RAM does Selenium need?

There is no established universal minimum for a server running a particular site or screenshot workload. Memory use depends on the browser, page and its assets, viewport, test actions, and number of concurrent sessions. The documented 2g shared-memory setting is not a total-RAM benchmark.

On a constrained host, begin with one session at a time and measure representative pages on the actual machine. Observe host memory, swap activity, CPU, container restarts, and free disk while tests run. Add parallel sessions only when the measured peak leaves enough headroom for the host and other services. If one session is unstable under representative load, investigate the page, limits, browser compatibility, and shared memory before adding concurrency.

Rank #3
HPE Hewlett Packard Enterprise ProLiant MicroServer Gen11 Tower Server, Intel Pentium Gold G7400 Processor, 16GB Memory, 1TB HDD Storage, External 180W US Power Supply Smart Choice P74439-005
  • MODEL P74439-005: Compact and affordable HPE ProLiant MicroServer Gen11 powered by Intel Pentium Gold G7400 3.7GHz processor, ideal for file sharing, NAS, and basic business workloads
  • READY OUT OF THE BOX: Includes 16GB DDR5 UDIMM memory (expandable to 128GB), one 1TB SATA 6G Business Critical HDD, embedded Intel VROC SATA, dedicated iLO-M.2 port kit, 180w external power adapter and 1/1/1 warranty for dependable plug-and-play server operation
  • WHISPER-QUIET & SPACE-SAVING: Ultra-compact mini tower design fits easily in small office spaces; supports wall, flat, or vertical placement for deployment flexibility
  • INTEGRATED REMOTE MANAGEMENT: Comes with HPE iLO 6 and embedded TPM 2.0 for secure, license-free remote server administration through shared port access
  • EXPANDABLE DESIGN: Two PCIe slots (including PCIe 5.0) and four LFF-NHP drive bays provide robust options for storage and component scalability. Features new MR408i-p controller support for enhanced storage performance

Can I run Selenium in Docker on a VPS?

Yes, provided Docker is available and the selected image supports the VPS architecture. A single standalone browser container is simpler than introducing a multi-node Grid when only one session is needed. Keep image tags pinned for repeatability, and retain screenshots, logs, and other needed artifacts on a persistent mounted path if the runner container is disposable. Check file ownership and available disk space.

When parallel execution becomes necessary, compare its time savings against measured memory and CPU use. Selenium Grid has session and resource configuration controls, but a Hub/Node topology adds operational complexity; do not add it before there is a need for parallel sessions. The Grid configuration options describe available controls.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How do I verify that the browser and Grid are healthy?

  • Use a fully tagged Selenium image so the browser and Grid versions remain stable between runs.
  • Match Chrome and ChromeDriver at the major-version level. Selenium’s Chrome documentation says Selenium 4 is compatible with Chrome v75 and newer; recheck current compatibility guidance as browser support evolves.
  • Check the Selenium Grid UI on port 4444 or its /status endpoint. The Grid getting-started guide covers Remote WebDriver, the local endpoint, and health checks.
  • Use container logs and host monitoring together to distinguish browser startup errors, memory pressure, and test failures.

Why does Chrome crash in a Docker container?

Chrome exits or crashes

Check available host memory and container limits, Chrome/ChromeDriver compatibility, and shared-memory configuration. SeleniumHQ identifies --shm-size=2g as a known workaround for browser crashes, but calls the value arbitrary and advises tuning it for the use case. --disable-dev-shm-usage is not a universal memory fix: it changes where shared-memory files are used and can exchange one constraint for another.

The browser fails after Xvfb is disabled

Confirm that browser options really enable headless mode. Disabling the display server without running the browser headlessly can cause startup errors; consult the current Docker Selenium instructions for the image and browser version.

Tests become unstable when run together

Serialize the tests temporarily, check for leftover sessions, and monitor memory and CPU pressure. Restore concurrency only after measuring the target workload under the intended limits.

The image will not start on an ARM server

Inspect the project’s current architecture and browser matrix, then choose a tag published for that architecture. Do not assume emulation will have normal performance or stability; the project cautions against AMD64 emulation on ARM64.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
Sale
KAMRUI Essenx E2 Mini PC, AMD Ryzen 5 3500U(4 Cores, 8 Threads, Up to 3.7GHz), 16GB DDR4(Expandable) 256GB M.2 SSD Micro PC, HDMI+DP Dual 4K@60Hz Display Home/Business/Office Mini Desktop Computers
  • 【Ryzen 5 3500U Processor】KAMRUI Essenx E2 Mini PC is equipped with AMD Ryzen 5 3500U (4-cores/8-threads, up to 3.7GHz) with integrated Radeon Vega 8 Graphics(1200MHz, 8 Core). The 3500U CPU operates at a base frequency of 2.1 GHz and a Boost frequency of 3.7 GHz. This DDR supports upgradable up to 32GB, SSD supports up to 2TB.(NOT INCLUED), KAMRUI E2 3500U Mini PC is ideal for light office work and home entertainment. KAMRUI E2 3500U is more than 35% more powerful and smoother in operation than the Intel N150, 33% faster than Intel N95, 28% performance boost over Intel i3-10110U, and 42% stronger processing power than AMD Ryzen 3 3200U.
  • 【16GB DDR4 & 256GB SSD】The KAMRUI E2 mini computers is equipped with 16GB DDR4(Expandable up to 32GB) for faster multitasking and smooth application switching. 256GB M.2 SSD ensures fast startup times,fast file transfers and plenty of storage space,eliminating slow loading times and ensuring fast responsiveness.Storage space can RAM supports up to 32 GB, SSD supports up to 2TB (Not included)make file storage easier.
  • 【4K Dual Display & USB 3.2 Type-A Port】KAMRUI E2 3500U mini desktop pc is equipped with an HDMI 2.0+DP 1.4 interfaces for faster transmission, Support Dual 4K@60Hz Display, E2 mini desktop computers is ideal for visual home entertainment, home office, conference rooms, etc. USB3.2 Gen1 Type-A Port×2 with a transfer speed of up to 5Gbps (10 times faster than USB 2.0) for efficient data transfer. The RJ45 1000M Gigabit Ethernet Port ensures a stable network connection.
  • 【WiFi+Bluetooth stable connection】The Kamrui E2 micro pc have reliable and stable wireless connection, open websites in seconds, watch movies without buffering and download files smoothly, connect your monitor from WiFi or Ethernet, use a wireless keyboard and mouse through bluetooth, which will be powerful workstation for you.
  • 【Versatile Ports】This KAMRUI E2 Small pc is equipped with HDMI 2.0×1(4K@60Hz)、DP1.4×1(4K@60Hz)、Gigabit Ethernet Port (RJ45, 10/100/1000Mbps) ×1、USB3.2 Gen1 Type-A Port×2(5Gbps)、USB2.0 Type-A Port×2、3.5mm Audio Jack ×1、DC In ×1、Power Button ×1

The screenshot is blank or incomplete

Check that navigation succeeded, wait for the application-specific page state, set the viewport deliberately, and investigate delayed network content or animations. These are diagnostic steps, not guaranteed remedies for every page.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

ScreenshotNeo is a website screenshot API and MCP server. A single GET request can return a PNG, JPEG, WebP, or PDF, without you managing a Selenium browser container for that capture. Its consent-banner, newsletter-popup, and chat-widget cleanup can each be turned off; bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, with the result indicated by X-Page-Verdict and X-Billed headers. AI agents can use its MCP server tools, including take_screenshot, get_page_info, and capture_pdf.

Example cURL request (replace the URL as needed):

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for request options. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.

Frequently Asked Questions

Can Selenium save a screenshot of one element instead of the whole page?

Yes. Selenium’s WebDriver API provides element screenshot methods as well as a screenshot of the current browser context.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Does headless Chrome need Xvfb in Selenium’s Docker image?

SeleniumHQ’s Docker Selenium guidance says headless mode does not need Xvfb; use the version-specific instructions for disabling Xvfb.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.