タグ付けされた質問 「dockerfile」

Dockerfileは、Dockerイメージをビルドするための指示を含むファイルです

12
Dockerでデタッチして実行すると、Pythonアプリは何も印刷しません
私のdockerfileで開始されたPython(2.7)アプリがあります。 CMD ["python","main.py"] main.pyは、起動時にいくつかの文字列を出力し、その後ループに入ります。 print "App started" while True: time.sleep(1) コンテナーを-itフラグで開始する限り、すべてが期待どおりに機能します。 $ docker run --name=myapp -it myappimage > App started そして、後でログを介して同じ出力を見ることができます: $ docker logs myapp > App started -dフラグを使用して同じコンテナーを実行しようとすると、コンテナーは正常に起動するように見えますが、出力が表示されません。 $ docker run --name=myapp -d myappimage > b82db1120fee5f92c80000f30f6bdc84e068bafa32738ab7adb47e641b19b4d1 $ docker logs myapp $ (empty) しかし、コンテナーはまだ実行されているようです。 $ docker ps Container Status ... …

5
Dockerfileで変数を定義する方法は?
私のDockerfileで、後でDockerfileで使用できる変数を定義したいと思います。 ENV指示は承知していますが、これらの変数を環境変数にしたくありません。 Dockerfileスコープで変数を宣言する方法はありますか?


9
Dockerfileに名前を付ける方法
Dockerfileに名前を付ける方法がわかりません。GitHubの多くDockerfileはファイル拡張子なしで使用します。名前と拡張子を付けますか?もしそうなら?それとも私はそれらを呼び出すだけDockerfileですか?

1
apk add --virtualコマンドの.build-depsとは何ですか?
.build-deps次のコマンドには何がありますか?Alpineのドキュメントに説明がありません。これは事前定義されたファイルですか?これが多くのDockerfilesで参照されていることを確認してください。 RUN apk add --no-cache --virtual .build-deps \ gcc \ freetype-dev \ musl-dev RUN pip install --no-cache-dir <packages_that_require_gcc...> \ RUN apk del .build-deps
139 docker  apk  dockerfile  alpine 

8
1つのコマンドでDockerfileをビルドして実行する
Dockerfileからイメージをビルドし、単一のコマンドで実行することは可能ですか?Dockerfileをビルドしてイメージを実行する コマンドが1つあります。docker builddocker run -it これらの2つのコマンドを組み合わせて、1つのコマンドだけでビルドと実行を簡単にする方法はありますか
136 docker  dockerfile 

6
DockerFileの「VOLUME」命令について
以下は私の「Dockerfile」の内容です FROM node:boron # Create app directory RUN mkdir -p /usr/src/app # change working dir to /usr/src/app WORKDIR /usr/src/app VOLUME . /usr/src/app RUN npm install EXPOSE 8080 CMD ["node" , "server" ] このファイルでは、「VOLUME。/ usr / src / app」命令を実行して、ホストの現在の作業ディレクトリの内容をコンテナの/ usr / src / appフォルダにマウントする必要があります。 これが正しい方法かどうか教えてください。
136 docker  dockerfile 


8
Dockerfileの場合、外部引数を使用した条件
私はdockerfileを持っています FROM centos:7 ENV foo=42 それから私はそれを構築します docker build -t my_docker . そしてそれを実行します。 docker run -it -d my_docker コマンドラインから引数を渡し、Dockerfileで他の場合にそれを使用することは可能ですか?私のようなものを意味します FROM centos:7 if (my_arg==42) {ENV=TRUE} else: {ENV=FALSE} この引数を使用してビルドします。 docker build -t my_docker . --my_arg=42
129 docker  dockerfile 

