PackVault 是一款 PHP 私有包管理面板,目前支持 Github 和 Gitee,理论上可以支持所有 git 协议平台。
packvault 可以给个 star✨ 支持下,如果遇到问题也可以 issue 反馈
如果你有管理保护自己的 composer 包的需求,可以使用它。
#私有包存储域名
PACKVAULT_DOMAIN=
#是否使用广播,默认不使用。如果使用广播,需要配置 reverb,项目自动安装了 reverb
PACKVAULT_USE_BROADCAST=
REVERB_APP_ID=
REVERB_APP_KEY=
REVERB_APP_SECRET=
REVERB_HOST="127.0.0.1"
REVERB_PORT=8001
REVERB_SCHEME=http
REVERB_SERVER_PATH=
#Github配置
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GITHUB_CALLBACK=
#Gitee配置
GITEE_CLIENT_ID=
GITEE_CLIENT_SECERT=
GITEE_CALLBACK=
# Gitea 配置(暂时保留)
GITEA_CLIENT_ID==
GITEA_CLIENT_SECERT=
# Gitea域名,Gitea 一般都是 self host,所以这里配置平台域名就可以了
GITEA_INSTANCE_URI=
composer install
npm install
php artisan migrate
php artisan db:seed
php artisan key:generate
# 启动本地开发命令
composer run dev
# 启动本地队列,启动下面的命令
php artisan queue:listen --timeout=3000
# 如果配置好了 Reverb,本地配置启动下面的命令
php artisan reverb:start --host="127.0.0.1" --port="8001" --debug
记得修改默认登录用户
由于 Gitee 的限制,需要定时重新获取 Gitee 的 Access token,所以需要重新获取
* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1
server
{
listen 443 ssl http2;
server_name 你的域名;
index index.html index.php index.htm default.php default.htm default.html;
root /你的项目/public;
ssl_certificate 你的证书 pem; # pem文件的路径
ssl_certificate_key 你的证书 key; # key文件的路径
# ssl验证相关配置
ssl_session_timeout 5m; #缓存有效期
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
# 这里根据实际访问 URL 配置,这里只是一个示例
location ~ ^/packvault {
# config('packvault.path') 目录,用来访问包的
alias /你的项目/storage/packvault;
index index.html index.php index.htm default.php default.htm default.html;
try_files $uri $uri/index.html =404;
}
# reverb 配置
location ~ ^/apps? {
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header Scheme $scheme;
proxy_set_header SERVER_PORT $server_port;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
# 转发到 reverb 配置的端口
proxy_pass reverb:端口;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# PHP 支持
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# 可选:防止访问敏感文件
location ~* \.(env|log|git) {
deny all;
return 404;
}
access_log /var/log/nginx/xxxx_access.log;
error_log /var/log/nginx/xxxx_error.log;
}
{
"repositories": [
{
"type": "composer",
"url": "你的域名/packvault", // 这个根据 nginx 配置实际修改
"only-dist": true,
"options": {
"ssl": {
"verify_peer": false,
"verify_peer_name": false
}
}
}
]
}
这个厉害,值得学习
欢迎使用 反馈
mark,好东西,说不定有机会用上
欢迎使用 反馈