답변:
나는 최근에 원래의 요지 를 heroku cli 플러그인 으로 바 꾸었습니다 .
다음을 설치하십시오.
heroku plugins:install https://github.com/naaman/heroku-vim
그리고 사용 :
heroku vim
heroku vim
와 명령은 bash 쉘로 당신을 떨어질 것 vim
당신에 설치 $PATH
. 당신이해야 할 일은 heroku vim
대신 손가락을 다시 입력하는 것입니다 heroku run bash
.
hbuild
. git 커밋없이 소스 코드를 변경할 수 있으므로 git 히스토리를 망가 뜨리지 않고 Heroku에서 작업을 시도 할 수 있습니다.
debug-heroku
과 같이 배포 git push heroku debug-heroku:master
합니다..
플러그인을 엉망으로 만들고 싶지 않고 일회용 dyno에서 nano 사본을 원하면 실행하십시오.
mkdir /app/nano
curl https://github.com/Ehryk/heroku-nano/raw/master/heroku-nano-2.5.1/nano.tar.gz --location --silent | tar xz -C /app/nano
export PATH=$PATH:/app/nano
이 플러그인 에서 nano 사본을 다운로드 하여 PATH에 넣습니다.
Error opening terminal: unknown.
거기에 ed
당신이 매저 키스트 인 경우.
ed
?
q
. 삽입 모드 .
에있는 경우 한 줄에 점만 인쇄 한 다음 Enter 키를 눌러 명령 모드로 들어갑니다. en.wikipedia.org/wiki/Ed_(text_editor)#Example
한 세션 동안 vim을 다운로드하고 설치할 수있는 것 같습니다.
#!/usr/bin/env bash
curl https://s3.amazonaws.com/heroku-jvm-buildpack-vi/vim-7.3.tar.gz --output vim.tar.gz
mkdir vim && tar xzvf vim.tar.gz -C vim
export PATH=$PATH:/app/vim/bin
vi
파일 시스템이 일시적이기 때문에 파일을 편집 할 수 있다고해도 문제가 해결되지 않을 것입니다. 의미 ...을 통해 파일을 편집하면 heroku run bash
실제로 다른 dyno에 대한 파일을 변경하는 것이 아닙니다. 모든 dyno의 파일을 변경하려면 Git 리포지토리에서 푸시하는 내용을 변경하거나 빌드 팩을 변경해야합니다. 자세한 내용 :
https://devcenter.heroku.com/articles/oneoff-admin-ps#formation-dynos-vs-oneoff-dynos
heroku run bash
싶으므로 vi / vim이 매우 유용 할 것입니다.
heroku ps:exec
.
heroku ps:exec
), 파일 변경, 서버의 두 번째 인스턴스 시작, 포트를 dyno ( heroku ps:forward 3000
) 로 전달할 수 있습니다. 그런 다음 curl localhost:3000
.
나아만 뉴 볼드 제공하는 플러그인은 더 이상 작업을하지 heroku-16
나는 새로운 만든, 그래서 스택 플러그인을 이 중 업데이트 요점 .
설치:
heroku plugins:install @jasonheecs/heroku-vim
그리고 사용 :
heroku vim
Brian Takita의 답변 링크에 대한 의견에는 Vim 이 Heroku 콘솔에서 작동하도록하는 최신 솔루션이 있습니다 .
https://gist.github.com/dvdbng/7375821b20f189c189ab1bd29392c98e
저에게 많은 시간을 절약했습니다! :)
설치 후 naaman/heroku-vim
다음을 통해 새 임시 다이노를 만들 수 있습니다.heroku vim
. 다른 게시물에서 올바르게 지적했듯이 변경 사항이 전파되지 않기 때문에 브라우저를 통해 볼 때 변경 사항을 볼 수 없지만 실제로 dyno 자체 내부에서 변경 사항을 볼 수 있습니다.
저는 curl을 통해 "브라우징"만 실험 해 보았지만 lynx
거기에 가거나 ssh 터널을 얻을 수 있다면 정말 좋을 수 있습니다.
heroku-vim을 인스턴스화 할 때 웹 서버가 실행되지 않으므로 직접 수행해야합니다. 내 예에서는 php를 실행하고 있습니다.
~ $ cat Procfile
web: vendor/bin/heroku-php-apache2
이 명령을 직접 시작할 수 있습니다!
~ $ vendor/bin/heroku-php-apache2 2>/dev/null &
[2] 845
이제 백그라운드에서 실행 중입니다!
Dynos는 임의의 포트에서 시작됩니다. 운 좋게도 $PORT
변수 이기 때문에 어느 것을 알고 있습니다 !
~ $ curl localhost:$PORT
Hello World!
지금 vim 작업을 수행하십시오. 그러나 파일을 저장하고 다시 말리면 변경 사항을 볼 수 없습니다. 캐시 된 위치를 이해하지 못하지만 캐시되었습니다. 서버를 종료하고 다시 시작해야합니다.
프로세스 ID 찾기
~ $ ps -f
UID PID PPID C STIME TTY TIME CMD
u6897 3 1 0 05:34 ? 00:00:00 bash
u6897 582 3 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
u6897 652 582 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
u6897 653 582 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
여기 582
에 부모 ID가 있습니다.
kill 582
1 초만 기다린 다음 서버를 다시 시작하십시오 (새 프로세스 ID를 얻게됩니다!). 동일한 명령을 통해 컬링하면 이제 업데이트 된 페이지가 제공됩니다.
Nano 또는 Vim을 사용하여 Heroku Dynos에서 파일을 편집하는 방법 에 대한 전체 기사를 작성 했지만 기본적으로 다음과 같습니다.
명령 줄을 사용할 수 있습니다.
curl https://s3.amazonaws.com/heroku-jvm-buildpack-vi/vim-7.3.tar.gz --output vim.tar.gz
mkdir vim && tar xzvf vim.tar.gz -C vim
export PATH=$PATH:/app/vim/bin
도움이 되었기를 바랍니다.
vim: error while loading shared libraries: libXt.so.6: cannot open shared object file: No such file or directory
.. 그러나 빌드 팩은 작동했습니다.
파일 내용 만 보려면 다음을 수행하십시오.
$ cd folder
$ cat filename.csv
이제 vim을 포함하는 여러 빌드 팩이 있습니다 : https://elements.heroku.com/search/buildpacks?q=vim
support buildpack support를 사용하여 문제의 Heroku 앱에이 중 하나를 추가 할 수 있습니다 .
dyno에서 파일을 변경하고 Heroku로 푸시하지 않고도 결과를 볼 수 있습니다.
heroku-buildpack-vim
빌드 팩 설치 :
$ heroku buildpacks:add \
https://github.com/carloluis/heroku-buildpack-vim
dyno에 Ssh :
$ heroku ps:exec
start.sh를 만들고 실행합니다.
#!/usr/bin/env bash
set -eu
export DATABASE_URL=...
bin/rails s -p 4000
포워드 포트 4000 (두 번째 콘솔) :
$ heroku ps:forward
localhost:4000
브라우저에서 엽니 다 .
start.sh
, 파일 변경, 다시 시작, 브라우저 페이지 새로 고침.나노 편집기를 선호합니다. 다음 빌드 팩을 사용할 수 있습니다 ... https://github.com/velizarn/heroku-buildpack-nano