Composer 镜像原理 (1) —— 初识 Composer

简介: Composer 是一个 PHP 的依赖管理工具,它可以帮助开发者轻松地管理和维护 PHP 项目中的依赖关系。你是否好奇过它的镜像仓库是怎么实现的?本文为你揭晓。

相关文章

何为 Composer

Composer 是 PHP 的依赖管理工具, 你可以在项目的 composer.json 文件中声明所依赖的组件, 它将自动为你安装.

安装 Composer

参考链接

命令行窗口下执行 php -v 检查是否已经正确安装 PHP, 如果没有安装, 安装它, 再把路径加到环境变量 PATH 中.

装完 PHP 再依次执行一下3条命令:

# 下载安装脚本 composer-setup.php 到当前目录
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

# 安装
php composer-setup.php

# 删除安装脚本
php -r "unlink('composer-setup.php');"

一般来说, Composer 我们使用全局安装, 其实就是放到环境变量 PATH 里面, 根据系统执行下面的步骤:

Windows

  1. 进入 PHP 的安装目录 (即 php.exe 所在位置);
  2. 复制 composer.phar 到上述目录;
  3. 新建 composer.bat 文件, 并将下列代码保存到该文件:
@php "%~dp0composer.phar" %*

Linux / Mac

只需移动或者复制 composer.phar 到目录 /usr/local/bin/ 即可, 即:

sudo mv composer.phar /usr/local/bin/composer

全局安装后, 执行以下命令, 如果输出了版本号, 说明 Composer 已经安装成功:

composer --version

配置 Composer 镜像

注意: 目前中国镜像已经失效, 请使用 Laravel China 社区提供的镜像服务.

中国镜像(已失效)

Laravel China 镜像服务

~~Composer 镜像我使用的是中国镜像, 因为速度快, 也非常稳定. ~~镜像的配置分为 全局项目 两种:

全局配置 (推荐)

# 已失效
# composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer config -g repo.packagist composer https://packagist.laravel-china.org

项目配置

composer.json 所在目录, 执行以下命令:

# 已失效
# composer config repo.packagist composer https://packagist.phpcomposer.com
composer config  repo.packagist composer https://packagist.laravel-china.org

此时, composer.json 会多了 repositories 字段 (以 laravel 为例):

{
   
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
   
        "php": ">=5.5.9",
        "laravel/framework": "5.2.*"
    },
    "config": {
   
        "preferred-install": "dist"
    },
    "repositories": {
   
        "packagist": {
   
            "type": "composer",
            "url": "https://packagist.laravel-china.org"
        }
    }
}

OK, 镜像配置完成, 执行下面的命令, 体验飞一般的速度!

composer install

至于为什么变快了, 我会在后续的文章中解释.

相关文章


文章来源于本人博客,发布于 2017-12-05,原文链接:https://imlht.com/archives/64/

目录
相关文章
|
前端开发 Linux PHP
Composer 入门与 Laravel 安装指南
【8月更文挑战第31天】
373 2
|
10月前
|
监控 网络协议 关系型数据库
打造您的网站守护神:Uptime Kuma 的轻松监控之旅!
Uptime Kuma 是一款强大的自托管服务监控工具,支持多种监控方式(HTTP(s)、TCP、Ping等)及丰富的通知功能,帮助用户轻松监控网站和服务的可用性,及时响应问题,保障服务连续性。提供用户友好的界面和灵活的安装选项,包括Docker和源代码构建,适合各种技术背景的用户使用。阿里云还提供了计算巢一键部署方案,简化了Uptime Kuma的安装过程,让用户可以更快地开始使用。
559 2
|
9月前
|
存储 弹性计算 分布式计算
阿里云服务器租用价格:包年包月收费标准与月付、1年、3年活动价格
租用阿里云服务器3个月、6个月、1年、3年多少钱?云服务器收费标准是怎样的?根据目前的价格信息,阿里云特价云服务器价格38元、99元、199元、298元,本文分享阿里云服务器最新的租用费用,包括包年包月的收费标准和月付3个月和6个月以及1年、3年活动价格表。
|
安全 Java Linux
docker阿里云镜像加速
我们都知道因为某些原因我们访问外网都是比较慢的,比如我们使用maven下载依赖时是一个道理,同样的使用docker从docker.hub上下载镜像也是比较慢的。针对这种访问官网比较慢的情况有两种方案,第一种就是使用国内的仓库,第二种就是使用一个加速器。这里我们配置docker的镜像加速从来来实现提速。
13347 1
docker阿里云镜像加速
|
Linux
查看CentOS系统信息
查看CentOS系统信息本文作者:二价亚铁.
139 1
|
机器学习/深度学习 传感器 算法
植保机器人病虫害检测
植保机器人病虫害检测
309 2
|
JSON 网络协议 PHP
PHP写微服务之Hyperf
PHP写微服务之Hyperf
693 0
PHP写微服务之Hyperf
|
存储 关系型数据库 MySQL
史上最全MySQL剖析:优化+存储+查询+索引+复制+可扩展+高可用
在互联网行业,MySQL数据库毫无疑问已经是最常用的数据库,LAMP (Linux +Apache + MySQL + PHP)甚至已经成为专有名词,也是很多中小网站建站的首选技术架构。
数据结构-顺序表-力扣题练习
数据结构-顺序表-力扣题练习
136 1
|
弹性计算 安全 Linux
阿里云服务器搭建宝塔Linux面板流程(新手教程)
阿里云服务器搭建宝塔Linux面板流程(新手教程)阿里云服务器网以CentOS操作系统为例,安装宝塔Linux面板,先远程连接到云服务器,然后执行宝塔面板安装命令,系统会自动安装宝塔面板,安装完成后会返回面板地址、账号和密码,然后在安全组开通宝塔面板端口号
8707 2
阿里云服务器搭建宝塔Linux面板流程(新手教程)

热门文章

最新文章