Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да завърша този SSH тунел от докер за локална разработка до етапна база данни

Ако искате PHP контейнерът да има постоянен SSH тунел към вашата отдалечена база данни, можете да промените COMMAND на Dockerfile израз (приемайки ENTRYPOINT е обвивка), за да използвате скрипт, който създава SSH тунел във фонов режим, подобно на това, което вие ръчно изчаквате SSH тунела и след това продължавате да изпълнявате каквото искате да стартирате.

Във въпроса ви липсват подробности за това, което се опитвате да постигнете (постоянен тунел? само по време на тестване? и т.н.)

Пример за такъв скрипт:

# 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
# ...

Бих предложил да обмислите различен път -
Създайте нова услуга във файла за съставяне на докери, който е предназначен за отваряне на тунел, и след това се свържете с тази услуга от вашата PHP услуга.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ъгъл на базата данни:Ръководство за начинаещи за системите за съхранение на Mysql

  2. Начини за избягване на несинхронизиране на командите на MySQLdb; не можете да стартирате тази команда сега (2014) изключение

  3. Най-добри практики за съхранение на банкова информация в база данни

  4. MySQL външни ключове

  5. $this->db->insert_id() не работи в mysql codeigniter