Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso completare questo tunnel SSH dalla finestra mobile di sviluppo locale al database di staging

Se vuoi che il contenitore PHP abbia un tunnel SSH permanente verso il tuo DB remoto, puoi cambiare il COMMAND di Dockerfile istruzione (assumendo il ENTRYPOINT è una shell) per utilizzare uno script che crea il tunnel SSH in background, simile a quello che si fa manualmente, attendere il tunnel SSH e quindi procedere con l'esecuzione di qualsiasi cosa si desideri eseguire.

La tua domanda non ha i dettagli di ciò che stai cercando di ottenere (tunnel permanente? solo durante il test? ecc.)

Un esempio di tale script:

# run ssh in background (notice the "&" at the end)
ssh -4 -R 8888:localhost:8888 [email protected]$DB_HOST -i ~/ident -p $DB_PORT &

# wait for the ssh tunnel if needed
# ...

# run the main command here
# ...

Suggerirei di considerare un percorso diverso -
Crea un nuovo servizio nel file docker-compose dedicato all'apertura di un tunnel, quindi connettiti a quel servizio dal tuo servizio PHP.