Comments (8)
Aggiudicato ;-)
from gasdottong.
Non usando personalmente Docker/Sail non saprei dire, ma non mi è chiaro come il tutto possa funzionare eliminando le estensioni PHP e composer... Non sono comunque dipendenze di Sail?
from gasdottong.
Io vedo Docker come una sorta di server esterno (completo con PHP e composer) che condivide una cartella sulla mia macchina e ha gli stessi permessi dentro essa. Per creare questo "server", ho bisogno delle sue caratteristiche che sono definite nel file Dockerfile situato in 'GASdottoNG/code/vendor/laravel/sail/runtimes/8.2/'. Il punto è che la cartella vendor
viene "generata" da composer, quindi quando clono la repository non esiste. Per evitare di dover installare PHP e composer sulla mia macchina locale, potrei semplicemente costruire prima il container e poi utilizzare PHP e composer che vengono installati all'interno. Quindi, quello che stavo pensando era di includere nei commit la cartella sail (vendor/laravel/sail/*) per avere accesso al file Dockerfile
e allo script sail (vendor/bin/sail), così da poter utilizzare il comando sail
invece dei comandi docker
subito dal inizio. Questi file vengono sovrascritti durante gli aggiornamenti, quindi è facile da mantenere, in quanto vengono aggiornati automaticamente da composer in caso di modifiche. Cosa ne pensi?
from gasdottong.
Banalmente descrivere Sail come commandi Docker e Docker-Composer in stille Laravel per Laravel.
from gasdottong.
Mmm... Mi garba veramente poco committare dentro al repository dei contenuti in vendor
...
Capisco il punto, ed effettivamente è contestabile il fatto che Sail sia installabile solo avendo a priori a disposizione gli strumenti di sviluppo, ma del resto Sail stesso viene proposto come uno strumento di sviluppo - non di deploy - dunque evidentemente, nella sua implementazione, non si sono posti il problema di predisporre un Docker auto-definito.
Molto dipende da come intendi il Docker per GASdotto. Se come uno strumento per agevolare lo sviluppo, è ragionevole assumere che PHP e composer siano installati sulla macchina host (se qualcuno vuol partecipare allo sviluppo di GASdotto, almeno quel minimo di strumenti li deve avere). Se come uno strumento per agevolare il deploy e l'installazione autonoma su un proprio server, sarebbe forse meglio lasciar perdere Sail e tornare - come era prima - al Dockerfile (o ad un file per Docker Compose).
from gasdottong.
Capisco perché non ti garba l'idea di committare la cartella vendor, e sinceramente sono d'accordo. Tuttavia, ho suggerito questa soluzione perché sembrava la più semplice e immediata, anche se un po' stupida.
Io lo intendevo come strumento per agevolare lo sviluppo. Principali obbiettivi:
- poter installare il progetto soltanto usando Docker e Docker Compose
- facile da mantenere (idealmente automatizzato)
Personalmente, sono soddisfatto di Sail. L'idea mi è venuta soltanto perché stavo sperimentando con Clear Linux e Laravel. Ho notato che potrei fare a meno di PHP e Composer se avessi Sail. Un'alternativa potrebbe essere uno script che automatizza il processo di recupero dei dati da Sail su GitHub. Comunque riflettendoci meglio, mi rendo conto che questa operazione è necessaria solo una volta e quindi potrebbe non essere così utile.
Se pensi che quest "feature" non è rilevante chiudi pure la issue. :)
from gasdottong.
Mi sembra di aver trovato la soluzione nella documentazione Laravel Installing Composer Dependencies for Existing Applications. Proverò a seguire quella procedura e vedere se funziona. Tuttavia, credo che potrebbe essere la soluzione che stavo cercando.
from gasdottong.
Provato e funziona, se sei d'accordo proved ad aggiornare README.md, unica modifica necessaria. 🙂
from gasdottong.
Related Issues (20)
- Utenti/Gestione quota: la cancellazione di una quota non ha alcun effetto, pur senza segnalazione di errore. Idem se la cancellazione viene fatta da Contsbilità
- Attempt to assignment "target" property on null HOT 4
- Ordini/Dettaglio consegne e Riassunto prodotti: conteggia erroneamente modificatori "passivi"
- Luoghi di consegna: aggiungere un parametro globale per definire la modalità di utilizzo (informativo/filtro) HOT 1
- trattare username come email
- Utenti/Anagrafica: sarebbe un grande impegno aggiungere anche il luogo di nascita oltre alla data?
- Prodotti: uso e impostazione del campo "Variabile" HOT 1
- Ordini/Consegna: non compare più il credito disponibile del socio all'atto del pagamento della Prenotazione
- eliminazione date del calendario
- Ordini: in fase di apertura di nuovo ordine non propone più le date memorizzate con la funzione Gestione date
- Generale: inserire barra rossa in fondo quando si cambia qualcosa nella videata
- controllo valori dei modificatori
- semplificare importazione di listino esportato
- Contabilità: il campo Identificativo non compare in modifica per alcuni tipi movimento e non viene estratto in caso di export
- Generale: per situazioni come quella appena avvenuta non potrebbe essere utile inserire un meccanismo di comunicazione "globale" che permetta di raggiungere tutte le istanze attive di gasdotto?
- pulsante "Elimina" sugli ordini
- Utenti/Esporta CSV: mancano luogo e data di nascita
- Utenti/Export CSV: prevedere l'export dei soli utenti selezionati
- opzione per eliminazione profilo utente
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gasdottong.