/Resources

Mirrors

A curated list of Iranian mirrors for Python packages, Docker images, Linux repositories, and development tools — for fast and reliable access.

Why use mirrors in Iran?

Iranian developers face increasing challenges accessing international package repositories due to restrictions and sanctions. Local mirrors host popular packages, Docker images, and dependencies inside Iran — ensuring faster downloads, reliable access, and uninterrupted workflows, while building a more resilient local tech ecosystem.

Featured mirrors

DevNeeds — NPM Registry

docs

Iranian npm mirror for fast, reliable Node.js package installs (CLI only in browser)

Visit
Usage
npm config set registry https://npm.devneeds.ir/

DevNeeds — Docker Registry

docs

Docker Hub mirror for pulling images without foreign internet

Visit
Usage
docker pull docker.devneeds.ir/library/node:18-alpine

DevNeeds — PyPI Mirror

docs

Python package mirror for pip installs

Visit
Usage
pip install -i https://pypi.devneeds.ir/simple/ django

DevNeeds — HuggingFace

docs

Stable access to models and datasets with caching for large downloads

Visit
Usage
export HF_ENDPOINT=https://hf.devneeds.ir

Dockerfile template

Dockerfile
# Official Node + npm; fall back to DevNeeds if needed
FROM node:18-alpine

WORKDIR /app

RUN npm config set registry https://registry.npmjs.org/ \
 && npm config set fetch-retries 5

COPY package*.json .npmrc ./
RUN npm install --legacy-peer-deps \
 || (npm config set registry https://npm.devneeds.ir/ \
     && npm install --legacy-peer-deps)

COPY . .
RUN npm run build

EXPOSE 3000
CMD ["npm", "start"]

Default registry is https://registry.npmjs.org/. If the official registry is unreachable, the Dockerfile falls back to npm.devneeds.ir.

Back to home