riipandi/altstack

Alpine.js、Laravel和Tailwind。一个替代的全栈开发解决方案。

安装: 43

依赖者: 0

建议者: 0

安全性: 0

星级: 41

关注者: 1

分支: 5

类型:项目

v9.0 2022-02-23 10:52 UTC

This package is auto-updated.

Last update: 2024-09-23 17:17:22 UTC


README

Project Logo

Contribution welcome Total Download Latest Stable Version License

简介

AltStack是一个样板,旨在标准化几乎每个Web应用都需要的大部分设置。通过使用AltStack为您带来一点速度提升,您可以在每个新项目中节省最初的几个小时开发时间。这是使用Tailwind和Alpine.js作为默认预置的Laravel模板,并附带了一些实用的功能。

我正在使用这个模板(几乎是)所有的个人项目和商业项目,但请注意,我们不提供任何支持。我们不会保证代码(尤其是主分支)的稳定性。

简而言之:使用这个模板时,您需要自己负责。

快速开始

至少您需要PHP >= 8.0Nodejs >= 14.19。对于数据库后端,您可以选择PostgreSQL >= 10MySQL >= 5.7MariaDB >= 10.3或任何其他Laravel支持的数据库引擎。此外,您可能还想使用Redis >= 5.x进行会话存储或缓存存储。当使用Laravel Sail进行开发时,可能需要Docker >= 20.10

默认情况下,我使用PostgreSQL作为主数据库。但,您可以通过.env配置文件进行更改。

准备数据库

-- If using PostgreSQL: sudo -u postgres psql
DROP DATABASE IF EXISTS "altstack"; DROP ROLE IF EXISTS "altstack";
CREATE ROLE "altstack" SUPERUSER CREATEDB CREATEROLE LOGIN ENCRYPTED PASSWORD 'passw0rd';
CREATE DATABASE "altstack"; GRANT ALL PRIVILEGES ON DATABASE "altstack" TO "altstack";

-- If using MariaDB 10.x: mysql -uroot -p
DROP USER IF EXISTS `altstack`@`localhost`;
DROP DATABASE IF EXISTS `altstack`; CREATE DATABASE `altstack`;
GRANT ALL PRIVILEGES ON `altstack`.* TO `altstack`@`localhost` 
  IDENTIFIED BY 'passw0rd' WITH GRANT OPTION;

创建新项目

# Use latest version:
composer create-project riipandi/altstack <app_name>

# If you want to use spesific version:
composer create-project riipandi/altstack <app_name> <version>

<app_name>替换为您自己的名称,将<version>替换为发布版本。请参阅发布页面获取版本号。

包版本

版本号将遵循Laravel版本的发布,然后是包发布号

x.y  =>  x is Laravel version, y are AltStack version.
7.5  =>  Laravel 7.x.x, AltStack revision 5.

本地安装

编辑或创建.env文件,然后执行

# Initialize project and dependencies
composer install --no-suggest
sail|php artisan key:generate
sail|php artisan migrate:fresh --seed
sail|php artisan storage:link

# Compiling resources
yarn install --non-interactive
yarn dev

默认用户名为admin,密码为secret

示例部署

# Clone the project
sudo mkdir -p /srv/altstack ; cd $_
sudo chown -R $(whoami): /srv/altstack
git clone git@github.com:riipandi/altstack.git current

# Fix folder permissions
find /srv/altstack/. -type d -exec sudo chmod 0775 {} \;
find /srv/altstack/. -type f -exec sudo chmod 0644 {} \;
sudo chown -R $(whoami): /srv/altstack/current/.git
sudo chmod -R 0777 /srv/altstack/current/{bootstrap/cache,storage}
sudo chown -R webmaster:webmaster /srv/altstack
sudo chmod 0777 /srv/altstack

# Nginx virtualhost
sudo touch /etc/nginx/vhost.d/altstack.conf
cat /srv/altstack/current/stubs/vhost.nginx.stub | \
sudo tee /etc/nginx/vhost.d/altstack.conf > /dev/null
sudo systemctl restart nginx && sudo systemctl status nginx

# Supervisor daemon
sudo touch /etc/supervisor/conf.d/altstack.conf
cat /srv/altstack/current/stubs/supervisor.stub | \
sudo tee /etc/supervisor/conf.d/altstack.conf > /dev/null
sudo supervisorctl reread && sudo supervisorctl update
sudo supervisorctl restart altstack
sudo systemctl status supervisor

安全问题

如果您发现任何与安全相关的问题,请通过riipandi@gmail.com发送电子邮件,而不是使用问题跟踪器。

感谢...

总的来说,我想感谢每一个开源他们的源代码的人,他们为开源社区做出贡献。您的工作意义重大!🌍 ❤️

许可证

本项目为开源软件,许可协议为MIT许可证

本项目中的版权归其贡献者所有。有关更多信息,请参阅许可证文件