emacs
silex/emacs:29.2-alpine
現在、Distroboxコンテナ(Dockerコンテナ、Debianイメージも試していますが)で実行を自動化しようとしてsilex/emacs:29.2
エラーが発生しますemacs: Could not open file: /dev/tty
。これが私がすることです:
distrobox create --name test --image silex/emacs:29.2-alpine --home /home/dbhome
distrobox enter test -nw -- /nix/store/emacs/bin/emacs-29.2
上記のエラーが発生します。ただし、最初に実行してdistrobox enter test -nw
から、distroboxコンテナで実行が正常に開始されます/nix/store/emacs/bin/emacs-29.2
。emacs
問題は、emacsを自動的に起動したいので、コンテナの外部で実行される一連のコマンドでコンテナからemacsを起動する方法を見つける必要があることです。
emacs: Could not open file: /dev/tty
私がこれを行うと、どのような結果が出るのか知っている人がいますか?通常のコンテナの代わりにDistroboxを使用する理由は、最終的にDistroboxのootbサポートを使用してホストのX11ソケットに接続したいからです。
編集:strace
エラーが確認されました-1 ENXIO (No such device or address)
docker exec
EDIT2:実行するコマンドの一部を置き換えると問題がなくなりますdistrobox enter
。コマンドは;でdocker exec
終わります。CONTAINERNAME su USERNAME -c COMMAND
自分で使用すると問題が解決しますCONTAINERNAME COMMAND
。