2016-09-11 2 views
0

私のプロジェクトのベースイメージを作成しています。このベースイメージでは、いくつかの.tar.gzをダウンロードして抽出します。

パスに追加するためにこれらの解凍されたディレクトリを追加したいので、子画像では、完全なパスを指定する必要なしにダウンロードした実行ファイルを直接呼び出すことができます。

ベースイメージにexport PATH...を実行しようとしましたが、動作していないようです(少なくともi ttyが入っていれば、パスが更新されていないと思います。新しいbashセッション)。

これを行うには他の方法はありますか? .bashrcを編集する必要がありますか?

答えて

1

いくつかの環境変数を設定しようとしている場合は、-eオプションを使用して環境変数を設定できます。たとえば、あなたが

docker run -e PASSWORD=Cookies -it <image name> bash

を行うことができたとしているあなたは$PASSWORDは修正は全体の永続されることはありません現在echo $PASSWORD

+0

元の画像のDockerfileにパスを設定したいので、私はちょうど子供を走らせることができます。親からのパスと私はそれを毎回自分で指定する必要はありません –

0

あなたが$ PATHを設定されている方法で存在するかどうかを確認することができます実行するとセッション。 startup filesのBashマニュアルを参照して、環境を永続的に設定するために編集できるファイルを確認してください。

+0

それはそれが持続するようにそれを行う方法は何ですか? –

+1

Dockerfileで、以下に示すように、実行可能ファイルに指定されたコマンドから角括弧を省略してみてください:http://stackoverflow.com/questions/27158840/docker-executable-file-not-found-in-path – Hiren

+0

ありがとうございます、これは回避策として機能しますが、これはおそらく問題があります。たとえば、プログラムがクラッシュした場合、おそらくbashに終了し、ドッカーはプログラムがクラッシュしたことを知らないでしょう –

関連する問題