Mam obraz dokera programisty na podstawie Ubuntu: 14.04, którego używam do tworzenia aplikacji dla Ubuntu 14.04. Uruchamiam ten obraz, gdy maszyna uruchamia się z docker start image-name
Jak ustawić bieżący katalog roboczy do uruchamiania dokera z wewnętrzną powłoką bash?
Mój katalog domowy był powiązany z opcją --volumes, gdy został utworzony.
Aby wprowadzić obraz mam alias zdefiniowany w .bash_aliases
alias d_enter="docker exec -ti ub1404-dev /bin/bash"
Tak, aby wprowadzić obraz po prostu wpisać d_enter
Ale często zapominamy, aby uruchomić d_enter po wprowadzeniu długą drogę i chciałby d_enter, aby automatycznie przełączyć się do tego wewnętrznego katalogu.
Poniższe nie działają.
docker exec -ti ub1404-dev /bin/bash <(echo ". ~/.bashrc && cd $(pwd)")
Czy istnieje inny sposób osiągnięcia pożądanego rezultatu?
Na przykład, jeśli bieżący katalog roboczy jest: /home/matt/dev/somepath/blabla
I wpisać d_enter, mój aktualny katalog roboczy obecnie staje: /home/matt
co chcę zrobić dla bieżącego katalogu po Exec być /home/matt/dev/somepath/blabla
To na pewno jest frustrujące, kiedy ludzie downvote bez pozostawienia komentarza. Jeśli jest coś, czego nie rozumiesz, powiedz to, a poprawię pytanie. Pytania podobne do problemów z podsystemem bash, takich jak ten, istnieją i jest to powszechny problem. Próbowałem postępować zgodnie z sugerowanymi odpowiedziami, ale nie działają one w moim przypadku. Chciałbym zrozumieć, dlaczego tak jest – Matt