0
ドッカーでRails
イメージを構築しましたが、Dockerfileを使用してpassenger
を設定する方法がわかりません。今Dockerfileが自動的に旅客機をRailsで起動する
私Dockerfile
は今、私が最初にコンテナを実行し、このようpassenger
コマンドを実行する必要が
FROM username/my_app:latest
WORKDIR /my_app
# Expose port 3000 to the Docker host, so we can access it from the outside.
EXPOSE 3000
です。
docker run -it -p 4321:3000 \
--name my_app \
username/my_app
そして、最後に
docker exec -itd my_app /bin/bash -c -l "whenever -iw"
docker exec -it my_app /bin/bash -c -l "passenger start"
を入力して、私はhttp://localhost:4321
に私のアプリにアクセスすることができます私は自動的に私のアプリを起動してpassenger start
をオンにするdocker run ....
を使用することができます方法はありますか?
私はこれを試しましたが、うまくいかないようです。
FROM username/my_app:latest
WORKDIR /my_app
RUN whenever -iw
RUN passenger start
# Expose port 3000 to the Docker host, so we can access it from the outside.
EXPOSE 3000
これは、ドッキングウィンドウを投げる: 'デーモンからのエラー応答:OCIランタイムエラー:container_linux.go:247:コンテナ・プロセスを開始するには「のexec原因: "いつでも-iw &&乗客が起動する":$ PATHに実行ファイルが見つかりません "。 –
'いつでも 'パッケージがインストールされていないか、コマンドパスを見つけることができません。最初に手動でコンテナを起動し、両方のコマンドが正しいかどうかチェックしてください。 'いつでも-iw && passenger start 'のように実行したり、これらのバイナリパスを検出していない/ bin/shシェルを使用してもかまいません。両方のコマンドが一緒に実行されていない場合、別々に作業してシェルスクリプトファイルを作成し、これら2つのコマンドをスクリプトに追加し、このスクリプトをドッカーファイルに追加します。エントリポイントファイルにスクリプトパスを指定します。 –
ありがとう、私はそれを試してみます。 –