Привет и добро пожаловать в Super User.
После того, как ssh -L 8888:localhost:8888 ubuntu@address , ваш скрипт обнаружит себя на удаленном сервере.
Вы можете передать флаги -fN в ssh (-f для ответвления в фоновом режиме, а -N - без выполнения команды).
Затем, после того как туннель установлен, ваш сценарий возобновляет выполнение на следующей строке на вашем компьютере.
Недостатком является то, что соединение ssh будет оставаться в фоновом режиме , даже после того, как ваш сценарий закончен.
Обходной путь - отключить флаг -N и выполнить sleep 10 на удаленном сервере:
ssh -f -L 8888:localhost:8888 ubuntu@address sleep 10
Таким образом, если туннель не используется, либо после завершения run_website.sh либо через 10 секунд, если сценарий не будет использовать туннель (т.е. по какой-то причине не будет работать), он автоматически отключится.
Это очевидно предполагает, что run_website.sh использует туннель.
Если вас не интересует автоматическое завершение туннеля, тогда просто используйте -fN:
ssh -fN -L 8888:localhost:8888 ubuntu@address
Вы можете убить процесс ssh позже, если вам нужно.