11
Dockerはインストールされていますが、Docker Composeはインストールされていませんか?どうして?
次のコマンドを実行して、centos 7にdockerをインストールしました。 curl -sSL https://get.docker.com/ | sh systemctl enable docker && systemctl start docker docker run hello-world 注:helloworldは正しく実行され、問題はありません。 ただし、docker-compose(docker-compose.ymlが存在し、有効である)を実行しようとすると、Centosでのみエラーが発生します(docker-composeファイルではWindowsバージョンが正常に機能します)。 /usr/local/bin/docker-compose: line 1: {error:Not Found}: command not found

13
standard_init_linux.go:190:execユーザープロセスにより「そのようなファイルまたはディレクトリはありません」-Docker
Windows 10でDockerイメージを実行していると、次のエラーが発生します。 standard_init_linux.go:190: exec user process caused "no such file or directory" 私のdockerファイルは次のとおりです。 FROM openjdk:8 EXPOSE 8080 VOLUME /tmp ADD appagent.tar.gz /opt/app-agent ADD services.jar app.jar ADD run.sh /run.sh # Install compiler and perl stuff RUN apt-get update RUN apt-get install -y build-essential RUN apt-get install -y gcc-multilib RUN apt-get install …

2
ARGまたはENV、この場合どちらを使用しますか?
これはささいな質問かもしれませんが、ARGとENVのドキュメントを読んでも、私にははっきりしていません。 私はPHP-FPMコンテナーを構築しており、ユーザーのニーズに応じて一部の拡張機能を有効または無効にする機能を提供したいと考えています。 Dockerfileで条件を追加し、ビルドコマンドにフラグを渡すことでこれを行うことができればすばらしいと思いますが、AFAIKはサポートされていません。 私の場合、私の個人的なアプローチは、コンテナーの起動時に次のような小さなスクリプトを実行することです。 #!/bin/sh set -e RESTART="false" # This script will be placed in /config/init/ and run when container starts. if [ "$INSTALL_XDEBUG" == "true" ]; then printf "\nInstalling Xdebug ...\n" yum install -y php71-php-pecl-xdebug RESTART="true" fi ... if [ "$RESTART" == "true" ]; then printf "\nRestarting php-fpm ...\n" …


2
/ bin / sh:apt-get:見つかりません
dockerFileをaspellで動作するように変更しようとしています。ドックにラップしたいbashスクリプトがあります Step 4: Wrap the script in a Docker container. The sample SDK we downloaded earlier contains an example of an action wrapped in a Docker container. In particular, the sample SDK includes a Dockerfile that builds the C program in client/example.c and installs the binary as /blackbox/client/action . The …

2
複数のFROM-それが意味すること
githubでLinkuriousプロジェクトのDockerイメージを構築したいのですが、実行するにはNeo4jデータベースとNode.jsの両方が必要です。 私の最初のアプローチは、Neo4jを含む、私のイメージのベースイメージを宣言することでした。リファレンスドキュメントは、「ベースイメージ」を有用な方法で定義していません。 基本画像:親がない画像は基本画像です 私は、その画像に基本画像自体がない場合にのみ、基本画像がある可能性があることを読みました。 しかし、ベースイメージとは何ですか?FROMディレクティブでneo4j / neo4jを宣言した場合、イメージが実行されると、neoデータベースが自動的に実行され、ポート7474のコンテナー内で使用できるという意味ですか? Dockerリファレンスを読む(https://docs.docker.com/reference/builder/#fromを参照) FROMは、単一のDockerfile内に複数回出現して、複数のイメージを作成することができます。新しいFROMコマンドを実行する前に、コミットによって出力された最後のイメージIDをメモしてください。 複数の画像を作成したいですか?私が望むのは、他の画像のコンテンツを含む単一の画像を持つことです(neo4jやnode.jsなど)。 リファレンスマニュアルで依存関係を宣言するディレクティブが見つかりませんでした。RPMのように、私のイメージを実行するために、呼び出しコンテキストが最初に必要なイメージをインストールする必要がある依存関係はありませんか? よくわかりません...
112 docker  dockerfile 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.