/tmp を再マウントしてボリュームに実行権限を与えることで解決しました(読み取り専用でアクセスできました)。これで解決しました:
sudo mount /tmp -o remount,exec
ユーザー固有の TMPDIR
の構成 ディレクトリは問題を解決します。 TMPDIR 環境変数は POSIX 標準ですが、TMP (およびその他のいくつか) も一般的に受け入れられます。
他の回答では、グローバルなデフォルトの一時ディレクトリを構成する方法について説明しています。システムのセキュリティ ポリシーで /tmp
が許可されていない場合の 2 つの例を次に示します。
最初のソリューション例
mkdir $HOME/tmp
export TMPDIR=$HOME/tmp
docker-compose --version
便宜上、ディレクトリが作成された後、"export" ステートメントをシェルのプロファイル構成に配置できます (例:~/.bash_profile
または ~/.bashrc
).
2 番目の解決例
エイリアスを構成します (サンプル ファイル:~/.bashrc
または ~/.bash_alias
).
alias docker-compose="TMPDIR=${HOME}/tmp docker-compose"
これは、一般的なつまずき点と思われる問題です。いくつかの掘り下げは、それが特に docker-compose ではなく、PyInstaller に関連している可能性があることを示しています。
私は同じ問題を抱えていましたが、Kevin の両方の解決策の例が私にとってはうまくいきました。これが私がやったことです:
- 私はケビンが言ったことを実行し、
export TMPDIR=$HOME/tmp
を入力します~/.bashrc
で ファイル