Streamlined the entrypoint script.
This commit is contained in:
47
scripts/bin/configure-china-mirrors
Normal file
47
scripts/bin/configure-china-mirrors
Normal file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Configure Chinese mirrors (Aliyun) for apt, pip, and npm
|
||||
# Can be called independently or during container initialization
|
||||
|
||||
set -e
|
||||
|
||||
echo "Configuring Chinese mirrors (Aliyun) for apt, pip, and npm..."
|
||||
|
||||
# Replace Ubuntu sources with Aliyun mirror
|
||||
if [[ -f /etc/apt/sources.list.d/ubuntu.sources ]]; then
|
||||
sudo sed -i 's|http://archive.ubuntu.com/ubuntu/|https://mirrors.aliyun.com/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources
|
||||
sudo sed -i 's|http://security.ubuntu.com/ubuntu/|https://mirrors.aliyun.com/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources
|
||||
echo "Updated Ubuntu apt sources to use Aliyun mirrors"
|
||||
fi
|
||||
|
||||
# Configure npm registry to use Chinese mirror (npmmirror.com is the recommended mirror)
|
||||
if command -v npm &> /dev/null; then
|
||||
npm config set registry https://registry.npmmirror.com/
|
||||
echo "Configured npm registry to use Chinese mirror (registry.npmmirror.com)"
|
||||
fi
|
||||
# Also set system-wide npm config for all users
|
||||
sudo mkdir -p /etc/npm
|
||||
echo "registry=https://registry.npmmirror.com/" | sudo tee /etc/npm/npmrc > /dev/null
|
||||
# Set for root user as well (for when npm is installed later)
|
||||
sudo mkdir -p /root/.npm
|
||||
echo "registry=https://registry.npmmirror.com/" | sudo tee /root/.npmrc > /dev/null
|
||||
echo "Configured npm registry to use Chinese mirror (registry.npmmirror.com)"
|
||||
|
||||
# Configure pip to use Aliyun mirror
|
||||
sudo mkdir -p /etc/pip
|
||||
echo "[global]
|
||||
index-url = https://mirrors.aliyun.com/pypi/simple/
|
||||
|
||||
[install]
|
||||
trusted-host = mirrors.aliyun.com" | sudo tee /etc/pip/pip.conf > /dev/null
|
||||
echo "Configured pip to use Aliyun mirror"
|
||||
|
||||
# Update apt package cache after changing mirrors
|
||||
echo "Updating apt package cache from new mirrors..."
|
||||
if sudo apt update; then
|
||||
echo "Apt package cache updated successfully from Aliyun mirrors"
|
||||
else
|
||||
echo "Warning: apt update failed, but mirrors are configured"
|
||||
fi
|
||||
|
||||
echo "Chinese mirrors (Aliyun) configuration completed"
|
||||
Reference in New Issue
Block a user