快速搭建composer內網代碼倉庫

下面由composer教程欄目給大家介紹docker怎么搭建內網composer satis代碼倉庫,希望對需要的朋友有所幫助!

快速搭建composer內網代碼倉庫

搭建composer內網代碼倉庫

拉取 composer/satis 鏡像

docker pull composer/satis

配置 composer

該步驟可跳過

目錄結構

├── auth.json ├── cache │   ├── files │   ├── repo │   └── vcs ├── composer.json └── config.json

composer.json

{ }

config.json

{     "config": {         "secure-http": false,         "optimize-autoloader": false,         "preferred-install": "dist",         "sort-packages": true,         "platform": {         }     },     "repositories": {         "packagist": {             "type": "composer",             "url": "https://mirrors.aliyun.com/composer/"         }     } }

構建模塊擴展

目錄結構

├── config.json ├── public │   ├── dist │   │   ├── bpc │   │   └── zhanghuizong │   ├── include │   │   └── all$f3811758e4611a4dfc1a96f4d1c06da09cdbe199.json │   ├── index.html │   └── packages.json └── satis.sh

config.json

{     "name": "composer_satis_test",     "homepage": "http://local.satis.com",     "repositories": [         {             "type": "git",             "name": "zhanghuizong/composer_satis_test",             "url": "https://gitee.com/zhanghuizong/composer_satis_test.git"         }     ],     "require": {         "zhanghuizong/composer_satis_test": "*"     },     "archive": {         "directory": "dist",         "format": "tar",         "skip-dev": true,         "prefix-url": "http://local.satis.com"     } }
關鍵詞 描述
repositories 指定去哪獲取包
require 指定獲取哪些包,如果想獲取所有包,使用require-all: true
archive.directory output-dir 即使build的輸出目錄
archive.format 可選,默認:zip, 支持兩種壓縮格式:zip,tar。build時采用的壓縮格式
archive.skip-dev 可選,默認情況下為false,啟用時(true)satis不會為分支機構創建下載
archive.prefix-url 可選的下載位置,主頁(來自satis.json),默認情況下是目錄

官網說明:https://docs.phpcomposer.com/articles/handling-private-packages-with-satis.html
github代碼:https://github.com/composer/satis

shell 腳本

satis.sh

#!/usr/bin/env bash  docker run --rm --init -it -v "$(pwd)"/config.json:/satis.json:ro  -v "$(pwd)"/public/:/build  -v /mnt/d/workspaces/docker-config/composer/:/composer  composer/satis build /satis.json /build "$@"

增加快捷訪問

編輯文件:vi ~/.bashrc

alias satis='docker run --rm --init -it -v "$(pwd)"/config.json:/satis.json:ro -v "$(pwd)"/public/:/build -v /mnt/d/workspaces/docker-config/composer/:/composer composer/satis build /satis.json /build'

用法

# 構建所有代碼倉庫模塊 sh satis.sh  # 安裝指定模塊 sh satis.sh zhanghuizong/composer_satis_test

注意

指定模塊安裝,repositories 節點中必須配置 name 字段,同時與 require 節點配置對應上

nginx 配置

server {         listen        80;         server_name  local.satis.com;         root   "/data/httpd/docker-config/composer_satis/test/public/";         location / {             index index.php index.html;         }          location ~ .php(.*)$ {             fastcgi_pass   php:9000;             fastcgi_index  index.php;             fastcgi_split_path_info  ^((?U).+.php)(/?.+)$;             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;             fastcgi_param  PATH_INFO  $fastcgi_path_info;             fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;             include        fastcgi_params;         } }

快速搭建composer內網代碼倉庫快速搭建composer內網代碼倉庫

以上就是快速搭建

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享