Composer イントラネット コード ウェアハウスを構築する
composer/satis imageのプル
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" } }
キーワード | 説明 |
---|---|
リポジトリ | パッケージを取得する場所を指定します |
require | 取得するパッケージを指定します。すべてのパッケージを取得したい場合は、require-all: true## を使用します。 |
output-dir ビルド出力ディレクトリ | |
がオプション、デフォルト: zip、2 つの圧縮形式: zip、tar をサポートします。ビルド時に使用される圧縮形式 | |
オプション、デフォルトでは false、有効 (true) の場合、satis はブランチのブランチを作成しません ダウンロード | |
オプションのダウンロード場所、ホームページ (satis.json から)、デフォルトのディレクトリ |
GitHub コード: https://github.com/composer/Satis
#シェル スクリプト
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
Note
モジュールのインストールを指定します。名前フィールドはリポジトリ ノードで構成する必要があり、必要なノード構成に対応する必要があります
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;
}
}