DockerコンテナのDebian /bin/shは.profileをまったく見ていないようです。

DockerコンテナのDebian /bin/shは.profileをまったく見ていないようです。

受けられないと思います。スプリント$HOME/.profile を確認してください。

pedz@Peace:s001 ~[S:hatred] % docker exec -it hatred-web-1 dash -i
# cat $HOME/.profile
PROOF=true; export PROOF
PATH=/hatred/bin:$PATH; export PATH
# env | sort
BUNDLE_APP_CONFIG=/usr/local/bundle
BUNDLE_SILENCE_ROOT_WARNING=1
GEM_HOME=/usr/local/bundle
HOME=/root
HOSTNAME=hatred
LANG=C.UTF-8
PATH=/usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/hatred
RUBY_DOWNLOAD_SHA256=ca10d017f8a1b6d247556622c841fc56b90c03b1803f87198da1e4fd3ec3bf2a
RUBY_MAJOR=3.1
RUBY_VERSION=3.1.2
TERM=xterm
# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 14:28 ?        00:00:01 puma 5.6.5 (tcp://0.0.0.0:3000) [hatred]
root       152     0  0 14:54 pts/0    00:00:00 dash -i
root       161   152  0 14:54 pts/0    00:00:00 ps -ef
# set
BUNDLE_APP_CONFIG='/usr/local/bundle'
BUNDLE_SILENCE_ROOT_WARNING='1'
GEM_HOME='/usr/local/bundle'
HOME='/root'
HOSTNAME='hatred'
IFS='   
'
LANG='C.UTF-8'
OPTIND='1'
PATH='/usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
PPID='0'
PS1='# '
PS2='> '
PS4='+ '
PWD='/hatred'
RUBY_DOWNLOAD_SHA256='ca10d017f8a1b6d247556622c841fc56b90c03b1803f87198da1e4fd3ec3bf2a'
RUBY_MAJOR='3.1'
RUBY_VERSION='3.1.2'
TERM='xterm'
_='-ef'
# lsb_release -c
Codename:   bullseye
# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
# 

PROOFはenvの出力にはなく、PATH/hatred/binの前に追加されません。

ベストアンサー1

私はこの質問をDebianユーザーメーリングリストに送りました。誰かが私にその記事を指摘した。する行動を正しく説明してください。私をパニックにさせるいくつかの点は次のとおりです。

テキストは、「最初に起動すると、シェルは引数0をチェックし、ダッシュ「-」で始まると、シェルは引数0をチェックします。返品ログインシェルと見なされます。 「(強調は私が追加しました)。

私はその理由を誤解したalso。実際、それがなぜそこにあるのかは不明です。

私にとっては、トピックがインタラクティブシェルからログインシェルに変更されたので、この文が新しい段落を開始することがより明確になります。省略する方が明確になり、alsoその時点でオプションに言及する方が明確になります。-l

コメントで指摘したように、これらすべてを読むには、オプションを指定するか、$HOME/.profile$ -l0をダッシュ​​で始める必要があります。

おすすめ記事